A doubly linked list, providing constant time addition, size, and 
  truth checks. It provides for constant time removal if you have the node 
  object in hand. It provides for linear time iteration without copying 
  while allowing removals or additions to the list during iteration.
    |  | 
        
          | __init__(self) x.__init__(...) initializes x; see help(type(x)) for signature
 |  |  | 
    |  |  | 
    |  |  | 
    |  | 
        
          | _iter_from(self,
        start,
        reverse=False) Iterate over the list in some direction from some start point.
 |  |  | 
    |  | 
        
          | __iter__(self) Iterate from head to tail over the list, yielding a (node, value) 
      tuple for each element.
 |  |  | 
    |  | 
        
          | reverse_iter(self) Iterate from tail to head over the list, yielding a (node, value) 
      tuple for each element.
 |  |  | 
    |  |  | 
    |  | 
        
          | __setstate__(self,
        state) |  |  | 
    |  | 
        
          | remove(self,
        node) Remove a node from the list.
 |  |  | 
    |  | 
        
          | add(self,
        value) Add a node to the list.
 |  |  | 
  
    | Inherited from object:__delattr__,__format__,__getattribute__,__hash__,__new__,__reduce__,__reduce_ex__,__repr__,__setattr__,__sizeof__,__str__,__subclasshook__ |