Exemplo n.º 1
0
        public bool SameMorphemes(Morphs other)
        {
            if (Count != other.Count)
            {
                return(false);
            }

            IEnumerator <Morph> enum1 = GetEnumerator();
            IEnumerator <Morph> enum2 = other.GetEnumerator();

            while (enum1.MoveNext() && enum2.MoveNext())
            {
                if (enum1.Current.Allomorph.Morpheme != enum2.Current.Allomorph.Morpheme)
                {
                    return(false);
                }
            }
            return(true);
        }
Exemplo n.º 2
0
        public int CompareTo(WordSynthesis other)
        {
            IEnumerator <Morph> enum1 = Morphs.GetEnumerator();
            IEnumerator <Morph> enum2 = other.Morphs.GetEnumerator();

            while (enum1.MoveNext() && enum2.MoveNext())
            {
                int compare = enum1.Current.Allomorph.Morpheme.ID.CompareTo(enum2.Current.Allomorph.Morpheme.ID);
                if (compare != 0)
                {
                    return(compare);
                }

                compare = enum1.Current.Allomorph.CompareTo(enum2.Current.Allomorph);
                if (compare != 0)
                {
                    return(compare);
                }
            }
            return(0);
        }