public static MethodInvocationExpression GenerateIExpressionInvocationFor(string expressionName, params Expression[] arguments) { var @this = new SelfLiteralExpression(); var invoke = new MemberReferenceExpression(@this, "InvokeExpression"); Expression args; if (arguments == null) { args = new NullLiteralExpression(); } else if (arguments.Length == 1) { args = arguments[0]; } else { args = new ArrayLiteralExpression { Items = ExpressionCollection.FromArray(arguments) } }; return(new MethodInvocationExpression(invoke, new StringLiteralExpression(expressionName), args, new ReferenceExpression("context") )); }
public NullLiteralExpression CreateNullLiteral() { NullLiteralExpression expression = new NullLiteralExpression(); expression.ExpressionType = Null.Default; return(expression); }
public override void Switch(IAstTransformer transformer, out Node resultingNode) { NullLiteralExpression thisNode = (NullLiteralExpression)this; Expression resultingTypedNode = thisNode; transformer.OnNullLiteralExpression(thisNode, ref resultingTypedNode); resultingNode = resultingTypedNode; }
public static Expression CreateCallableFromMacroBody(BooCodeBuilder builder, MacroStatement macro) { // create closure for macro's body or null Expression macroBody = new NullLiteralExpression(); if (macro.Block.Statements.Count > 0) { var callableExpr = new BlockExpression { Body = macro.Block }; callableExpr.Parameters.Add( new ParameterDeclaration("OutputStream", builder.CreateTypeReference(typeof(TextWriter)))); macroBody = callableExpr; } return(macroBody); }
public override void OnNullLiteralExpression(NullLiteralExpression node) { Write("null"); }
override public void OnNullLiteralExpression(NullLiteralExpression node) { WriteKeyword("null"); }
public override void OnNullLiteralExpression(NullLiteralExpression node) { this._currentStatement.Expression = new CodePrimitiveExpression(null); }
override public void OnNullLiteralExpression(NullLiteralExpression node) { OnExpression(node); }
public override void OnNullLiteralExpression(NullLiteralExpression node) { _expression = new CodePrimitiveExpression(null); }
public override void OnNullLiteralExpression(NullLiteralExpression node) { MakeResult(NullReturnType.Instance); }
public override void OnNullLiteralExpression(NullLiteralExpression node) { base.OnNullLiteralExpression(node); Check(node); }