protected ArrayMutableImpl(TArrayQuery cq, ArrayState <TValue> state) { ArgumentValidator.ValidateNotNull("Array query", cq); ArgumentValidator.ValidateNotNull("State", state); this._cq = cq; this._state = state; }
public virtual ArrayProxy <TValue> NewArrayProxy <TValue>(TValue[] array = null) { ArrayProxy <TValue> retVal; if (array != null && array.Length > 0) { var state = new ArrayState <TValue>(array); retVal = new ArrayProxyImpl <TValue>(new ArrayProxyQueryImpl <TValue>(state), state); } else { retVal = EmptyArrayProxy <TValue> .Proxy; } return(retVal); }
public virtual ArrayWithRoles <TValue, TValueQuery, TValueImmutable> NewArrayWithRoles <TValue, TValueQuery, TValueImmutable>(TValue[] array = null) where TValue : Mutable <TValueQuery, TValueImmutable> where TValueQuery : MutableQuery <TValueImmutable> { ArrayWithRoles <TValue, TValueQuery, TValueImmutable> retVal; if (array != null && array.Length > 0) { var state = new ArrayState <TValue>(array); var arrayIQ = new ArrayImmutableQueryImpl <TValue, TValueQuery, TValueImmutable>(state); retVal = new ArrayWithRolesImpl <TValue, TValueQuery, TValueImmutable>(new ArrayQueryOfMutablesImpl <TValue, TValueQuery, TValueImmutable>(arrayIQ, new ArrayQueryOfQueriesImpl <TValue, TValueQuery, TValueImmutable>(arrayIQ, state), state), state); } else { retVal = EmptyArrayWithRoles <TValue, TValueQuery, TValueImmutable> .Array; } return(retVal); }
protected ArrayQueryImpl(ArrayState <TValue> state) { ArgumentValidator.ValidateNotNull("State", state); this._state = state; }
internal ArrayProxyQueryImpl(ArrayState <TValue> state) : base(state) { }
internal ArrayProxyImpl(ArrayQuery <TValue> cq, ArrayState <TValue> state) : base(cq, state) { }
internal ArrayImmutableQueryImpl(ArrayState <TValue> state) { ArgumentValidator.ValidateNotNull("State", state); this._state = state; }
internal ArrayQueryOfQueriesImpl(ArrayQuery <TValueImmutable> iq, ArrayState <TValue> state) : base(iq) { ArgumentValidator.ValidateNotNull("State", state); this._state = state; }
internal ArrayQueryOfMutablesImpl(ArrayQuery <TValueImmutable> immutableQuery, ArrayQueryOfQueries <TValueQuery, TValueImmutable> cmq, ArrayState <TValue> state) : base(state) { ArgumentValidator.ValidateNotNull("Collection query of queries", cmq); ArgumentValidator.ValidateNotNull("Immutable query", immutableQuery); this._iq = immutableQuery; this._cmq = cmq; }
internal ArrayWithRolesImpl(ArrayQueryOfMutables <TValue, TValueQuery, TValueImmutable> mq, ArrayState <TValue> state) : base(mq, state) { }