A Document is a single piece of stored data. Each document is stored within a
Collection, and has a unique ID within that Collection. There are two document types:
View::map() function takes a
BorrowedDocument, but nearly every other API utilizes
When a document is updated, BonsaiDb will check that the revision information passed matches the currently stored information. If not, a conflict error will be returned. This simple check ensures that if two writers try to update the document simultaneously, one will succeed and the other will receive an error.
BonsaiDb provides the
SerializedCollection trait, which allows automatic serialization and deserialization in many sitautions. When using
SerializedCollection::document_contents() function, the document is serialized and deserialized by the format returned from
CollectionDocument<T> type provides convenience methods of interacting with serializable documents.
BonsaiDb provides a convenience trait for Serde-compatible data types:
DefaultSerialization. This empty trait can be implemented on any collection to have BonsaiDb provide its preferred serialization format, Pot.
If you would prefer to manually manage the data stored inside of a Document, you can directly manage the
contents field. BonsaiDb will not interact with the
contents of a Document. Only code that you write will parse or update the stored data.