コード例 #1
0
        public void addLast(IFlowResolver resolver)
        {
            var ctx = new WrappedResolver(resolver);

            if (tail == null)
            {
                tail = head;
            }
            tail.Next = ctx;
            tail      = ctx;
        }
コード例 #2
0
        public void remove(IFlowResolver resolver)
        {
            var current  = head;
            var previous = head;

            while (current != null)
            {
                if (current.Resolver == resolver)
                {
                    previous.Next = current.Next;
                    if (current == tail)
                    {
                        tail = previous;
                    }
                }
                //Prepare for next check
                previous = current;
                current  = current.Next;
            }
        }