stormberry library

A strongly-typed postgres ORM to provide easy bindings between your dart classes and postgres database. It supports all kinds of relations without any complex configuration.

Classes

Action<T> Queries & Actions
Extend this to define a custom action.
AutoIncrement Models
Used to annotate a field as an auto increment value. Can only be applied to an integer field.
BaseRepository
BindTo Models
Used to annotate a relational field and specify a binding target.
Bounds
Describes the bounds of PostgreSQL range types.
Box
Describes PostgreSQL's geometric type: box.
Channels
Circle
ClassMeta Models
Metadata for a generated class.
Connection
ConnectionSettings
ContinuousRange<T>
Describes PostgreSQL's continuous builtin range types:
Database Introduction Database Repositories Migration
DateRange
Describes PostgreSQL's builtin daterange
DateTimeRange
DiscreteRange<T>
Endpoint
EndpointSelection
EndpointSelectorContext<L>
EnumTypeConverter<T extends Enum>
FilterByField Models
FilterByValue
HiddenIn Models Views
Hides the annotated field in the given view.
Interval
In Postgresql interval values are stored as months, days, and microseconds. This is done because the number of days in a month varies, and a day can have 23 or 25 hours if a daylight savings time adjustment is involved.
IntRange
Describes PostgreSQL's builtin int4range and int8range
KeyedModelRepositoryInsert<InsertRequest>
KeyedViewQueryable<T, K>
Line
Describes PostgreSQL's geometric type: line.
LineSegment
Describes PostgreSQL's geometric type: lseg.
ListTransformer
LSN
LSN is a PostgreSQL Log Sequence Number.
Model Models
Used to annotate a class as a database model
ModelMeta Models
Metadata for the generated classes in order to use serialization for these classes.
ModelRepository
ModelRepositoryDelete<DeleteRequest>
ModelRepositoryInsert<InsertRequest>
ModelRepositoryUpdate<UpdateRequest>
Notification
Represents a notification from the Postgresql server.
Path
Describes PostgreSQL's geometric type: path.
Point
Describes PostgreSQL's geometric type: point.
Polygon
Describes PostgreSQL's geometric type: polygon.
Pool<L>
A connection pool that may select endpoints based on the requested locality L of the data.
PoolSettings
PrimaryKey Models
Used to annotate a field as the primary key of the table.
Query<T, U> Queries & Actions
Extend this to define a custom query.
QueryParams Repositories
Range<T>
Result
ResultRow
ResultSchema
ResultSchemaColumn
ResultStream
ResultStreamSubscription
Retry<R>
The settings that control the retry of SessionExecutor.run and SessionExecutor.runTx methods.
Session
SessionExecutor
SessionSettings
Sql
A description of a SQL query as interpreted by this package.
Statement
TableIndex Models
Used to define indexes on a table
TextEncoder
Time
Describes PostgreSQL's time without time zone type.
TransactionSettings
The characteristics of the current transaction.
TransformedIn Models Views
Applies the transformer on the annotated field in the given view.
Transformer Models
TsQuery
The tsquery type represents a search query for text search.
TsVector
The tsvector data type stores a list of TsWords, lexemes with optional integer positions and weights.
TsWord
A normalized word (lexeme), alongside with the positional information.
TsWordPos
A position normally indicates the source word's location in the document. Positional information can be used for proximity ranking. Position values can range from 1 to 16383; larger numbers are silently set to 16383. Duplicate positions for the same lexeme are discarded.
TxSession
A Session with transaction-related helper method(s).
Type<T extends Object>
Supported data types.
TypeConverter<T> Models
Extend this to define a custom type converter.
TypedMap
TypedValue<T extends Object>
TypeRegistry
UndecodedBytes
Describes a generic bytes string value..
UseConverter Models
Specify a converter to be used for the annotated field.
ViewedIn Models Views
Modified the annotated field in the given view.
ViewQuery<Result>
ViewQueryable<T>

Enums

AccessMode
The transaction access mode determines whether the transaction is read/write or read-only.
Bound
Describes PostgreSQL range bound state
DeferrableMode
The deferrable mode of the transaction.
IndexAlgorithm Models
The algorithm for an index.
IsolationLevel
The isolation level of a transaction determines what data the transaction can see when other transactions are running concurrently.
QueryMode
Options for the Query Execution Mode
QuoteStyle
ReplicationMode
Streaming Replication Protocol Options
Severity
The severity level of a PgException.
SslMode
TsWeight
The weight of the TsWord.

Mixins

KeyedRepositoryInsertMixin<InsertRequest>
RepositoryDeleteMixin<DeleteRequest>
RepositoryInsertMixin<InsertRequest>
RepositoryUpdateMixin<UpdateRequest>

Functions

typeOf<T>() Type

Typedefs

Decoder<T> = T Function(dynamic v)
EndpointSelector<L> = FutureOr<EndpointSelection> Function(EndpointSelectorContext<L> context)
Runnable<T> = FutureOr<T> Function()

Exceptions / Errors

BadCertificateException
Exception thrown when server certificate validate failed.
ConverterException
PgException
Exception thrown by the package (client or server side).
ServerException
Exception thrown by the server.