DVRecordScope class final

A versioned table with optional history and soft delete.

Every write carries the version it read and is applied with a conditional update, so a write against a row that has moved is refused rather than silently replacing the change that moved it. When history is enabled the entry is written alongside the change, and a change whose entry cannot be written is undone -- a change log that can miss entries is not a record of anything. Inside DV.transaction every write registers its own inverse, so a failure later in the unit of work takes the write and its entry with it. The part of a table one record table may see: the rows whose column holds value, such as a tenant-scoped model's dv_tenant.

Every read, write, delete and history lookup is matched on it, and a write that names a different value is refused. Keys are then unique per scope rather than per table, which is what lets two tenants each have an order o1 without either one reading, updating or deleting the other's.

Constructors

DVRecordScope(String column, Object? value)
const

Properties

column → String
final
hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
value → Object?
Bound as a parameter, and compared with =: a null value matches no row, as SQL has it, rather than every row with no tenant.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

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