Module vstorage::base

source ·
Expand description

Traits and common implementations shared by different storages.

When writing code that should deal with different storage implementations, these traits should be used as input / outputs, rather than concrete per-store types.

See Storage as an entry point to this module.


  • A collection may, for example, be an address book or a calendar.
  • Immutable wrapper around a VCALENDAR or VCARD.
  • A reference to an Item inside a collection.
  • Immutable wrapper around a VCARD.



  • Implementation-specific storage definition.
  • A type of item that is contained in a Storage.
  • A storage is the highest level abstraction where items can be stored. It can be a remote CalDav account, a local filesystem, etc.