Migrated tests to new bitv-based implementation

This commit is contained in:
Jef Roosens 2022-04-12 09:00:18 +02:00
parent ab4f64b6b6
commit 04e54b8b10
Signed by untrusted user: Jef Roosens
GPG key ID: B75D4F293C7052DB
3 changed files with 78 additions and 51 deletions

View file

@ -147,6 +147,18 @@ fn parse_range(s string, min int, max int, mut bitv []bool) ? {
}
}
fn bitv_to_ints(bitv []bool, min int) []int {
mut out := []int{}
for i in 0..bitv.len {
if bitv[i] {
out << min + i
}
}
return out
}
fn parse_part(s string, min int, max int) ?[]int {
mut bitv := []bool{init: false, len: max - min + 1}
@ -154,15 +166,7 @@ fn parse_part(s string, min int, max int) ?[]int {
parse_range(range, min, max, mut bitv) ?
}
mut out := []int{}
for i in 0..max + 1 {
if bitv[i] {
out << min + i
}
}
return out
return bitv_to_ints(bitv, min)
}
// min hour day month day-of-week