public virtual DictionaryWithRoles <TKey, TValue, TValueQuery, TValueImmutable> NewDictionary <TKey, TValue, TValueQuery, TValueImmutable>(IDictionary <TKey, TValue> dictionary = null) where TValue : Mutable <TValueQuery, TValueImmutable> where TValueQuery : API.MutableQuery <TValueImmutable> { dictionary = dictionary ?? new Dictionary <TKey, TValue>(); var state = new DictionaryWithRolesState <TKey, TValue, TValueQuery, TValueImmutable>(dictionary); var dicIQ = new DictionaryImmutableQueryImpl <TKey, TValue, TValueQuery, TValueImmutable>(state); return(new DictionaryWithRolesImpl <TKey, TValue, TValueQuery, TValueImmutable>(new DictionaryQueryOfMutablesImpl <TKey, TValue, TValueQuery, TValueImmutable>(dicIQ, new DictionaryQueryOfQueriesImpl <TKey, TValue, TValueQuery, TValueImmutable>(dicIQ, state), state), state)); }
internal DictionaryImmutableQueryDebugView(DictionaryImmutableQueryImpl <TKey, TValue, TValueQuery, TValueImmutable> dic) { this._dic = dic; }