コード例 #1
0
        public override Node ExitArgumentList(Production node)
        {
            var childValues = GetChildValues(node);

            node.AddValues((ArrayList)childValues);
            return(node);
        }
コード例 #2
0
        public override Node ExitFormula(Production node)
        {
            ArrayList childValues = GetChildValues(node);

            Debug.Assert(childValues.Count == 1 | childValues.Count == 2, "Should have 1 or 2 values");
            if (childValues.Count == 2)
            {
                // Remove leading EQ expression
                childValues.RemoveAt(0);
            }
            node.AddValues(childValues);
            return(node);
        }
コード例 #3
0
 private void AddBinaryOperation(Production node)
 {
     if (node.GetChildCount() > 1)
     {
         var element = new BinaryOperatorElement();
         element.AcceptValues(GetChildValues(node));
         node.AddValue(element);
     }
     else
     {
         node.AddValues(GetChildValues(node));
     }
 }
コード例 #4
0
 public override Node ExitExpressionGroup(Production node)
 {
     node.AddValues(GetChildValues(node));
     return(node);
 }
コード例 #5
0
 public override Node ExitAdditiveOp(Production node)
 {
     node.AddValues(GetChildValues(node));
     return(node);
 }
コード例 #6
0
 public override Node ExitPrimaryExpression(Production node)
 {
     node.AddValues(GetChildValues(node));
     return(node);
 }
コード例 #7
0
 public override Node ExitScalarFormula(Production node)
 {
     node.AddValues(GetChildValues(node));
     return(node);
 }
コード例 #8
0
 public override Node ExitGridReference(Production node)
 {
     node.AddValues(GetChildValues(node));
     return(node);
 }
コード例 #9
0
 public override Node ExitArgumentList(Production node)
 {
     node.AddValues(GetChildValues(node));
     return(node);
 }