mirror of
https://github.com/elicpeter/nyx.git
synced 2026-06-27 20:29:39 +02:00
26 lines
837 B
Python
26 lines
837 B
Python
|
|
"""Branched helper in a separate file.
|
||
|
|
|
||
|
|
The helper has two return paths:
|
||
|
|
- validated branch → returns the input unchanged (Identity)
|
||
|
|
- raw branch → also returns the input (Identity)
|
||
|
|
|
||
|
|
Without per-return-path decomposition the SSA summary collapses both
|
||
|
|
paths into a single union transform — losing the fact that one branch
|
||
|
|
validates and the other does not. The per-return decomposition
|
||
|
|
preserves each path so the caller's path state can map to the
|
||
|
|
validated branch.
|
||
|
|
|
||
|
|
This fixture is deliberately shaped so both returns are Identity; what
|
||
|
|
differs is the *predicate gate* at each return, which the decomposition
|
||
|
|
records.
|
||
|
|
"""
|
||
|
|
|
||
|
|
|
||
|
|
def maybe_pass(value, validated):
|
||
|
|
if validated:
|
||
|
|
# Validated path: assumes caller already checked `value`.
|
||
|
|
return value
|
||
|
|
else:
|
||
|
|
# Unvalidated raw path.
|
||
|
|
return value
|