示例#1
0
        private static void _PushBefore(DoubleLinkNode2 <T> after, DoubleLinkNode2 <T> node)
        {
            DoubleLinkNode2 <T> ptr = after._pre;

            UnityEngine.Debug.Assert(ptr != null);
            DoubleLink2 <T> ._Link(ptr, node);

            DoubleLink2 <T> ._Link(node, after);
        }
示例#2
0
        private static void _PushAfter(DoubleLinkNode2 <T> before, DoubleLinkNode2 <T> node)
        {
            DoubleLinkNode2 <T> ptr = before._next;

            UnityEngine.Debug.Assert(ptr != null);
            DoubleLink2 <T> ._Link(before, node);

            DoubleLink2 <T> ._Link(node, ptr);
        }
示例#3
0
        private static void _PushBefore(DoubleLinkNode2 <T> after, DoubleLink2 <T> list)
        {
            if (!list.IsEmpty())
            {
                DoubleLinkNode2 <T> next = list._root._next;
                DoubleLinkNode2 <T> pre  = list._root._pre;
                DoubleLink2 <T> ._Link(after._pre, next);

                DoubleLink2 <T> ._Link(pre, after);

                list._Init();
            }
        }
示例#4
0
        private static void _PushAfter(DoubleLinkNode2 <T> before, DoubleLink2 <T> list)
        {
            if (!list.IsEmpty())
            {
                DoubleLinkNode2 <T> next  = list._root._next;
                DoubleLinkNode2 <T> pre   = list._root._pre;
                DoubleLinkNode2 <T> node3 = before._next;
                DoubleLink2 <T> ._Link(before, next);

                DoubleLink2 <T> ._Link(pre, node3);

                list._Init();
            }
        }
示例#5
0
 private void _Init()
 {
     DoubleLink2 <T> ._Link(this._root, this._root);
 }