IronRuby.Runtime.Calls.CallArguments.GetSimpleArgumentExpressions C# (CSharp) Method

GetSimpleArgumentExpressions() public method

public GetSimpleArgumentExpressions ( ) : AstExpressions
return AstExpressions
        public AstExpressions/*!*/ GetSimpleArgumentExpressions() {
            int count = SimpleArgumentCount;
            var result = new AstExpressions(count);
            for (int i = 0, j = GetSimpleArgumentIndex(0); i < count; j++, i++) {
                result.Add(_args[j].Expression);
            }
            return result;
        }

Usage Example

Ejemplo n.º 1
0
        /// <summary>
        /// "yields" to the proc.
        /// </summary>
        internal void BuildInvoke(MetaObjectBuilder/*!*/ metaBuilder, CallArguments/*!*/ args) {
            Assert.NotNull(metaBuilder, args);
            Debug.Assert(!args.Signature.HasBlock);

            var convertedTarget = AstUtils.Convert(args.TargetExpression, typeof(BlockParam));

            // test for target type:
            metaBuilder.AddTypeRestriction(args.Target.GetType(), args.TargetExpression);

            metaBuilder.Result = AstFactory.YieldExpression(
                args.GetSimpleArgumentExpressions(),
                args.GetSplattedArgumentExpression(),
                args.GetRhsArgumentExpression(),
                convertedTarget,                              // block param
                Ast.Property(convertedTarget, SelfProperty)   // self
            );
        }
All Usage Examples Of IronRuby.Runtime.Calls.CallArguments::GetSimpleArgumentExpressions