protected virtual Expression VisitSubExpression(SubExpressionExpression subex) { Expression expression = Visit(subex.Expression); if (expression != subex.Expression) { return(HandlebarsExpression.SubExpression(expression)); } return(subex); }
protected override Expression VisitSubExpression(SubExpressionExpression subex) { var helperCall = subex.Expression as MethodCallExpression; if (helperCall == null) { throw new HandlebarsCompilerException("Sub-expression does not contain a converted MethodCall expression"); } HandlebarsHelper helper = GetHelperDelegateFromMethodCallExpression(helperCall); return Expression.Call( new Func<HandlebarsHelper, object, object[], string>(CaptureTextWriterOutputFromHelper).Method, Expression.Constant(helper), helperCall.Arguments[1], helperCall.Arguments[2]); }
protected override Expression VisitSubExpression(SubExpressionExpression subex) { var helperCall = subex.Expression as MethodCallExpression; if (helperCall == null) { throw new HandlebarsCompilerException("Sub-expression does not contain a converted MethodCall expression"); } HandlebarsHelper helper = GetHelperDelegateFromMethodCallExpression(helperCall); return(Expression.Call( new Func <HandlebarsHelper, object, object[], string>(CaptureTextWriterOutputFromHelper).Method, Expression.Constant(helper), helperCall.Arguments[1], helperCall.Arguments[2])); }
protected override Expression VisitSubExpression(SubExpressionExpression subex) { switch (subex.Expression) { case MethodCallExpression callExpression: return(HandleMethodCallExpression(callExpression)); default: var expression = FunctionBuilder.Reduce(subex.Expression, CompilationContext); if (expression is MethodCallExpression lateBoundCall) { return(HandleMethodCallExpression(lateBoundCall)); } throw new HandlebarsCompilerException("Sub-expression does not contain a converted MethodCall expression"); } }
protected override System.Linq.Expressions.Expression VisitSubExpression(SubExpressionExpression subex) { if (!(subex.Expression is MethodCallExpression helperCall)) { throw new HandlebarsCompilerException("Sub-expression does not contain a converted MethodCall expression"); } HandlebarsHelper helper = GetHelperDelegateFromMethodCallExpression(helperCall); return(System.Linq.Expressions.Expression.Call( #if netstandard new Func <HandlebarsHelper, object, object[], string>(CaptureTextWriterOutputFromHelper).GetMethodInfo(), #else new Func <HandlebarsHelper, object, object[], string>(CaptureTextWriterOutputFromHelper).Method, #endif System.Linq.Expressions.Expression.Constant(helper), Visit(helperCall.Arguments[1]), Visit(helperCall.Arguments[2]))); }
protected override Expression VisitSubExpression(SubExpressionExpression subex) { var helperCall = subex.Expression as MethodCallExpression; if (helperCall == null) { throw new HandlebarsCompilerException("Sub-expression does not contain a converted MethodCall expression"); } var helper = GetHelperDelegateFromMethodCallExpression(helperCall); return(Expression.Call( #if netstandard new Func <HandlebarsHelperV2, IHandlebarsEngine, object, object[], string>(CaptureTextWriterOutputFromHelper).GetMethodInfo(), #else new Func <HandlebarsHelperV2, IHandlebarsEngine, object, object[], string>(CaptureTextWriterOutputFromHelper).Method, #endif Expression.Constant(helper), Visit(helperCall.Arguments[0]), Visit(helperCall.Arguments[2]), Visit(helperCall.Arguments[3]))); }
protected override Expression VisitSubExpression(SubExpressionExpression subex) { return HandlebarsExpression.SubExpression( Visit(subex.Expression)); }
protected virtual Expression VisitSubExpression(SubExpressionExpression subex) { return subex; }
protected override Expression VisitSubExpression(SubExpressionExpression subex) { return(HandlebarsExpression.SubExpression( Visit(subex.Expression))); }
protected virtual Expression VisitSubExpression(SubExpressionExpression subex) { return(subex); }
protected virtual System.Linq.Expressions.Expression VisitSubExpression(SubExpressionExpression subex) { return(subex); }