Performs a BFS on the import graph.
The starting node index for the BFS.
A function called for each visited node and the edge through which it was reached.
Finds a direct connection (edge) between two nodes.
The index of the source node.
The index of the target node.
The ImportEdge if a direct connection exists, or undefined if not found.
Finds a node in the graph by its import path.
The absolute path of the file to find.
The ImportNode if found, or undefined if not found.
Iterates over all edges in the graph and calls the provided callback for each edge.
A function to be called for each edge in the graph.
Iterates over all nodes in the graph and calls the provided callback for each nodes.
A function to be called for each nodes in the graph.
Returns all direct and indirect import connections for the given node index.
The index of the node to start from.
An array of ImportNodes that are directly or indirectly imported by the given node.
Returns all nodes that directly or indirectly import the given node.
The index of the node to start from.
An array of ImportNodes that directly or indirectly import the given node.
Returns a list of nodes that have a contract definition. These nodes could be entry points of the project.
Returns true if parent
imports child
, directly or indirectly.
Represents the entire import graph of a project.