Exemplo n.º 1
0
        public static CharacterRegion CombineCharacters(CharacterRegion ca, CharacterRegion cb)
        {
            int start = Math.Min(ca.Start, cb.Start);
            int end   = Math.Max(ca.End, cb.End);

            return(new CharacterRegion(start, end));
        }
Exemplo n.º 2
0
        public static CharacterRegion CombineCharacters(CharacterRegion ca, CharacterRegion cb)
        {
            int start = Math.Min(ca.Start, cb.Start);
            int end = Math.Max(ca.End, cb.End);

            return new CharacterRegion(start, end);
        }
Exemplo n.º 3
0
        public static List<CharacterRegion> InsertRegion(List<CharacterRegion> charRegions, CharacterRegion charReg)
        {
            for (int i = 0; i < charRegions.Count; i++)
            {
                if (!CompareCharacters(charRegions[i], charReg))
                {
                    charRegions[i] = CombineCharacters(charRegions[i], charReg);
                    return ResolveConflicts(charRegions);
                }
            }

            charRegions.Add(charReg);
            return charRegions;
        }
Exemplo n.º 4
0
        public static List <CharacterRegion> InsertRegion(List <CharacterRegion> charRegions, CharacterRegion charReg)
        {
            for (int i = 0; i < charRegions.Count; i++)
            {
                if (!CompareCharacters(charRegions[i], charReg))
                {
                    charRegions[i] = CombineCharacters(charRegions[i], charReg);
                    return(ResolveConflicts(charRegions));
                }
            }

            charRegions.Add(charReg);
            return(charRegions);
        }
Exemplo n.º 5
0
 public static bool CompareCharacters(CharacterRegion ca, CharacterRegion cb)
 {
     return((ca.Start < cb.Start && ca.End < cb.Start) || (ca.Start > cb.End && ca.End > cb.End));
 }
Exemplo n.º 6
0
 public static bool CompareCharacters(CharacterRegion ca, CharacterRegion cb)
 {
     return (ca.Start < cb.Start && ca.End < cb.Start) || (ca.Start > cb.End && ca.End > cb.End);
 }