pub enum VisibilityExpr {
And(Vec<VisibilityExpr>),
Or(Vec<VisibilityExpr>),
Not(Box<VisibilityExpr>),
Layer(u32),
}Expand description
Boolean visibility expression from an OCMD /VE array.
The parser always emits the canonical form (operands as
Vec<VisibilityExpr>); leaves are layer references.
Variants§
And(Vec<VisibilityExpr>)
Conjunction — visible iff every operand is visible.
Or(Vec<VisibilityExpr>)
Disjunction — visible iff any operand is visible.
Not(Box<VisibilityExpr>)
Negation — exactly one operand.
Layer(u32)
Leaf: refer to a single OCG by object number.
Trait Implementations§
Source§impl Clone for VisibilityExpr
impl Clone for VisibilityExpr
Source§fn clone(&self) -> VisibilityExpr
fn clone(&self) -> VisibilityExpr
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for VisibilityExpr
impl RefUnwindSafe for VisibilityExpr
impl Send for VisibilityExpr
impl Sync for VisibilityExpr
impl Unpin for VisibilityExpr
impl UnsafeUnpin for VisibilityExpr
impl UnwindSafe for VisibilityExpr
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more