raindrop library

Classes

Abs<V extends num?>
SQL ABS(value).
AliasedExpression<V>
An Expression carrying an output name for a projection.
Arithmetic<V extends num?>
Arithmetic between two operands, each a literal, a column or another expression.
Avg
SQL AVG(value).
Bound
A value that must travel as a bind parameter.
CachedFuture<V>
A future that is called once and then cached internally.
CaseElse<V>
A CASE expression closed by an ELSE, so it always yields a value.
CaseWhen<V>
A CASE WHEN ... THEN ... expression, nullable for as long as no ELSE branch has been added.
Check
Represents a table-level CHECK constraint definition.
CheckBuilder
Builder for creating check definitions with fluent API.
Coalesce<V>
SQL COALESCE(value, fallback).
Column<R, V extends Object?>
A single column of a Table, usable as an operand in queries and as a selectable.
ColumnAlias<R, V extends Object?>
Provides alias information of a column.
ColumnTransformer<I, O>
Converts column values between the in-memory type I and the SQL storage type O.
Concat
SQL (a || b || ...).
Count<V>
SQL COUNT(value), or COUNT(*) when value is null.
DatabaseResult
The result from the database on any given query.
DdlMigrationStorage
MigrationStorage kept in a _raindrop_migrations table.
Delegate
Abstract delegate class that provides all the necessary components to talk to a SqlDialect.
DeleteAllBuilder<S extends Schema<R>, R, V>
Delete builder that does not have any kind of filtering.
DeleteBuilder<S extends Schema<R>, R, V>
The base class of any delete builder.
DeleteLimitedBuilder<S extends Schema<R>, R, V>
A delete whose row cap is set: still awaitable and decoratable, no longer filterable.
DeleteWhereBuilder<S extends Schema<R>, R, V>
Delete builder that does have filtering.
Derived1<V0>
Derived10<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9>
Derived11<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10>
Derived12<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11>
Derived13<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12>
Derived14<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13>
Derived15<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14>
Derived16<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15>
Derived17<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16>
Derived18<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17>
Derived19<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18>
Derived2<V0, V1>
Derived20<V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19>
Derived3<V0, V1, V2>
Derived4<V0, V1, V2, V3>
Derived5<V0, V1, V2, V3, V4>
Derived6<V0, V1, V2, V3, V4, V5>
Derived7<V0, V1, V2, V3, V4, V5, V6>
Derived8<V0, V1, V2, V3, V4, V5, V6, V7>
Derived9<V0, V1, V2, V3, V4, V5, V6, V7, V8>
DeveloperLogger
A Logger implementation that uses the log function from dart:developer to log info.
Distinct<V>
SQL DISTINCT value.
Expression<V>
A typed SQL expression that produces a value of type V.
Filter
Base class for any kind of filtering.
ForeignKeyReference
Represents a foreign key reference from a column to another table's column.
Index
Represents a database index definition.
IndexBuilder
Builder for creating index definitions with fluent API.
InnerJoin<S extends Schema<R>, R>
Describes an inner join.
InsertBuilder<S extends Schema<R>, R, V>
The base class of any insert builder.
InsertValuesBuilder<S extends Schema<R>, R, V>
The insert builder that takes a list of values.
InsertWithValuesBuilder<S extends Schema<R>, R, V>
An insert builder that has values to insert.
Join<S extends Schema<R>, R>
Abstract class for defining joins.
LeftJoin<S extends Schema<R>, R>
Describes a left join.
Length
SQL LENGTH(value).
Logger
Provides logging capabilities inside Raindrop.
LogicalFilter
Provide logical filtering of AND/OR operations.
Lower
SQL LOWER(value).
Max<V>
SQL MAX(value).
Migration
A single migration unit containing a tag and SQL content.
MigrationStorage
Where a driver keeps its record of applied migrations.
Min<V>
SQL MIN(value).
NoopLogger
A Logger implementation that has empty implementation for logging.
NoSchema
Phantom type used as the schema slot in SelectBuilder before a concrete schema has been selected via .from.
Not
Inverts a filter.
Op
The common SQL comparison operators, as RawSQL constants.
OrderBy
A single ORDER BY term.
ProjectionFromBuilder<S extends Schema<R>, R, V>
A SelectFromBuilder produced by an explicit column projection (select(colA, colB, ...)), as opposed to a whole-row select().
QueryBuilder<S, V>
Abstract class for all query builders.
Raindrop
The database class of Raindrop.
RaindropDelegate
Base class for providing delegation between a RaindropExecutor and the SQL database.
RaindropExecutor<D extends Delegate>
Raw<V extends Object?>
A verbatim fragment of SQL.
RawSQL
Provides a raw SQL object.
Replace
SQL REPLACE(value, from, to).
RightJoin<S extends Schema<R>, R>
Describes a right join.
Schema<R>
Describes the schema (table reference) for a row of type R.
SchemaBuilder<R>
Carries the Table reference for a schema under construction. Column builder extensions ($.integer, $.text, etc.) register columns on this builder's table.
Selectable<V>
Interface for making a class selectable.
SelectableResult<V>
List of selectable results
SelectBuilder<V extends Object?>
Select builder for select queries
SelectFromBuilder<S extends Schema<R>, R, V>
Select builder that knows from where it is selecting (S).
SingleProjectionFromBuilder<S extends Schema<R>, R, V>
A ProjectionFromBuilder for a projection of exactly one column.
Span
Describes a single traced span from start to end.
SQL
SQL-based logic, makes it easy to add custom SQL code.
SqlDialect
Base class for any SQL dialect.
Subquery<V>
A SELECT standing where a value is expected.
Substr
SQL SUBSTR(value, start, [length]).
Sum<V extends num?>
SQL SUM(value).
Table<S extends Schema<R>, R>
A table holds all the data related to building and querying tables.
Tracer
Root class that provides the start of a trace tree.
TransactionDelegate
Delegate used within transactional environments.
Trim
SQL TRIM(value).
Updateable<V>
Interface for making a class updateable.
UpdateableColumn<V>
A column that can be updated.
UpdateableResult<V>
List of updateable results
UpdateableTable<S extends Schema<R>, R>
A table that can be updated.
UpdateBuilder<S extends Schema<R>, R, V>
Base update builder class.
UpdateLimitedBuilder<S extends Schema<R>, R, V>
An update whose row cap is set: still awaitable and decoratable, no longer filterable.
UpdateSettingBuilder<S extends Schema<R>, R, V>
Start of every update builder, the user has to set what it wants to update first.
UpdateWhereBuilder<S extends Schema<R>, R, V>
Update builder that can be filtered down or turned into a query.
Upper
SQL UPPER(value).
WholeRowFromBuilder<S extends Schema<R>, R>
A SelectFromBuilder produced by a whole-row select(), as opposed to an explicit column projection.

