Exemplo n.º 1
0
 public void SetNthChild(int nth, TNODE parent, TNODE child)
 {
     if (parent.Links.Count() > nth)
     {
         if (parent.Links[nth - 1].LinkTypeEnum == LinkTypeEnum.Child)
         {
             parent.Links[nth - 1].LinkNode = child;
         }
     }
     else if (parent.Links.Count() - 1 == nth)
     {
         parent.Links.Add(new LINK(LinkTypeEnum.Child, child));
     }
 }
Exemplo n.º 2
0
        public List <TNODE> GetParentStar(TNODE node)
        {
            List <TNODE> nodes    = new List <TNODE>();
            TNODE        tempNode = node;

            while (tempNode != null)
            {
                TNODE parentNode = GetParent(tempNode);
                if (parentNode != null)
                {
                    nodes.Add(parentNode);
                }
                tempNode = parentNode;
            }
            return(nodes);
        }
Exemplo n.º 3
0
 public void SetPrevLink(LinkTypeEnum linkTypeEnum, TNODE node1, TNODE node2)
 {
     node1.PrevLinks.Add(new LINK(linkTypeEnum, node2));
 }
Exemplo n.º 4
0
 public void SetFollows(TNODE node1, TNODE node2)
 {
     SetLink(LinkTypeEnum.Follows, node2, node1);
     SetPrevLink(LinkTypeEnum.Follows, node1, node2);
 }
Exemplo n.º 5
0
 public TNODE GetNthChild(int nth, TNODE parent)
 {
     return(GetLinkedNodes(parent, LinkTypeEnum.Child).ElementAtOrDefault(nth));
 }
Exemplo n.º 6
0
 public List <TNODE> GetFollows(TNODE node)
 {
     return(GetLinkedNodes(node, LinkTypeEnum.Follows));
 }
Exemplo n.º 7
0
 public ATTR GetAttr(TNODE node)
 {
     return(node.Attr);
 }
Exemplo n.º 8
0
 public void SetRoot(TNODE node)
 {
     Root = node;
 }
Exemplo n.º 9
0
 public bool IsLinked(LinkTypeEnum linkTypeEnum, TNODE node1, TNODE node2)
 {
     return(GetLinkedNodes(node1, linkTypeEnum).Contains(node2));
 }
Exemplo n.º 10
0
 public bool IsFollowedStar(TNODE node1, TNODE node2)
 {
     return(GetFollowsStar(node2).Contains(node1));
 }
Exemplo n.º 11
0
 public EntityTypeEnum GetType(TNODE node)
 {
     return(node.EntityTypeEnum);
 }
Exemplo n.º 12
0
        public List <TNODE> GetParentedStarBy(TNODE node)
        {
            List <TNODE> nodes = new List <TNODE>();

            return(GetParentedStarBy(node, nodes));
        }
Exemplo n.º 13
0
 public List <TNODE> GetParentedBy(TNODE node)
 {
     return(GetPrevLinkedNodes(node, LinkTypeEnum.Parent));
 }
Exemplo n.º 14
0
 public TNODE GetParent(TNODE node)
 {
     return(GetLinkedNodes(node, LinkTypeEnum.Parent).FirstOrDefault());
 }
Exemplo n.º 15
0
 public void SetParent(TNODE child, TNODE parent)
 {
     SetLink(LinkTypeEnum.Parent, child, parent);
     SetPrevLink(LinkTypeEnum.Parent, parent, child);
 }
Exemplo n.º 16
0
 public bool IsParent(TNODE parent, TNODE child)
 {
     return(GetParent(child) == parent);
 }
Exemplo n.º 17
0
 public void SetRightSibling(TNODE nodeL, TNODE nodeR)
 {
     SetLink(LinkTypeEnum.RightSibling, nodeL, nodeR);
     SetLink(LinkTypeEnum.LeftSibling, nodeL, nodeR);
 }
Exemplo n.º 18
0
 public bool IsParentStar(TNODE parent, TNODE child)
 {
     return(GetParentStar(child).Contains(parent));
 }
Exemplo n.º 19
0
 public TNODE GetTNodeDeepCopy(TNODE node)
 {
     return(new TNODE(node));
 }
Exemplo n.º 20
0
 public void SetAttr(TNODE node, ATTR attr)
 {
     node.Attr = attr;
 }
Exemplo n.º 21
0
        public TNODE GetFirstChild(TNODE parent)
        {
            List <TNODE> childNodes = GetLinkedNodes(parent, LinkTypeEnum.Child);

            return(childNodes.FirstOrDefault());
        }
Exemplo n.º 22
0
 public void SetChildOfLink(TNODE child, TNODE parent)
 {
     SetLink(LinkTypeEnum.Child, parent, child);
 }
Exemplo n.º 23
0
        public List <TNODE> GetFollowsStar(TNODE node)
        {
            List <TNODE> nodes = new List <TNODE>();

            return(GetFollowsStar(node, nodes));
        }
Exemplo n.º 24
0
 public LINK(LinkTypeEnum linkTypeEnum, TNODE nodeToLink)
 {
     LinkNode     = nodeToLink;
     LinkTypeEnum = linkTypeEnum;
 }