Expand description
This crate deals with having to store potentially large amounts of information in a human readable and editable format (short json files). Databases are excluded because of the human readable part, and so are excruciatingly long files.
In order to manage that information inside a program we propose the Table<T>
structure. It can manage information of type <T>
that can be serialized and
deserialized by serde. For that purpose the traits and
derive macros are reexported. (So that there is no need to explicitly depend
on serde to use this crate)
Structs§
- Table
- Main structure of this crate. Holds the information from the table. It reads all at once, so huge tables will be slow and memory intensive
- Table
Builder - A builder that creates new tables and opens existing tables.
The default
TableBuilder
configures the table to ignore write back automatically, ignore non json files, and report errors when deserialization cant be completed - Table
Element - The structure that’s stored in the internal
hash_map
. It contains a file and the content of the file. You can only access the information and not the file - Table
Metadata - A compilation of all the policies of a Table
Enums§
- Content
Policy - Whether to give an error when a file can’t be deserialized to the intended structure
- Extension
Policy - How to treat the file extensions
- RWPolicy
- Weather you can write or not with a table.
- Table
Builder Error - Error trying to create a new table
- Table
Error - Errors during the management of a table
- Write
Type - Whether the write operation is performed on drop or not
Traits§
- Deserialize
- A data structure that can be deserialized from any data format supported by Serde.
- Serialize
- A data structure that can be serialized into any data format supported by Serde.