Module traits

Module traits 

Source

Traits§

BorrowPrimaryKey
Something whose primary key can be borrowed as a distinct type.
DecryptData
This trait is intended to provide a convenient way to decrypt data.
DecryptWithExplicitEncryptionKey
This trait uses an explicitly-set decryption key to decrypt some data.
Decryptable
Helper trait for restoring from an encrypted form of this struct.
Decrypting
This trait restores to a plaintext form of this struct, where all sensitive fields have been decrypted.
EncryptData
This trait is intended to provide a convenient way to encrypt data.
EncryptWithExplicitEncryptionKey
This trait uses the explicitly-set encryption key to encrypt some data.
Encrypting
This trait produces an encrypted form of this struct, where all sensitive fields have been encrypted using the EncryptData helper.
EncryptionKey
This trait is a hack enabling us to encrypt types for which we don’t use the primary key in the AAD.
Entity
Something which can be stored in our database.
EntityBase
A supertrait that all entities must implement. This handles multiplexing over the two different database backends.
EntityDatabaseMutation
Extend an Entity with db-mutating operations which can be performed when provided with a transaction.
EntityDeleteBorrowed
Extend an Entity with db-mutating operations which can be performed when provided with a transaction.
EntityGetBorrowed
FetchFromDatabase
Interface to fetch from the database either from the connection directly or through a transaction.
KeyType
A Key Type is a type which can act as a key for a database.
OwnedKeyType
An owned key type can be converted to from arbitrary bytes.
PrimaryKey
Something which has a distinct primary key which can uniquely identify it.
UniqueEntity
A unique entity can appear either 0 or 1 times in the database.
UniqueEntityExt
Unique entities get some convenience methods implemented automatically.
UniqueEntityImplementationHelper
Unique entity implementation/migration helper.