コード例 #1
0
ファイル: TextIndexList.cs プロジェクト: improdom/utilities
        /// <summary>
        /// Merges TextIndexes and sorts the textindexes
        /// </summary>
        public void Simplify()
        {
            BitArray      ba  = this.ToBitArray();
            TextIndexList til = TextIndexList.FromBitArray(ba);

            this.Clear();
            this.AddRange(til);
        }
コード例 #2
0
ファイル: TextIndexList.cs プロジェクト: improdom/utilities
        public TextIndexList SubtractedFrom(TextIndexList tl)
        {
            int      arraySize = Math.Max(this.Bounds.End, tl.Bounds.End);
            BitArray bArray    = this.ToBitArray(arraySize);
            BitArray btlArray  = tl.ToBitArray(arraySize);

            BitArray bXor = bArray.Xor(btlArray);

            return(TextIndexList.FromBitArray(btlArray.And(bXor)));
        }
コード例 #3
0
ファイル: TextIndexList.cs プロジェクト: improdom/utilities
        public TextIndexList SymetricDifference(TextIndexList tl)
        {
            int      arraySize = Math.Max(this.Bounds.End, tl.Bounds.End);
            BitArray bArray    = this.ToBitArray(arraySize);
            BitArray btlArray  = tl.ToBitArray(arraySize);

            BitArray bResult = bArray.Xor(btlArray);

            return(TextIndexList.FromBitArray(bResult));
        }
コード例 #4
0
ファイル: TextIndexList.cs プロジェクト: improdom/utilities
        public TextIndexList Intersection(TextIndexList tl)
        {
            int      arraySize = Math.Max(this.Bounds.End, tl.Bounds.End);
            BitArray bArray    = this.ToBitArray(arraySize);
            BitArray btlArray  = tl.ToBitArray(arraySize);

            BitArray bResult = bArray.And(btlArray);

            return(TextIndexList.FromBitArray(bResult));
        }