def type_reason
cli@0.2.0.0 · cli.bend:2023
import cli@0.2.0.0/cli.bend as Cli
import Base
2023def type_reason(kind: ValueType, value: String) -> Maybe<&2, String>:
2024 match kind:
2025 case TNat{}:
2026 Bool.pick(Maybe<&2, String>, valid_nat(value), None{},
2027 Some{"expected a whole number from 0 to 281474976710655"})
2028 case TU32{}:
2029 Bool.pick(Maybe<&2, String>, valid_u32(value), None{},
2030 Some{"expected a whole number from 0 to 4294967295"})
2031 case TF32{}:
2032 Bool.pick(Maybe<&2, String>, valid_f32(value), None{},
2033 Some{"expected a decimal number"})
2034 case TBool{}:
2035 Bool.pick(Maybe<&2, String>, valid_bool(value), None{},
2036 Some{"expected true or false"})
2037 case TFile{}: None{}
2038 case TDir{}: None{}