pub enum TestExpr {
FileTest {
op: FileTestOp,
path: Box<Expr>,
},
StringTest {
op: StringTestOp,
value: Box<Expr>,
},
Comparison {
left: Box<Expr>,
op: TestCmpOp,
right: Box<Expr>,
},
And {
left: Box<TestExpr>,
right: Box<TestExpr>,
},
Or {
left: Box<TestExpr>,
right: Box<TestExpr>,
},
Not {
expr: Box<TestExpr>,
},
}Expand description
Test expression for [[ ... ]] conditionals.
Variants§
FileTest
File test: [[ -f path ]], [[ -d path ]], etc.
StringTest
String test: [[ -z str ]], [[ -n str ]]
Comparison
Comparison: [[ $X == "value" ]], [[ $NUM -gt 5 ]]
And
Logical AND: [[ -f a && -d b ]] (short-circuit evaluation)
Or
Logical OR: [[ -f a || -d b ]] (short-circuit evaluation)
Not
Logical NOT: [[ ! -f file ]]
Trait Implementations§
impl StructuralPartialEq for TestExpr
Auto Trait Implementations§
impl Freeze for TestExpr
impl RefUnwindSafe for TestExpr
impl Send for TestExpr
impl Sync for TestExpr
impl Unpin for TestExpr
impl UnsafeUnpin for TestExpr
impl UnwindSafe for TestExpr
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