def AaParse.head.profile.rest

bend-osdev-apparmor@0.1.0.0 · parse.bend:1373

import bend-osdev-apparmor@0.1.0.0/parse.bend as Parse
import Base
import bend-osdev-apparmor@0.1.0.0/glob.bend as G
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/profile.bend as PR
import bend-osdev-apparmor@0.1.0.0/rule_file.bend as F

1373# after `profile NAME`: an attachment, then flags
1374def AaParse.head.profile.rest(ts: List<&2, T.AaTerm>, +name: List<&2, U32>, +src: E.AaSrc) -> Result<&2, &2, E.AaError, AaHead>:
1375  match ts:
1376    case Nil{}:
1377      do Result<&2, &2, E.AaError, AaHead>:
1378        a : Maybe<&2, G.AaGlob> <- AaParse.self_attach(name, src)
1379        return AaHead{0n, name, a, PR.AaFlags.default(), AaBQ.none()}
1380    case Con{+t, +rest}:
1381      Bool.pick(Result<&2, &2, E.AaError, AaHead>, F.AaFile.is_path(t), AaParse.head.attached(t, rest, name, src), AaParse.head.flags_only(Con{t, rest}, name, src))

Uses (18)

Used by (1)