Enums

ArithmeticOperator
The arithmetic operators, spelled the same by every SQL dialect.
Order
Sort direction for an ORDER BY term, used as the value in the orderBy({column: Order.asc, ...}) map.
ReferentialAction
Referential action to take when the referenced row is deleted or updated.

Mixins

SqlOperand<V>
Lets a type be passed where a plain value is expected.
ToQuery<S, V>
Makes a terminal builder awaitable.

Extension Types

ColumnType
A typed handle to a registered Column, as returned by the schema builder's column registration methods.
QueryConfig
Everything a builder has accumulated so far, keyed by symbol.

Extensions

ArithmeticOperators on ColumnOf<V>?
Arithmetic on a numeric column: t.count + 1, t.a * t.b.
BoolOperators on ColumnOf<V>?
Predicates for boolean columns.
ColumnBuilderProvider on SchemaBuilder<R>
Column registration methods for a SchemaBuilder.
ColumnOperators on ColumnOf<V>?
Predicate and aggregate operators available on any column.
DerivedProjection1 on SingleProjectionFromBuilder<Schema, dynamic, V0>
DerivedProjection10 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9)>
DerivedProjection11 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10)>
DerivedProjection12 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11)>
DerivedProjection13 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12)>
DerivedProjection14 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13)>
DerivedProjection15 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14)>
DerivedProjection16 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15)>
DerivedProjection17 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16)>
DerivedProjection18 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17)>
DerivedProjection19 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18)>
DerivedProjection2 on ProjectionFromBuilder<Schema, dynamic, (V0, V1)>
DerivedProjection20 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19)>
DerivedProjection3 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2)>
DerivedProjection4 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3)>
DerivedProjection5 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4)>
DerivedProjection6 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5)>
DerivedProjection7 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6)>
DerivedProjection8 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7)>
DerivedProjection9 on ProjectionFromBuilder<Schema, dynamic, (V0, V1, V2, V3, V4, V5, V6, V7, V8)>
DerivedWholeRow on WholeRowFromBuilder<S, R>
The rows a whole-row select returns, usable where its table is.
DistinctSelect on SelectFunction
SELECT DISTINCT, as an extension on the torn-off select itself.
ExpressionOperators on Expression<V>
Comparisons with an expression on the LEFT.
FilterX on F
Null-aware variants of the Filter combinators.
IndexBuilderOn on IndexBuilder
IntOperators on ColumnOf<V>?
Comparison operators for integer columns.
ISUDRaindropExecutor on RaindropExecutor<Delegate>
Extension that provides insert, select, update and delete methods.
ModuloOperator on ColumnOf<V>?
Modulo on an integer column: t.id % 2.
NumericExpressionOperators on Expression<V>
Ordering comparisons for an expression over a number.
PrimaryColumn on T?
Primary-key marking for a possibly-absent column.
PrimaryColumnInteger on T
Primary-key marking for integer columns, which support auto-increment.
PrimaryColumnNonNull on T
Primary-key marking for a known-present column.
ProjectionGroupBy on ProjectionFromBuilder<S, R, V>
ProjectionJoins on ProjectionFromBuilder<S, R, V>
Joins for an explicit column projection (select(colA, colB, ...)).
RawParts on RawFunction
raw.parts, the composite form of raw.
ReferencesColumn on T?
Extension to add foreign key references to columns.
SchemaX on S
Convenience accessors on a schema reference.
SelectableColumns on SelectBuilder<(_Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns0 on SelectBuilder<(Selectable<V0>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns1 on SelectBuilder<(Selectable<V0>, Selectable<V1>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns10 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns11 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns12 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns13 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns14 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, Selectable<V14>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns15 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, Selectable<V14>, Selectable<V15>, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns16 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, Selectable<V14>, Selectable<V15>, Selectable<V16>, _Unused?, _Unused?, _Unused?)?>
SelectableColumns17 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, Selectable<V14>, Selectable<V15>, Selectable<V16>, Selectable<V17>, _Unused?, _Unused?)?>
SelectableColumns18 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, Selectable<V14>, Selectable<V15>, Selectable<V16>, Selectable<V17>, Selectable<V18>, _Unused?)?>
SelectableColumns19 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, Selectable<V10>, Selectable<V11>, Selectable<V12>, Selectable<V13>, Selectable<V14>, Selectable<V15>, Selectable<V16>, Selectable<V17>, Selectable<V18>, Selectable<V19>)?>
SelectableColumns2 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns3 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns4 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns5 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns6 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns7 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns8 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectableColumns9 on SelectBuilder<(Selectable<V0>, Selectable<V1>, Selectable<V2>, Selectable<V3>, Selectable<V4>, Selectable<V5>, Selectable<V6>, Selectable<V7>, Selectable<V8>, Selectable<V9>, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?, _Unused?)?>
SelectGroupBy on SelectFromBuilder<S, R, V>
SelectWithInnerJoin0 on SelectFromBuilder<S, R, R>
SelectWithInnerJoin1 on SelectFromBuilder<S, R, (R0, R1)>
SelectWithInnerJoin10 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10)>
SelectWithInnerJoin11 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11)>
SelectWithInnerJoin12 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12)>
SelectWithInnerJoin13 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13)>
SelectWithInnerJoin14 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14)>
SelectWithInnerJoin15 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15)>
SelectWithInnerJoin16 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16)>
SelectWithInnerJoin17 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17)>
SelectWithInnerJoin18 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18)>
SelectWithInnerJoin19 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19)>
SelectWithInnerJoin2 on SelectFromBuilder<S, R, (R0, R1, R2)>
SelectWithInnerJoin3 on SelectFromBuilder<S, R, (R0, R1, R2, R3)>
SelectWithInnerJoin4 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4)>
SelectWithInnerJoin5 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5)>
SelectWithInnerJoin6 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6)>
SelectWithInnerJoin7 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7)>
SelectWithInnerJoin8 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8)>
SelectWithInnerJoin9 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9)>
SelectWithLeftJoin0 on SelectFromBuilder<S, R, R>
SelectWithLeftJoin1 on SelectFromBuilder<S, R, (R0, R1)>
SelectWithLeftJoin10 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10)>
SelectWithLeftJoin11 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11)>
SelectWithLeftJoin12 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12)>
SelectWithLeftJoin13 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13)>
SelectWithLeftJoin14 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14)>
SelectWithLeftJoin15 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15)>
SelectWithLeftJoin16 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16)>
SelectWithLeftJoin17 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17)>
SelectWithLeftJoin18 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18)>
SelectWithLeftJoin19 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19)>
SelectWithLeftJoin2 on SelectFromBuilder<S, R, (R0, R1, R2)>
SelectWithLeftJoin3 on SelectFromBuilder<S, R, (R0, R1, R2, R3)>
SelectWithLeftJoin4 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4)>
SelectWithLeftJoin5 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5)>
SelectWithLeftJoin6 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6)>
SelectWithLeftJoin7 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7)>
SelectWithLeftJoin8 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8)>
SelectWithLeftJoin9 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9)>
SelectWithRightJoin0 on SelectFromBuilder<S, R, R>
SelectWithRightJoin1 on SelectFromBuilder<S, R, (R0, R1)>
SelectWithRightJoin10 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10)>
SelectWithRightJoin11 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11)>
SelectWithRightJoin12 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12)>
SelectWithRightJoin13 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13)>
SelectWithRightJoin14 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14)>
SelectWithRightJoin15 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15)>
SelectWithRightJoin16 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16)>
SelectWithRightJoin17 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17)>
SelectWithRightJoin18 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18)>
SelectWithRightJoin19 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19)>
SelectWithRightJoin2 on SelectFromBuilder<S, R, (R0, R1, R2)>
SelectWithRightJoin3 on SelectFromBuilder<S, R, (R0, R1, R2, R3)>
SelectWithRightJoin4 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4)>
SelectWithRightJoin5 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5)>
SelectWithRightJoin6 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6)>
SelectWithRightJoin7 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7)>
SelectWithRightJoin8 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8)>
SelectWithRightJoin9 on SelectFromBuilder<S, R, (R0, R1, R2, R3, R4, R5, R6, R7, R8, R9)>
SingleProjectionGroupBy on SingleProjectionFromBuilder<S, R, V>
StringExpressionOperators on Expression<V>
Text comparisons for an expression over a string.
StringOperators on ColumnOf<V>?
Pattern-matching and comparison operators for text columns.
UpdateableColumnsOn on UpdateSettingBuilder<S, RR, R>
UpdateColumn on ColumnOf<V>?
Provide a set method to a column to update a column.
WholeRowGroupBy on WholeRowFromBuilder<S, R>

