code: public Set<DirectedTypedEdge<T>> getEdges(final T type) {    
          if (!TYPE_INDICES.containsKey(type))
              return Collections.<DirectedTypedEdge<T>>emptySet();
          final int typeIndex = index(type);
          final Set<DirectedTypedEdge<T>> edges = new HashSet<DirectedTypedEdge<T>>();
          inEdges.forEachEntry(new TIntObjectProcedure<BitSet>() {
                  public boolean execute(int v, BitSet types) {
                      if (types.get(typeIndex))
                          edges.add(new SimpleDirectedTypedEdge<T>(
                                        type, v, rootVertex));
                      return true;
                  }
              });
          outEdges.forEachEntry(new TIntObjectProcedure<BitSet>() {
                  public boolean execute(int v, BitSet types) {
                      if (types.get(typeIndex))
                          edges.add(new SimpleDirectedTypedEdge<T>(
                                        type, rootVertex, v));
                      return true;
                  }
              });
          return edges;
      }
docs: {@inheritDoc}