public IEnumerator <T> GetEnumerator() { LinkedNode <T> node = Head; while (node != null) { yield return(node.Value); node = node.Next; } }
public void AddToTail(T node) { LinkedNode <T> current = new LinkedNode <T>(node); if (Head == null) { Head = current; Tail = current; Head.Next = Tail; Tail.Prev = Head; } else { Tail.Next = current; current.Prev = Tail; Tail = current; } }