An instance of the bsonpickle API.
A bsonppickle.Api
that follows the default sealed-trait-instance-tagging
behavior of using an attribute, but allow you to control what the name
of the attribute is.
A bsonppickle.Api
that works like AttributeTagged
, but uses a simple
string representation when there are no other fields to serialize rather
than a BSONDocument
with only one field named tagName
.
Auto-generated picklers and unpicklers, used for creating the 22 versions of tuple-picklers and case-class picklers
Typeclasses to allow read/writing of all the common data-types and data-structures in the standard library
Basic functionality to be able to read and write objects.
Basic functionality to be able to read and write objects. Kept as a trait so
other internal files can use it, while also mixing it into the bsonpickle
package to form the public API
Stupid hacks to work around scalac not forwarding macro type params properly
Implementation of macros used by bsonpickle to serialize and deserialize case classes automatically.
Implementation of macros used by bsonpickle to serialize and deserialize case classes automatically. You probably shouldn't need to use these directly, since they are called implicitly when trying to read/write types you don't have a Reader/Writer in scope for.
The default way of accessing bsonpickle
An instance of the bsonpickle API. There's a default instance at
bsonpickle.default
, but you can also implement it yourself to customize its behavior. Override theannotate
methods to control how a sealed trait instance is tagged during reading and writing.