BDLContext
implementation of
BaggageContext
.See: Description
Interface | Description |
---|---|
Bag |
The BDL compiler generates classes that implement this interface, Bag.
|
BaggageHandler<T extends Bag> |
Provides serialization, deserialization, branch, and merge logic for a bag type.
|
Brancher<T> | |
Joiner<T> | |
Parser<T> | |
Parser.ElementParser<T> | |
Serializer<T> | |
Serializer.ElementSerializer<T> |
A serializer that only serializes data elements and not bags
|
SpecialTypes.Counter |
A P-Counter CRDT, corresponding to the
counter BDL type |
Struct |
BDL supports structs, which are simply several data types combined into a single binary blob and
encoded as one atom.
|
Struct.StructHandler<S> | |
Struct.StructReader<S> | |
Struct.StructSizer<S> | |
Struct.StructWriter<S> |
Class | Description |
---|---|
BDLUtils | |
Branchers |
Branch logic for primitive BDL types
Branchers.noop() , sets, and maps. |
Cast |
Converts between
ByteBuffer and Object representations for primitive BDL types. |
CounterImpl |
Implements the special
SpecialTypes.Counter type based on the P-Counter CRDT; the counter BDL type uses this. |
CounterImpl.Handler |
Provides branch, merge, and serialization logic for
CounterImpl |
Joiners |
Merge logic for primitive BDL types
Joiners.first() , sets, and maps. |
Parsers |
Parsers for built-in types used by compiled baggage buffers classes
|
ReaderHelpers |
Helper methods used by compiled baggagebuffers classes
|
Serializers |
Serializers for built-in types used by compiled baggage buffers classes
|
SpecialTypes |
Defines the interfaces for special BDL types such as
SpecialTypes.Counter |
StructHelpers |
Helpers to read and write values from structs
|
WriterHelpers |
Helper methods used by compiled baggagebuffers classes
|
Library classes used by BDL-generated objects, including the BDLContext
implementation of
BaggageContext
.
The two main interfaces used by BDL are Bag
and BaggageHandler
. Bag
s are nodes in the nested
data structure tree, while BaggageHandler
s provide branch, join, and serialization logic for Bag
s.
Bag
and BaggageHandler
are conceptually similar to BaggageContext
and BaggageProvider
, except applying to nodes within a BDLContext
.
The BDL library classes also include CRDT-like data structures that the BDL supports, such as counters, implemented
by CounterImpl
.