Module core

Source
Expand description

§The data structures for representing the file/database.

An FDB file is layed out as a hash map. The top level is a list of tables, lexically ordered by their name (all uppercase names before all lowercase ones).

Each table consists of an array of Buckets, where each bucket Corresponds to one hash value of the primary column.

Each bucket consists of a list of rows. These rows may be sorted in ascending order of primary keys, but that is not fully verified.

Each row contains a vector of fields, with a data type and respective data.

Each Table has a list of columns with the names and default data Types corresponding to the layout of each row.

Modules§

iter
Implementations of IntoIterator for the core model
loader
General-Purpose file loader

Structs§

Bucket
A container of rows with the same hash value
Column
Name and default type for one field in each row
MemContext
The context for mem::Field
OwnedContext
The Value context for core::Field
Row
A sequence of fields
Schema
An ordered map of tables
Table
A list of buckets and thus collection of rows with a name
TableData
An array of buckets, and a collection of rows
TableDef
A list of columns with types and a name

Enums§

Value
A single field value in the database
ValueType
Value datatypes used in the database

Traits§

Context
Type-Parameters to Value
ValueMapperMut
Trait for mapping value from one context to another

Type Aliases§

Field
An owned field value