Skip to main content

resolve

Function resolve 

Source
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.