System.Dynamic.DynamicMetaObjectBinder.Defer C# (CSharp) Method

Defer() public method

Defers the binding of the operation until later time when the runtime values of all dynamic operation arguments have been computed.
public Defer ( ) : DynamicMetaObject
return DynamicMetaObject
        public DynamicMetaObject Defer(params DynamicMetaObject[] args)
        {
            return MakeDeferred(BindingRestrictions.Combine(args), args);
        }

Same methods

DynamicMetaObjectBinder::Defer ( DynamicMetaObject target ) : DynamicMetaObject

Usage Example

Example #1
0
        internal static DynamicMetaObject Call(DynamicMetaObjectBinder call, DynamicMetaObject target, DynamicMetaObject[] args)
        {
            Assert.NotNull(call, args);
            Assert.NotNullItems(args);

            if (target.NeedsDeferral())
                return call.Defer(ArrayUtils.Insert(target, args));

            foreach (var mo in args)
            {
                if (mo.NeedsDeferral())
                {
                    RestrictTypes(args);

                    return call.Defer(
                        ArrayUtils.Insert(target, args)
                    );
                }
            }

            DynamicMetaObject self = target.Restrict(target.GetLimitType());

            ValidationInfo valInfo = BindingHelpers.GetValidationInfo(target);
            TotemType tt = DynamicHelpers.GetTotemType(target.Value);
            TotemContext toContext = GetTotemContext(call);

            throw new NotImplementedException();
        }
All Usage Examples Of System.Dynamic.DynamicMetaObjectBinder::Defer