RenderedExpression class

The output of a render pass: a SQL fragment (the predicate body — what would go after WHERE) plus the parameter binding shape the dialect prefers.

For named dialects (Postgres, SQLite), parameters is a Map<String, Object?> and positionalParameters is empty. For positional dialects (MySQL), parameters is empty and positionalParameters is the ordered list of bound values.

This is intentionally a value class without machinery — callers pass it straight to their persistent store's execute path.

Constructors

RenderedExpression(String sql, {Map<String, Object?> parameters = const {}, List<Object?> positionalParameters = const []})
const

Properties

hashCode int
The hash code for this object.
no setterinherited
parameters Map<String, Object?>
final
positionalParameters List<Object?>
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sql String
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toQueryPredicate() QueryPredicate
Convert a RenderedExpression back into a legacy QueryPredicate for back-compat with the existing sqlWhereClause, sqlJoin, and friends. Named dialects round-trip cleanly; positional dialects emit a predicate whose parameters map keys are '?0', '?1', ... (just so the map shape is preserved — call sites that need positional binding read positionalParameters directly).
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited