Esempio n. 1
0
    //-------------------------------------------------------------------------
    static void _PushBefore(ViDoubleLinkNode2 <T> after, ViDoubleLink2 <T> list)
    {
        if (list.IsEmpty())
        {
            return;
        }
        ViDoubleLinkNode2 <T> first = list._root._next;
        ViDoubleLinkNode2 <T> back  = list._root._pre;
        ViDoubleLinkNode2 <T> pre   = after._pre;

        _Link(pre, first);
        _Link(back, after);
        list._Init();
    }
Esempio n. 2
0
    //-------------------------------------------------------------------------
    static void _PushAfter(ViDoubleLinkNode2 <T> before, ViDoubleLink2 <T> list)
    {
        if (list.IsEmpty())
        {
            return;
        }
        ViDoubleLinkNode2 <T> first = list._root._next;
        ViDoubleLinkNode2 <T> back  = list._root._pre;
        ViDoubleLinkNode2 <T> next  = before._next;

        _Link(before, first);
        _Link(back, next);
        list._Init();
    }