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