pub fn resolve(
text: &str,
ctx: &ResolveCtx<'_>,
fakes: &mut usize,
) -> Result<Resolution, ResolveError>Expand description
Resolve every ${…} in text (recursively, ≤ MAX_DEPTH passes), leave
{{…}} untouched, then apply $${ escapes. Pure and total.
fakes is the ${fake:*} occurrence counter — owned by the caller and
carried across every resolve() call in its scope (a scenario’s steps,
TECH-SPEC §8), so two references to the same generator never collide. It
is read and incremented, never reset here; a fresh scope means a fresh
0-initialized counter, which is what keeps values a pure function of
(run_id, generator, occurrence) — still deterministic per run_id.