pub fn to_value<'a>(&'a self) -> Option<bool> {
        match self {
            Expression::Empty(val) => Some(*val),
            _ => None,
        }
    }
// Resolve the expression to bool value if possible (ie. if an expression has a known boolean value)
Resolve the expression to bool value if possible
Resolve the expression to bool value if possible
pub fn to_value<'a>(&'a self) -> Option<bool> {
        match self {
            Expression::Empty(val) => Some(*val),
            _ => None,
        }
    }
pub fn to_value < ' a > ( & ' a self ) -> Option < bool > { match self { Expression :: Empty ( val ) => Some ( * val ) , _ => None , } }
Resolve the expression to bool value if possible (ie.
Resolve the expression to bool value if possible ( ie .
&'a self
&'a self