private MSA.Expression /*!*/ TransformToReturnValue(AstGenerator /*!*/ gen) { Assert.NotNull(gen); if (_maplets != null && _expressions == null && _array == null) { return(gen.TransformToHashConstructor(_maplets)); } return(TransformRead(gen, true /* Splat */)); }
private List<MSA.Expression>/*!*/ MakeSimpleArgumentExpressionList(AstGenerator/*!*/ gen) { var args = new List<MSA.Expression>(); if (_expressions != null) { gen.TranformExpressions(_expressions, args); } if (_maplets != null) { args.Add(gen.TransformToHashConstructor(_maplets)); } return args; }
private List <MSA.Expression> /*!*/ MakeSimpleArgumentExpressionList(AstGenerator /*!*/ gen) { var args = new List <MSA.Expression>(); if (_expressions != null) { gen.TranformExpressions(_expressions, args); } if (_maplets != null) { args.Add(gen.TransformToHashConstructor(_maplets)); } return(args); }
internal MSA.Expression /*!*/ TransformToYield(AstGenerator /*!*/ gen, MSA.Expression /*!*/ bfcVariable, MSA.Expression /*!*/ selfExpression) { var args = (_expressions != null) ? gen.TranformExpressions(_expressions) : new List <MSA.Expression>(); if (_maplets != null) { args.Add(gen.TransformToHashConstructor(_maplets)); } return(AstFactory.YieldExpression( args, (_array != null) ? _array.TransformRead(gen) : null, // splatted argument null, // rhs argument bfcVariable, selfExpression )); }
internal void TransformToCall(AstGenerator /*!*/ gen, CallBuilder callBuilder) { if (_expressions != null) { foreach (var arg in _expressions) { callBuilder.Add(arg.TransformRead(gen)); } } if (_maplets != null) { callBuilder.Add(gen.TransformToHashConstructor(_maplets)); } if (_array != null) { callBuilder.SplattedArgument = _array.TransformRead(gen); } }
internal void TransformToCall(AstGenerator /*!*/ gen, CallSiteBuilder /*!*/ siteBuilder) { if (_expressions != null) { foreach (var arg in _expressions) { siteBuilder.Add(arg.TransformRead(gen)); } } if (_maplets != null) { siteBuilder.Add(gen.TransformToHashConstructor(_maplets)); } if (_array != null) { siteBuilder.SplattedArgument = AstUtils.LightDynamic(SplatAction.Make(gen.Context), typeof(IList), _array.TransformRead(gen)); } }
internal void TransformToCall(AstGenerator/*!*/ gen, CallBuilder callBuilder) { if (_expressions != null) { foreach (var arg in _expressions) { callBuilder.Add(arg.TransformRead(gen)); } } if (_maplets != null) { callBuilder.Add(gen.TransformToHashConstructor(_maplets)); } if (_array != null) { callBuilder.SplattedArgument = Ast.Dynamic(SplatAction.Make(gen.Context), typeof(IList), _array.TransformRead(gen)); } }
private MSA.Expression/*!*/ TransformToReturnValue(AstGenerator/*!*/ gen) { Assert.NotNull(gen); if (_maplets != null && _expressions == null && _array == null) { return gen.TransformToHashConstructor(_maplets); } return TransformRead(gen, true /* Splat */); }
internal MSA.Expression/*!*/ TransformToYield(AstGenerator/*!*/ gen, MSA.Expression/*!*/ bfcVariable, MSA.Expression/*!*/ selfExpression) { var args = (_expressions != null) ? gen.TranformExpressions(_expressions) : new AstExpressions(); if (_maplets != null) { args.Add(gen.TransformToHashConstructor(_maplets)); } return AstFactory.YieldExpression( gen.Context, args, (_array != null) ? _array.TransformRead(gen) : null, // splatted argument null, // rhs argument bfcVariable, selfExpression ); }
internal void TransformToCall(AstGenerator/*!*/ gen, CallBuilder callBuilder) { if (_expressions != null) { foreach (var arg in _expressions) { callBuilder.Add(arg.TransformRead(gen)); } } if (_maplets != null) { callBuilder.Add(gen.TransformToHashConstructor(_maplets)); } if (_array != null) { callBuilder.SplattedArgument = _array.TransformRead(gen); } }