def AaChB.step

bend-osdev-apparmor@0.1.0.0 · rule_change_profile.bend:108

import bend-osdev-apparmor@0.1.0.0/rule_change_profile.bend as RuleChangeProfile
import Base
import bend-osdev-apparmor@0.1.0.0/text.bend as X
import bend-osdev-apparmor@0.1.0.0/token.bend as T
import bend-osdev-apparmor@0.1.0.0/error.bend as E
import bend-osdev-apparmor@0.1.0.0/rule.bend as R

108def AaChB.step(t: T.AaTerm, +b: AaChB, +src: E.AaSrc) -> Result<&2, &2, E.AaError, AaChB>:
109  match t:
110    case T.AaTmWord{+w}:
111      Bool.pick(Result<&2, &2, E.AaError, AaChB>, X.AaText.is(w, "safe"), AaChB.mode(b, 1n, src), Bool.pick(Result<&2, &2, E.AaError, AaChB>, X.AaText.is(w, "unsafe"), AaChB.mode(b, 2n, src), AaChB.term.glob(R.AaRule.glob_text(w, src), b, src)))
112    case T.AaTmQuoted{q}:
113      AaChB.term.glob(R.AaRule.glob_text(q, src), b, src)
114    case T.AaTmArrow{}:
115      AaChB.arrow(b, src)
116    case _:
117      Fail{E.AaSrc.syntax(src)}

Uses (12)

Used by (1)