def gr_any

bend-osdev-apparmor@0.1.0.0 · PROOF.bend:160

import bend-osdev-apparmor@0.1.0.0/PROOF.bend as PROOF
import Base
import bend-osdev-apparmor@0.1.0.0/text.bend as X
import bend-osdev-apparmor@0.1.0.0/glob.bend as G

160def gr_any(+r: List<&2, G.AaGTok>, +h: U32, +ds: List<&2, List<&2, List<&2, U32>>>) -> {G.AaGSeq.fits_any(Con{G.AaGAny{}, r}, G.AaGCuts.grow(h, ds)) == Bool.and(U32.is_ne(h, 47), fe_any(r, ds)) : Bool}:
161  match ds:
162    case Nil{}:
163      Equal.sym(Bool, Bool.and(U32.is_ne(h, 47), False{}), False{}, b.and_false_r(U32.is_ne(h, 47)))
164    case Con{d, t}:
165      match d:
166        case Nil{}:
167          gr_any(r, h, t)
168        case Con{p, ps}:
169          %Equal.sym(Bool, G.AaGSeq.fits_any(Con{G.AaGAny{}, r}, G.AaGCuts.grow(h, t)), Bool.and(U32.is_ne(h, 47), fe_any(r, t)), gr_any(r, h, t)) : {Bool.or(Bool.and(Bool.and(U32.is_ne(h, 47), X.AaText.is_nil(p)), G.AaGSeq.fits(r, ps)), _) == Bool.and(U32.is_ne(h, 47), Bool.or(Bool.and(X.AaText.is_nil(p), G.AaGSeq.fits(r, ps)), fe_any(r, t))) : Bool}
170          b.factor(U32.is_ne(h, 47), X.AaText.is_nil(p), G.AaGSeq.fits(r, ps), fe_any(r, t))

Uses (15)

Used by (1)