qtil
advanced-security/qtil-swift 0.0.3
Search

Module GraphPathSearch

A module for efficiently finding paths in a directional graph using a performant pattern called forward-reverse pruning.

This pattern is useful for efficiently finding connections between nodes in a directional graph. In a first pass, it finds nodes reachable from the starting point. In the second pass, it finds the subset of those nodes that can be reached from the end point. Together, these create a path from start points to end points.

As with the other performance patterns in qtil, this module may be useful as is, or it may not fit your needs exactly. CodeQL evaluation and performance is very complex. In that case, consider this pattern as an example to create your own solution that fits your needs.

Import path

import qtil.graph.GraphPathSearch

Modules

GraphPathSearch

A module that implements an efficient search for a path within a custom directional graph from a set of start nodes to a set of end nodes.

Module signatures

GraphPathSearchSig

Implement this signature to define a graph, and a search for paths within that graph, using the GraphPathSearch module.