Пример #1
0
 /// <summary>
 /// Returns sub Leaf with specified sign.
 /// Create sub Leaf if leaf with such sign doesn't exist.
 /// </summary>
 /// <param name="sign"></param>
 /// <returns></returns>
 protected Leaf GetOrAppendSubLeaf(char sign)
 {
     if (SubLeaves != null)
     {
         foreach (Leaf leaf in SubLeaves)
         {
             if (leaf.Sign == sign)
             {
                 return(leaf);
             }
         }
         return(SubLeaves.AppendToLast(new Leaf(sign)).Item);
     }
     else
     {
         SubLeaves = new OnceLinkedList <Leaf>(new Leaf(sign));
         return(SubLeaves.Item);
     }
 }
Пример #2
0
 /// <summary>
 /// Adds information to current leaf.
 /// </summary>
 /// <param name="info"></param>
 private void AddInfo(LemmaInfo info)
 {
     OnceLinkedList <LemmaInfo> .Append(ref Info, info);
 }