Functions

abs<V extends num?>(ColumnOr<V> value) Abs<V>
SQL ABS(value), the absolute value of value, keeping its type.
avg(ColumnOr<num?> value) Avg
SQL AVG(value), the mean of value across the group.
bind(Object? value) Bound
Marks value as a bound parameter inside RawParts.parts.
caseWhen<V>(Filter when, {required ColumnOr<V> then}) CaseWhen<V>
Opens a CASE expression with its first WHEN [when] THEN [then] branch.
check(String name, Filter predicate) CheckBuilder
A table-level CHECK constraint.
coalesce<V>(ColumnOr<V> value, V fallback) Coalesce<V>
SQL COALESCE(value, fallback), value when non-null, else fallback.
concat(List<ColumnOr<String?>> parts) Concat
SQL (a || b || ...), the parts joined into one string.
count([Selectable<Object?>? value]) Count<Object?>
SQL COUNT(...).
distinct<V>(Selectable<V> value) Distinct<V>
SQL DISTINCT value, for an aggregate's operand.
exists(ToQuery query) SQL
EXISTS (SELECT ...), true when query matches any row.
index(String name, {Filter? where}) IndexBuilder
Creating an index on one or more columns.
length(ColumnOr<String?> value) Length
SQL LENGTH(value), the character count of value.
lower(ColumnOr<String?> value) Lower
SQL LOWER(value), value folded to lower case.
max<V>(ColumnOr<V> value) Max<V>
SQL MAX(value), the largest value of value across the group.
migrate(Raindrop db, List<Migration> migrations) Future<void>
Executes pending migrations against db.
min<V>(ColumnOr<V> value) Min<V>
SQL MIN(value), the smallest value of value across the group.
not(Filter filter) Not
Provide a NOT inversion to an known filter.
operandFor<V>(SqlOperand<V> subject, ColumnOr<V> value) Object?
Prepares value to sit opposite subject in a predicate.
raw<V extends Object?>(String sql) Raw<V>
The escape hatch: a fragment of SQL used verbatim, wherever the DSL has no spelling for it.
readSelectableRecord<R>(SelectableResult<R> result, Object? read(Selectable selectable)) → R
Decodes a projected row into the record shape of result, reading one value per selected term through read, in order.
replace(ColumnOr<String?> value, {required ColumnOr<String?> from, required ColumnOr<String?> to}) Replace
SQL REPLACE(value, from, to), every occurrence of from in value replaced with to.
subquery<V>(ToQuery<dynamic, V> query) Subquery<V>
Embeds query where a value is expected.
substr(ColumnOr<String?> value, int start, [int? length]) Substr
SQL SUBSTR(value, start, [length]), the part of value that starts at the 1-based start, capped to length characters when given.
sum<V extends num?>(ColumnOr<V> value) Sum<V>
SQL SUM(value), the total of value across the group.
table<S extends Schema<R>, R>(String name, S builder(SchemaBuilder<R>), {SqlDialect? dialect, void extra(S table)?}) → S
A table holds all the data related to building and querying tables.
transformerOf<V>(ColumnOr<V> operand) ColumnTransformer<V, Object?>?
The transformer of operand, or null when it has none.
trim(ColumnOr<String?> value) Trim
SQL TRIM(value), value with surrounding whitespace removed.
uniqueIndex(String name, {Filter? where}) IndexBuilder
Creating a unique index on one or more columns.
upper(ColumnOr<String?> value) Upper
SQL UPPER(value), value folded to upper case.

