public bool Process(IExpressionWalker walker)
 {
     //result = ExpressionParser.ExternalLookup(VariableName);
     result = walker.ParserVariables.Get(VariableName);
     walker.ValueStack.Push(result);
     return(true);
 }
Ejemplo n.º 2
0
 private void addVariable(string name, VauleExpression value)
 {
     try
     {
         variables.Add(name, value);
     }
     catch (ArgumentException)
     {
         variables[name] = value;
     }
 }
Ejemplo n.º 3
0
        protected override bool process(IExpressionWalker walker, VauleExpression left, VauleExpression right)
        {
            var leftNumber = left as VauleExpression.NumericVauleExpression;

            if (leftNumber == null)
            {
                walker.Fail("Internal parsing error: Expected value on the left to be a number.");
                return(false);
            }

            var rightNumber = right as VauleExpression.NumericVauleExpression;

            if (rightNumber == null)
            {
                walker.Fail("Internal parsing error: Expected value on the right to be a number.");
                return(false);
            }

            result = new VauleExpression.FloatVauleExpression(leftNumber.Value + rightNumber.Value);
            walker.ValueStack.Push(result);
            return(true);
        }