GenerationContext class

Contains information about a query while it's being constructed.


GenerationContext(DriftDatabaseOptions options, DatabaseConnectionUser? executor, {bool supportsVariables = true})
Constructs a custom GenerationContext by setting the fields manually. See GenerationContext.fromDb for a more convenient factory.
GenerationContext.fromDb(DatabaseConnectionUser executor, {bool supportsVariables = true})
Constructs a GenerationContext by copying the relevant fields from the database.


amountOfVariables int
Returns the amount of variables that have been introduced when writing this query.
boundVariables List
The values of introducedVariables that will be sent to the underlying engine.
buffer StringBuffer
The string buffer contains the sql query as it's being constructed.
dialect SqlDialect
The SqlDialect that should be respected when generating the query.
executor DatabaseConnectionUser?
The actual DatabaseConnectionUser that's going to execute the generated query.
explicitVariableIndex int?
When set to a non-null value, Variables in this context will generate explicit indices starting at explicitVariableIndex.
read / write
generatingForView String?
When set to an entity name (view or table), generated column in that entity definition will written into query as expression
read / write
hashCode int
The hash code for this object.
hasMultipleTables bool
Whether the query obtained by this context operates on multiple tables.
read / write
introducedVariables List<Variable<Object>>
All variables ("?" in sql) that were added to this context.
options DriftDatabaseOptions
The options to use when mapping values from and to the database.
runtimeType Type
A representation of the runtime type of the object.
sql String
Gets the generated sql statement
supportsVariables bool
Whether variables are supported and can be written as ? to be bound later.
typeMapping SqlTypes
The SqlTypes configuration used for mapping values to the database.
watchedTables List<ResultSetImplementation>
All tables that the generated query reads from.


identifier(String columnName) String
Turns columnName into a safe SQL identifier by wrapping it in double quotes.
introduceVariable(Variable<Object> v, dynamic value) → void
Introduces a variable that will be sent to the database engine. Whenever this method is called, a question mark should be added to the buffer so that the prepared statement can be executed with the variable. The value must be a type that is supported by the sqflite library. A list of supported types can be found here.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
toString() String
A string representation of this object.
writeWhitespace() → void
Shortcut to add a single space to the buffer because it's used very often.


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