Example #1
0
        public bool IsVariable(E expr, out object variable)
        {
            V    var;
            bool res = VisitorForVariable <V, E> .IsVariable(expr, out var, this);

            variable = var;
            return(res);
        }
Example #2
0
        public static bool IsVariable(E expr, out V var, FullExpressionDecoder <V, E> decoder)
        {
            VisitorForVariable <V, E> visitor = decoder.VariableVisitor;
            bool res = Decode(expr, visitor, decoder);

            var = visitor.variable;
            return(res);
        }
Example #3
0
 public FullExpressionDecoder(IMetaDataProvider metaDataProvider, IExpressionContextProvider <E, V> contextProvider)
 {
     ContextProvider                = contextProvider;
     this.MetaDataProvider          = metaDataProvider;
     this.VariableVisitor           = new VisitorForVariable <V, E> ();
     this.UnderlyingVariableVisitor = new VisitorForUnderlyingVariable <V, E> ();
     this.UnaryExpressionVisitor    = new VisitorForIsUnaryExpression <V, E> ();
     this.BinaryExpressionVisitor   = new VisitorForIsBinaryExpression <V, E> ();
     this.VariablesInVisitor        = new VisitorForVariablesIn <V, E> (contextProvider);
     this.ValueOfVisitor            = new VisitorForValueOf <V, E> ();
     this.SizeOfVisitor             = new VisitorForSizeOf <V, E> ();
     this.IsInstVisitor             = new VisitorForIsInst <V, E> ();
     this.IsNullVisitor             = new VisitorForIsNull <V, E> ();
 }