Expand description
Restricted Semantic Operation Graphs.
This is deliberately a closed vocabulary. The graph is a target for compiler-independent normalization, not a generic program representation: code that cannot be expressed by one of these operations is left outside semantic matching. That restriction keeps later findings explainable as a sequence of registered transformations instead of turning this mode into a claim of general semantic equivalence.
Structs§
- ApiNormalization
- The result of normalizing registered API observations.
- Construct
Observation - One compiler-confirmed non-API operation eligible for a registered SOG rule.
- Cross
Language ApiCorrespondence - One explicit correspondence between Rust and C++ standard-library APIs.
- Cross
Language Candidate Extraction - Candidate pairs and accounting for an opt-in Rust-to-C++ comparison.
- Cross
Language Candidate Input - One graph admitted to a caller-selected Rust-to-C++ comparison domain.
- Cross
Language Candidate Stats - Accounting for opt-in Rust-to-C++ candidate extraction.
- Cross
Language Rule Match - One verified Rust-to-C++ rule application with its closed correspondence evidence.
- Operation
Attributes - Attributes retained for an operation without importing compiler internals.
- Operation
Edge - A directed graph edge addressed by graph-local node positions.
- Operation
Node - One operation in source order; its position is a graph-local reference.
- Operation
Observation - One compiler-independent observation eligible for a registered SOG rule.
- Rule
Match - One successful registered rule application.
- Semantic
Candidate Config - Limits for the registered SOG candidate index.
- Semantic
Candidate Extraction - Candidate pairs and their complete accounting.
- Semantic
Candidate Pair - One pair selected by the bounded SOG candidate index.
- Semantic
Candidate Stats - Accounting for registered SOG candidate extraction.
- Semantic
Graph Window - One bounded source fragment whose graph satisfies a registered rule when compared with itself.
- Semantic
Grouping - Cohesive semantic groups and the verified pairs they do not represent.
- Semantic
Grouping Stats - Accounting for registered semantic grouping.
- Semantic
Grouping Unit - Position-free identity of one SOG-owning unit supplied to semantic grouping.
- Semantic
Operation Graph - A versioned, compiler-independent restricted semantic graph.
- Semantic
Rule - A registered, explainable SOG correspondence rule.
- Semantic
Rule Group - A cohesive set of SOG-owning units justified by one registered rule.
- Semantic
Rule Pattern - A declarative, closed SOG pattern for one registered semantic rule.
- Semantic
Source Range - Ephemeral source range attached to one normalized operation.
- Ungrouped
Semantic Pair - Semantic pairs left outside a cohesive group, with an explicit reason.
- Verified
Semantic Pair - One verified semantic candidate paired with the rule that justified it.
Enums§
- Direct
Propagation - A closed propagation form established by a compiler helper.
- Fallible
Kind - A standard fallible container retained by a compiler-confirmed operation.
- Operation
Edge Kind - Why one operation precedes or is paired with another.
- Operation
Kind - One permitted semantic operation.
- Semantic
Graph Error - A graph rejected an operation or relationship outside the restricted model.
- Semantic
Rule Matcher - A closed, declarative matching strategy for a registered semantic rule.
- Semantic
Rule Scope - The explicit comparison domain a registered rule may inspect.
Constants§
- CROSS_
LANGUAGE_ CANDIDATE_ INDEX_ VERSION - Version of the opt-in Rust-to-C++ candidate index.
- SEMANTIC_
CANDIDATE_ INDEX_ VERSION - Version of the coarse index used to bound registered SOG comparisons.
- SEMANTIC_
RULE_ REGISTRY_ VERSION - Version of the built-in restricted-semantic rule registry.
- SEMANTIC_
WINDOWING_ VERSION - Version of the bounded source-window extraction for registered SOG rules.
- SOG_
SCHEMA_ VERSION - Version of the closed SOG vocabulary and normalization contract.
Functions§
- cross_
language_ api_ correspondence - Find the correspondence entry for one compiler-confirmed standard API.
- cross_
language_ api_ correspondences - Return the complete closed Rust-to-C++ API correspondence table.
- extract_
cross_ language_ candidates - Extract bounded candidates for an explicit Rust-to-C++ comparison.
- extract_
registered_ candidates - Extract bounded candidate pairs for registered SOG rules.
- group_
verified_ semantic_ pairs - Group verified registered-rule pairs without treating pair compatibility as transitive.
- match_
cross_ language_ optional_ validation - Match an explicit Rust
Optionvalidation with its C++optionalcounterpart. - match_
cross_ language_ pipeline - Match one explicitly selected Rust-to-C++ sequence pipeline.
- match_
cross_ language_ result_ direct_ propagation - Match a Rust direct
Resultadapter with a C++ directexpectedidentity return. Both helpers must establish the same language-neutral error/value category and the exact registered propagation form. - match_
cross_ language_ result_ validation - Match a Rust
Resultpresence branch with the C++expectedcounterpart. - match_
registered_ pipeline - Match two equivalent registered API pipelines without comparing API spelling.
- match_
registered_ rule - Match any closed, registered SOG correspondence rule.
- normalize_
registered_ apis - Normalize only APIs covered by the initial, explicit operation registry.
- normalize_
registered_ observations - Normalize registered API and compiler-confirmed construct observations.
- normalize_
registered_ observations_ with_ ranges - Normalize registered observations with their exact source ranges.
- registered_
rules - Rules enabled by default because each has an explicit, bounded meaning.
- registered_
semantic_ windows - Extract the largest source-contiguous windows that a same-variant rule can justify on its own.
- verify_
cross_ language_ candidates - Verify explicit Rust-to-C++ candidates using every registered API mapping.
- verify_
registered_ candidates - Verify candidate pairs against the registered rules.