示例#1
0
 public InvocationExpression(Node subj, ExpressionList args, bool variableLength)
     : base(true, 2)
 {
     Subject        = subj;
     Arguments      = args;
     VariableLength = variableLength;
 }
示例#2
0
        public override Node Clone()
        {
            var ret = new ExpressionList();

            for (int i = 0; i < NumChildren(); i++)
            {
                ret.AddChild(GetChild(i)?.Clone());
            }
            return(ret);
        }
示例#3
0
        public override Expression CloneExpr()
        {
            ExpressionList el = null;

            if (Arguments != null)
            {
                el = new ExpressionList();
                for (int i = 0; i < Arguments.NumChildren(); i++)
                {
                    el.AddChild(Arguments.GetChild <Expression>(i).CloneExpr());
                }
            }

            return(new InvocationExpression(
                       Subject.Clone(),
                       el,
                       VariableLength));
        }
示例#4
0
 public RangeClause(ExpressionList values, Expression iterator)
     : base(true, 2)
 {
     Iterator = iterator;
     Values   = values;
 }
示例#5
0
 public ReturnAssignment(ExpressionList el, InvocationExpression ie)
     : base(2)
 {
     Identifiers = el;
     Invocation  = ie;
 }