System.Dynamic.SetIndexBinder.Bind C# (CSharp) Method

Bind() public final method

Performs the binding of the dynamic set index operation.
public final Bind ( DynamicMetaObject target, DynamicMetaObject args ) : DynamicMetaObject
target DynamicMetaObject The target of the dynamic set index operation.
args DynamicMetaObject An array of arguments of the dynamic set index operation.
return DynamicMetaObject
        public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
        {
            ContractUtils.RequiresNotNull(target, nameof(target));
            ContractUtils.RequiresNotNull(args, nameof(args));
            ContractUtils.Requires(args.Length >= 2, nameof(args));

            DynamicMetaObject value = args[args.Length - 1];
            DynamicMetaObject[] indexes = args.RemoveLast();

            ContractUtils.RequiresNotNull(value, nameof(args));
            ContractUtils.RequiresNotNullItems(indexes, nameof(args));

            return target.BindSetIndex(this, indexes, value);
        }