Beispiel #1
0
		public virtual void PostWalk(Arg node) { }
Beispiel #2
0
 public CallExpr(Expr target, Arg[] args)
 {
     _target = target;
     _args = args;
 }
Beispiel #3
0
		// Arg
		public virtual bool Walk(Arg node) { return true; }
Beispiel #4
0
		public override void PostWalk(Arg node) { }
Beispiel #5
0
		// Arg
		public override bool Walk(Arg node) { return false; }
Beispiel #6
0
        private Arg ParseArg()
        {
            Arg ret;
            int start = GetStart();
            Expr value = ParseExpr();
            IdentifierExpr n = value as IdentifierExpr;
            if (n != null)
            {
                string name = n.Name;
                int end = GetEnd();
                if (MaybeEat(TokenType.Colon))
                {
                    value = ParseExpr();
                    ret = new Arg(name, value);
                    ret.SetLoc(_globalParent, start, GetEnd());
                    return ret;
                }
            }

            ret = new Arg(value);
            ret.SetLoc(_globalParent, value.IndexSpan);
            return ret;
        }
		// Arg
		public override bool Walk(Arg node)
		{
			node.Parent = _currentScope;
			
			return base.Walk(node);
		}