public override void Init(Irony.Parsing.ParsingContext context, Irony.Parsing.ParseTreeNode treeNode)
        {
            base.Init(context, treeNode);
            Iterator = (VariableAstNode)AddChild("iterator", treeNode.ChildNodes[0]);

            Set = (CollectionAstNode)AddChild("set", treeNode.ChildNodes[1]);
            StatementList = (StatementListNode)AddChild("statementList", treeNode.ChildNodes[2]);
        }
        public override void Init(Irony.Parsing.ParsingContext context, Irony.Parsing.ParseTreeNode treeNode)
        {
            string type = treeNode.ChildNodes[0].FindTokenAndGetText();
            switch (type.ToLower())
            {
                case "string": _type = typeof(string); break;
                case "int": _type = typeof(int); break;
                case "decimal": _type = typeof(decimal); break;
                default:
                    throw new Exception("Unhanled type: " + type);
            }

            _variable = AddChild("variable", treeNode.ChildNodes[1]) as VariableAstNode;
            _initialization = AddChild("initialization", treeNode.ChildNodes[2]) as ExpressionAstNode;

        }
 public override void Init(Irony.Parsing.ParsingContext context, Irony.Parsing.ParseTreeNode treeNode)
 {
     base.Init(context, treeNode);
     _variable = AddChild("variable", treeNode.ChildNodes[0]) as VariableAstNode;
     _expression = AddChild("expression", treeNode.ChildNodes[1]) as ExpressionAstNode;
 }