dogs_core
library
Classes
APISchemaObjectMetaVisitor
CascadeItemType <T >
Defines the item type of the implementing class.
The getItemType method in lyell_gen will consider T
as the actual
item type and treat it as if it is the type argument of a List ,
Future or a similar generic core types.
ClassValidator
Class level validator for annotations of ClassValidator s.
ConverterSupplyingVisitor
DateTimeConverter
DogConverter for DateTime instances which encodes the timestamp as a
Iso8601 string.
DefaultIterableConverter
DefaultListConverter
DefaultMapConverter
DefaultNativeCodec
DefaultSetConverter
DefaultStructureConverter <T >
DelegateQualifiedTypeTree <T , B >
DogBool
DogConverter <T >
DogDouble
DogEngine
Registry and interface for DogConverter s, DogStructure s and Copyable
s.
DogGraphValue
Graph node of the serialized DOG graph.
DogInt
DogJsonSerializer
DogList
DogMap
DogNative
DogNativeCodec
DogNull
DogSchema
DogSerializer
DogString
DogStructure <T >
Defines the structure of class T
and provides methods for instance creation
and data lookups. Also contains runtime instances of RetainedAnnotation s
used in T
.
DogStructureConverterImpl <T >
DogStructureField
DogStructureProxy
Method proxy provider for DogStructure s.
A structure proxy must provided instantiation/"activation" for the object
and property accessor methods for all fields defined by the structure.
A get-all method for faster field value retrieval must also be provided.
DogVisitor <T >
DurationConverter
DogConverter for Duration instances which encode a duration as a
Iso8601 string.
FieldValidator
Property level validator for annotations of DogStructureField s.
GeneratedEnumDogConverter <T extends Enum >
GraphSerializerMode <T >
ItemAssociatedTypeToken <SOURCE , ITEM >
Double type capture token for associated item types.
Mainly useful for serialization or type mapping.
IterableTreeBaseConverterFactory
IterableTreeNativeOperation
LinkSerializer
ListTreeBaseConverter
ListTreeBaseConverterFactory
MapTreeBaseConverter
MapTreeBaseConverterFactory
MapTreeBaseNativeOperation
MemoryDogStructureProxy
Simple class-less implementation of DogStructureProxy , primarily for tests.
NativeRetentionConverter <T >
NativeSerializerMode <T >
NullExclusionVisitor
ObjectFactoryStructureProxy <T >
DogStructureProxy implementation for creating universal object factories.
OperationMode <T >
OperationModeCacheEntry <T extends OperationMode >
OperationModeRegistry
Optional <T >
Port of Java's Optional (https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html )
OptionalTreeBaseConverter
OptionalTreeBaseConverterFactory
OptionalTreeBaseNativeOperation
PolymorphicConverter
Polymorphic converter for simple polymorphic datastructures.
Currently only supports a maximum depth of 1.
PropertyName
Overrides the name that will be used by the GeneratedDogConverter
for this
specific property. By default, the field name will be used.
PropertySerializer
Overrides the serializer that will be used by the GeneratedDogConverter
for this specific property. By default, the field will be serialized using
the convert associated with its type.
QualifiedTerminal <T >
QualifiedTypeTree <T , B >
QualifiedTypeTreeN <T , B >
RegistrationHook
RetainedAnnotation
Marker annotation to make an annotation accessible at runtime using
RetainedAnnotationHolder implementations.
RetainedAnnotationContainer
Standard implementation of const RetainedAnnotationHolder .
RetainedAnnotationHolder
Abstract container of RetainedAnnotation s.
Serializable
SetTreeBaseConverter
SetTreeBaseConverterFactory
StringKeyedMapVisitor
StructureGraphSerialization <T >
StructureHarbinger <T >
StructureMetadata
StructureNativeSerialization <T >
StructureNode
StructureOperationModeFactory <MODE_TYPE extends OperationMode >
StructureValidation <T >
TokenTypeTrees
TreeBaseConverterFactory
TypeCapture <T >
Abstract base class for using a generic type capture.
TypeContainer0
TypeContainer1 <A >
TypeContainer2 <A , B >
TypeContainer3 <A , B , C >
TypeContainer4 <A , B , C , D >
TypeContainer5 <A , B , C , D , E >
TypeContainer6 <A , B , C , D , E , F >
TypeContainer7 <A , B , C , D , E , F , G >
TypeContainers
TypeToken <T >
Default implementation for a TypeCapture of type T
.
TypeTree <BASE >
TypeTree0 <T >
TypeTree1 <BASE , ITEM >
TypeTree2 <BASE , ITEM0 , ITEM1 >
TypeTree3 <BASE , ITEM0 , ITEM1 , ITEM2 >
TypeTreeN <BASE >
Uint8ListConverter
DogConverter for Uint8List instances which encodes the binary data
as a base64 string using base64Encode .
UriConverter
DogConverter for Uri instances which encodes the uri into a string.
ValidationMode <T >
Constants
beanIgnore
→ const _BeanIgnore
deepEquality
→ const DeepCollectionEquality
Static DeepCollectionEquality
instance used by the dog library.
linkSerializer
→ const LinkSerializer
Manually marks a custom dog converter implementation for linking.
The dogs_generator will then include an instance of this converter.
polymorphic
→ const _Polymorphic
Marks a property as polymorphic, meaning its value's type can vary.
serializable
→ const Serializable
Marks a class or enum as serializable.
The dogs_generator will then generate a DefaultStructureConverter which
also implements Copyable
and Validatable
. The generator will also
generate an implementation of Builder
for the given type with the suffix
'Builder' appended to the original class name.
Annotated types must match following conditions:
Functions
adjustIterable <T > (dynamic value , IterableKind kind )
→ dynamic
Converts a value
to the given IterableKind . If the value is a Iterable
implementation, it will converted to the desired IterableKind . Trying to
convert singular values to a iterable will result in an exception.
compareTypeHashcodes (Type a , Type b )
→ int
fromJson <T > (String json )
→ T
Decodes this json
to an T
instance, using the DogConverter associated with T
.
fromNative <T > (dynamic native )
→ T
Converts an a native value to an T
instance, using the DogConverter associated with T
.
Input must follow the default DogNativeCodec implementation, DefaultNativeCodec .
project <T > (Object value , [Object ? a , Object ? b , Object ? c ])
→ T
Creates a projection resulting in an instance of T
. All input fields are dynamic and contain following:
registerStructureOperationFactory (StructureOperationModeFactory <OperationMode > factory )
→ void
toJson <T > (T value )
→ String
Encodes this value
to json, using the DogConverter associated with T
.
toNative <T > (T value )
→ dynamic
Converts an T
instance to a native value, using the DogConverter associated with T
.
Output follows the default DogNativeCodec implementation, DefaultNativeCodec .