def AaVars.name_ok.go
import bend-osdev-apparmor@0.1.0.0/parse.bend as Parseimport Base
import bend-osdev-apparmor@0.1.0.0/token.bend as T
492# a variable name: a letter, then letters, digits and '_'
493def AaVars.name_ok.go(xs: List<&2, U32>) -> Bool:
494 match xs:
495 case Nil{}:
496 True{}
497 case Con{+h, t}:
498 Bool.and(Bool.or(T.AaTerm.letter(h), Bool.or(Bool.and(U32.is_ge(h, 48), U32.is_le(h, 57)), U32.is_eq(h, 95))), AaVars.name_ok.go(t))