StructsΒ§
- Block
Constant Info - Per-block info collected during construction for path reachability analysis. Each blockβs assignments, constants, and copy chains are stored together so they can be read with a single index lookup.
- Comparison
Source - Records the origin of a boolean temporary produced by a binary comparison during guard-clause evaluation.
- Constraint
Hash - Hash of the constraint state accumulated along a path prefix.
- Discriminant
Info - Enum discriminant metadata used by [
check_switch_transition]. - Path
Enumerator - Builds a
PathTreeby depth-first enumeration of whole-CFG paths. - Path
Graph - CFG augmented with per-block constant info and discriminant metadata for path reachability analysis.
- SccKey
- Key for
PathEnumerator::scc_pathsandPathEnumerator::visited_sccsandPathEnumerator::visited_sccs: which SCC entry block, with what constraint state, and how many additional postfix repeats are allowed. - SccPath
- A single enumerated acyclic path through an SCC region.
ConstantsΒ§
- AGGREGATE_
FIELD_ πMULT - Encode a
(local, field_index)pair into a singleusize. - AGGREGATE_
FIELD_ πSENTINEL - SCC_
MAX_ πDEPTH - Maximum DFS depth for intra-SCC path enumeration.
- SCC_
MAX_ πPATH_ LEN - Maximum path length within an SCC traversal.
- SCC_
MAX_ πSEEN_ PATHS - Maximum number of distinct paths collected per SCC.
- SCC_
PATH_ πCACHE_ LIMIT - Bounded cache size for SCC path enumeration.
- WHOLE_
CFG_ πPATH_ DEPTH_ LIMIT - Maximum DFS depth for whole-CFG path enumeration.
- WHOLE_
CFG_ πPATH_ LIMIT - Maximum number of whole-CFG paths collected before stopping enumeration.
FunctionsΒ§
- check_
postfix_ πsegment - Check whether the current entryβentry sub-path introduces a new block
sequence (not just new blocks). Different branch choices inside the SCC
produce different sequences even when all block IDs have already been seen,
e.g.
if i % 2 == 0 { A } else { B }alternates between two paths through the same set of blocks on successive loop iterations. - decode_
aggregate_ πfield - encode_
aggregate_ πfield - extract_
segment π - first_
field_ πprojection - resolve_
switch_ πtarget - Resolve a concrete discriminant value to the corresponding
SwitchIntsuccessor block index.