public static <NodeType extends IGraphNode<NodeType>> List<NodeType> getPredecessors(
      final NodeType node, final int depth) {
    final List<NodeType> nodes = new ArrayList<NodeType>();

    getPredecessorsInternal(node, depth, nodes, new HashSet<NodeType>());

    return nodes;
  }
Finds all predecessors of a node. Those are all the nodes that have a direct or indirect path
to the node.

@param <NodeType> The type parameter that specifies the type of the nodes in the graph.
@param node The start node.
@return A list containing all predecessor nodes of the node.
java/zylib/src/main/java/com/google/security/zynamics/zylib/types/graphs/GraphAlgorithms.java