Skip to main content

resolve_params

Function resolve_params 

Source
pub fn resolve_params(
    params: &[AnalyzedParam],
    manifest: &BackendManifest,
    overrides: &[TypeOverride],
    source_table: &str,
) -> Result<Vec<ResolvedParam>, ScytheError>
Expand description

Resolve analyzed params into resolved params using a backend manifest.

When overrides is non-empty, each param is checked against the override list before the normal type-resolution path.

column_match prefers AnalyzedParam::source_relation – the real relation a direct WHERE table.column = $N comparison bound this parameter against – over the query-level source_table fallback. source_table only ever comes from detect_select_star_source (a single-table SELECT *), so before AnalyzedParam carried its own relation, a qualified column = "table.col" override on a parameter was a silent no-op for any other projection – the parameter half of #189, left tracked when the column half was fixed in 99227e8e. source_table stays as the fallback (rather than being removed) so a parameter with no traceable owning column – IN list, LIKE, a literal comparison – keeps resolving the same way it did before this field existed.