예제 #1
0
        protected virtual ICode VisitJsDelegateInvoke(ExprJsDelegateInvoke e)
        {
            this.ThrowOnNoOverride();
            var methodToInvoke = (Expr)this.Visit(e.MethodToInvoke);
            var args           = this.HandleList(e.Args, arg => (Expr)this.Visit(arg));

            if (methodToInvoke != e.MethodToInvoke || args != null)
            {
                return(new ExprJsDelegateInvoke(e.Ctx, methodToInvoke, args ?? e.Args));
            }
            else
            {
                return(e);
            }
        }
예제 #2
0
 protected override ICode VisitJsDelegateInvoke(ExprJsDelegateInvoke e)
 {
     this.Visit(e.MethodToInvoke);
     this.js.Append("(");
     if (e.Args.Any())
     {
         foreach (var arg in e.Args)
         {
             this.Visit(arg);
             this.js.Append(", ");
         }
         this.js.Length -= 2;
     }
     this.js.Append(")");
     return(e);
 }
예제 #3
0
 protected virtual ICode VisitJsDelegateInvoke(ExprJsDelegateInvoke e) {
     this.ThrowOnNoOverride();
     var methodToInvoke = (Expr)this.Visit(e.MethodToInvoke);
     var args = this.HandleList(e.Args, arg => (Expr)this.Visit(arg));
     if (methodToInvoke != e.MethodToInvoke || args != null) {
         return new ExprJsDelegateInvoke(e.Ctx, methodToInvoke, args ?? e.Args);
     } else {
         return e;
     }
 }
예제 #4
0
 protected override ICode VisitJsDelegateInvoke(ExprJsDelegateInvoke e) {
     this.Visit(e.MethodToInvoke);
     this.js.Append("(");
     if (e.Args.Any()) {
         foreach (var arg in e.Args) {
             this.Visit(arg);
             this.js.Append(", ");
         }
         this.js.Length -= 2;
     }
     this.js.Append(")");
     return e;
 }