Skip to main content

rsql_to_sql

Function rsql_to_sql 

Source
pub fn rsql_to_sql(
    node: &FilterNode,
    entity: &ResolvedEntity,
    q: &mut QueryBuf,
    col_qualifier: Option<&str>,
    filter_includes: &[IncludeSelect<'_>],
    schema_override: Option<&str>,
    dialect: &dyn Dialect,
    registry: Option<&ExtensibleRegistry>,
) -> Result<String, AppError>
Expand description

Convert a FilterNode tree into a SQL WHERE fragment (no leading WHERE). All values are pushed as parameters into q; identifiers come only from config (never from user input) so SQL injection is structurally impossible.

col_qualifier is an optional table alias prefix, e.g. "main." for aliased queries.

filter_includes supplies the related-entity metadata needed to generate EXISTS subqueries for dotted-field filters like transport_unit.bay=contains=bay23.