An instance of the upickle API.
A upickle.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.
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
Exceptions that can be thrown by upickle; placed in the same file as JSON parser due to circular dependencies between exception types and JSON types
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 upickle
package to form the public API
Stupid hacks to work around scalac not forwarding macro type params properly
A very small, very simple JSON AST that uPickle uses as part of its serialization process.
A very small, very simple JSON AST that uPickle uses as part of its serialization process. A common standard between the Jawn AST (which we don't use so we don't pull in the bulk of Spire) and the Javascript JSON AST.
Implementation of macros used by uPickle to serialize and deserialize case classes automatically.
Implementation of macros used by uPickle 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 upickle
An instance of the upickle API that follows the old serialization for tagged instances of sealed traits.
An instance of the upickle API. There's a default instance at
upickle.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.