code: public Iterator<WeightedDirectedTypedEdge<T>> iterator() {
          List<Iterator<WeightedDirectedTypedEdge<T>>> iters =
              new ArrayList<Iterator<WeightedDirectedTypedEdge<T>>>();
          iters.add(Collections.<WeightedDirectedTypedEdge<T>>
                        unmodifiableCollection(inEdges.values()).iterator());
          iters.add(Collections.<WeightedDirectedTypedEdge<T>>
                        unmodifiableCollection(outEdges.values()).iterator());
          return new CombinedIterator(iters);
      }
docs: {@inheritDoc}