[][src]Module assembly::fdb::core

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.

Structs

Bucket

A container of rows with the same hash value

Column

Name and default type for one field in each row

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

Field

A database single field

ValueType

Value datatypes used in the database