pub struct GroupedQueryFn<'a> {
pub analyzed: &'a AnalyzedQuery,
pub parent_struct_name: &'a str,
pub child_struct_name: &'a str,
pub all_columns: &'a [ResolvedColumn],
pub parent_columns: &'a [ResolvedColumn],
pub child_columns: &'a [ResolvedColumn],
pub params: &'a [ResolvedParam],
pub key_column: &'a str,
}Expand description
Inputs for CodegenBackend::generate_grouped_query_fn.
The grouped query-fn contract carries enough context (analyzed query, both
struct names, the flat and split column sets, params, and the grouping key)
that passing it positionally trips clippy::too_many_arguments. Bundling it
into one struct keeps the per-language implementations uniform as backends
opt in to grouped codegen.
Fields§
§analyzed: &'a AnalyzedQueryFull analyzed query (SQL, name, params, optional_params, deprecated, …).
parent_struct_name: &'a strName of the generated parent struct.
child_struct_name: &'a strName of the generated child struct.
all_columns: &'a [ResolvedColumn]All resolved columns in flat SELECT order; used for row decoding.
parent_columns: &'a [ResolvedColumn]Resolved columns belonging to the parent struct.
child_columns: &'a [ResolvedColumn]Resolved columns belonging to the child struct(s).
params: &'a [ResolvedParam]Resolved query parameters.
key_column: &'a strGrouping key column name in the flat result row
(matches scythe_core::analyzer::GroupByConfig::key_column).