JS
Size: a a a
JS
A
A
AP
rules =
[ ...
, ("eyr", intInRange 2020 2030)
, ("hgt", validHeight)
, ...
]
intInRange :: Int -> Int -> Validator
intInRange f t s = case readMaybe s of
Just x -> f <= x && x <= t
_ -> False
validHeight :: Validator
validHeight s = validCm || validIn
where
validCm = suffix == "cm" && intInRange 150 193 prefix
validIn = suffix == "in" && intInRange 59 76 prefix
(prefix, suffix) = splitAt (length s - 2) s
validEyeColor :: Validatorфреймворк валидации :)
validEyeColor =
(`elem` ["amb", "blu", "brn", "gry", "grn", "hzl", "oth"])
AP
A
AP
AP
TZ
AP
TZ
A
AP
TZ
AP
TZ
A
TZ
AP
A