def wf.flo.step
emerging-eztoml@0.9.0.0 · main.bend:6174
import emerging-eztoml@0.9.0.0/main.bend as EmergingEztoml
import Base
6174
6175def wf.flo.step(st: Fl, +cc: Char) -> Fl:
6176 match st:
6177 case FlStart{}:
6178 Bool.pick(Fl, Char.is_eq(cc, '0'), FlZero{}, Bool.pick(Fl, Char.is_digit(cc), FlInt{}, FlNo{}))
6179 case FlZero{}:
6180 wf.flo.tail(cc)
6181 case FlInt{}:
6182 Bool.pick(Fl, Char.is_digit(cc), FlInt{}, wf.flo.tail(cc))
6183 case FlDot{}:
6184 Bool.pick(Fl, Char.is_digit(cc), FlFrac{}, FlNo{})
6185 case FlFrac{}:
6186 Bool.pick(Fl, Char.is_digit(cc), FlFrac{}, Bool.pick(Fl, wf.flo.is_e(cc), FlE{}, FlNo{}))
6187 case FlE{}:
6188 Bool.pick(Fl, Bool.or(Char.is_eq(cc, '+'), Char.is_eq(cc, '-')), FlESign{},
6189 Bool.pick(Fl, Char.is_digit(cc), FlExp{}, FlNo{}))
6190 case FlESign{}:
6191 Bool.pick(Fl, Char.is_digit(cc), FlExp{}, FlNo{})
6192 case FlExp{}:
6193 Bool.pick(Fl, Char.is_digit(cc), FlExp{}, FlNo{})
6194 case FlNo{}:
6195 FlNo{}