Typedefs

AppliedMigration = ({String checksum, String tag})
One applied migration, as the storage reports it.
ColumnOf<V extends Object?> = ColumnType<V>?
A possibly-absent ColumnType, the receiver type for the column operator extensions.
ColumnOr<V> = FutureOr<V>
A column value of type V, accepted directly or as a Future.
Field<R, W extends Object?> = W Function(R)
Row field getter for schema R.
RawFunction = Raw<V> Function<V extends Object?>(String sql)
The signature of raw.
RowReader = V Function<V extends Object?>(ColumnType<V>? column)
Reads a typed column value from a row.
SelectFunction = SelectingBuilder<S0, S1, S2, S3, S4, S5, S6, S7, S8, S9, S10, S11, S12, S13, S14, S15, S16, S17, S18, S19> Function<S0 extends Selectable<Object?>?, S1 extends Selectable<Object?>?, S2 extends Selectable<Object?>?, S3 extends Selectable<Object?>?, S4 extends Selectable<Object?>?, S5 extends Selectable<Object?>?, S6 extends Selectable<Object?>?, S7 extends Selectable<Object?>?, S8 extends Selectable<Object?>?, S9 extends Selectable<Object?>?, S10 extends Selectable<Object?>?, S11 extends Selectable<Object?>?, S12 extends Selectable<Object?>?, S13 extends Selectable<Object?>?, S14 extends Selectable<Object?>?, S15 extends Selectable<Object?>?, S16 extends Selectable<Object?>?, S17 extends Selectable<Object?>?, S18 extends Selectable<Object?>?, S19 extends Selectable<Object?>?>([S0?, S1?, S2?, S3?, S4?, S5?, S6?, S7?, S8?, S9?, S10?, S11?, S12?, S13?, S14?, S15?, S16?, S17?, S18?, S19?])
The signature of ISUDRaindropExecutor.select.
SelectingBuilder<S0 extends Selectable<Object?>?, S1 extends Selectable<Object?>?, S2 extends Selectable<Object?>?, S3 extends Selectable<Object?>?, S4 extends Selectable<Object?>?, S5 extends Selectable<Object?>?, S6 extends Selectable<Object?>?, S7 extends Selectable<Object?>?, S8 extends Selectable<Object?>?, S9 extends Selectable<Object?>?, S10 extends Selectable<Object?>?, S11 extends Selectable<Object?>?, S12 extends Selectable<Object?>?, S13 extends Selectable<Object?>?, S14 extends Selectable<Object?>?, S15 extends Selectable<Object?>?, S16 extends Selectable<Object?>?, S17 extends Selectable<Object?>?, S18 extends Selectable<Object?>?, S19 extends Selectable<Object?>?> = SelectBuilder<(S0, S1, S2, S3, S4, S5, S6, S7, S8, S9, S10, S11, S12, S13, S14, S15, S16, S17, S18, S19)?>

Exceptions / Errors

MigrationChecksumMismatch
Thrown when a previously applied migration's checksum doesn't match the current source, indicating schema drift.
TransactionRollback
An exception that can be thrown to trigger a transaction rollback.