示例#1
0
        /// <summary>
        /// イミュータブルな辞書を生成する。
        ///
        /// <para>
        /// この操作の後にこのオブジェクトを使用しないなら、<c>MoveToImmutable</c> の方が効率的。
        /// </para>
        /// </summary>
        public Dic <TKey, TValue> ToImmutable()
        {
            if (_inner == null)
            {
                throw new InvalidOperationException();
            }

            return(Dic <TKey, TValue> .FromDictionary(new Dictionary <TKey, TValue>(_inner, _inner.Comparer)));
        }
示例#2
0
        /// <summary>
        /// イミュータブルな辞書を生成する。
        ///
        /// <para>
        /// このオブジェクトは使用できなくなる。
        /// </para>
        /// </summary>
        public Dic <TKey, TValue> MoveToImmutable()
        {
            if (_inner == null)
            {
                throw new InvalidOperationException();
            }

            var dic = Dic <TKey, TValue> .FromDictionary(_inner);

            _inner = null;
            return(dic);
        }