- All Implemented Interfaces:
Serializable,Cloneable,Map<String,,Object> org.refcodes.mixin.AliasAccessor,org.refcodes.mixin.ChildrenAccessor<org.refcodes.schema.Schema[]>,org.refcodes.mixin.CommentAccessor,org.refcodes.mixin.DescriptionAccessor,org.refcodes.mixin.LengthAccessor,org.refcodes.mixin.TypeAccessor,org.refcodes.mixin.ValueAccessor<Sequence>
public class SerialSchema
extends org.refcodes.schema.Schema
implements org.refcodes.mixin.LengthAccessor, org.refcodes.mixin.DescriptionAccessor, org.refcodes.mixin.ValueAccessor<Sequence>, org.refcodes.mixin.CommentAccessor
The purpose of a
SerialSchema is to automatically outline and
generate documentation of serial data (structures).- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K extends Object,V extends Object>, AbstractMap.SimpleImmutableEntry<K extends Object, V extends Object> Nested classes/interfaces inherited from interface org.refcodes.mixin.AliasAccessor
org.refcodes.mixin.AliasAccessor.AliasBuilder<B extends org.refcodes.mixin.AliasAccessor.AliasBuilder<B>>, org.refcodes.mixin.AliasAccessor.AliasMutator, org.refcodes.mixin.AliasAccessor.AliasPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.ChildrenAccessor
org.refcodes.mixin.ChildrenAccessor.ChildrenBuilder<T extends Object,B extends org.refcodes.mixin.ChildrenAccessor.ChildrenBuilder<T, B>>, org.refcodes.mixin.ChildrenAccessor.ChildrenMutator<T extends Object>, org.refcodes.mixin.ChildrenAccessor.ChildrenProperty<T extends Object> Nested classes/interfaces inherited from interface org.refcodes.mixin.CommentAccessor
org.refcodes.mixin.CommentAccessor.CommentBuilder<B extends org.refcodes.mixin.CommentAccessor.CommentBuilder<B>>, org.refcodes.mixin.CommentAccessor.CommentMutator, org.refcodes.mixin.CommentAccessor.CommentPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.DescriptionAccessor
org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B extends org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B>>, org.refcodes.mixin.DescriptionAccessor.DescriptionMutator, org.refcodes.mixin.DescriptionAccessor.DescriptionPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.LengthAccessor
org.refcodes.mixin.LengthAccessor.LengthBuilder<B extends org.refcodes.mixin.LengthAccessor.LengthBuilder<B>>, org.refcodes.mixin.LengthAccessor.LengthMutator, org.refcodes.mixin.LengthAccessor.LengthPropertyNested classes/interfaces inherited from interface java.util.Map
Map.Entry<K extends Object,V extends Object> Nested classes/interfaces inherited from interface org.refcodes.mixin.TypeAccessor
org.refcodes.mixin.TypeAccessor.TypeBuilder<T extends Object,B extends org.refcodes.mixin.TypeAccessor.TypeBuilder<T, B>>, org.refcodes.mixin.TypeAccessor.TypeMutator<T extends Object>, org.refcodes.mixin.TypeAccessor.TypeProperty<T extends Object> Nested classes/interfaces inherited from interface org.refcodes.mixin.ValueAccessor
org.refcodes.mixin.ValueAccessor.ValueBuilder<V extends Object,B extends org.refcodes.mixin.ValueAccessor.ValueBuilder<V, B>>, org.refcodes.mixin.ValueAccessor.ValueMutator<V extends Object>, org.refcodes.mixin.ValueAccessor.ValueProperty<V extends Object> -
Field Summary
FieldsFields inherited from class org.refcodes.schema.Schema
ALIAS, COMMENT, DESCRIPTION, EXCEPTION, KEY, TYPE, VALUE, VERBOSE -
Constructor Summary
ConstructorsConstructorDescriptionSerialSchema(Class<?> aType, String aDescription, org.refcodes.schema.Schema... aChildren) SerialSchema(Class<?> aType, Sequence aValue, int aLength, String aDescription, org.refcodes.schema.Schema... aChildren) Constructs aSerialSchemawith the provided arguments.SerialSchema(Class<?> aType, Sequence aValue, String aVerbose, String aDescription, int aLength) Constructs aSerialSchemawith the provided arguments.SerialSchema(String aAlias, Class<?> aType, String aDescription, int aLength) SerialSchema(String aAlias, Class<?> aType, Sequence aValue, int aLength, String aVerbose, String aDescription, org.refcodes.schema.Schema... aChildren) Constructs aSerialSchemawith the provided arguments.SerialSchema(String aAlias, Class<?> aType, Sequence aValue, int aLength, String aDescription, org.refcodes.schema.Schema... aChildren) Constructs aSerialSchemawith the provided arguments. -
Method Summary
Modifier and TypeMethodDescriptionRetrieves the verbose representation of the value.intgetValue()Methods inherited from class org.refcodes.schema.Schema
getAlias, getChildren, getDescription, getType, toString, visitMethods inherited from class java.util.HashMap
clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, forEach, get, getOrDefault, isEmpty, keySet, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, valuesMethods inherited from class java.util.AbstractMap
equals, hashCodeMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.refcodes.mixin.DescriptionAccessor
getDescriptionMethods inherited from interface org.refcodes.mixin.ValueAccessor
getValueOr
-
Field Details
-
LENGTH
- See Also:
-
-
Constructor Details
-
SerialSchema
-
SerialSchema
-
SerialSchema
public SerialSchema(Class<?> aType, Sequence aValue, String aVerbose, String aDescription, int aLength) Constructs aSerialSchemawith the provided arguments.- Parameters:
aType- The type providing the thisSerialSchemainstance.aValue- The content of theSerialSchemaproviding type.aVerbose- The verbose representation of the value.aDescription- The description of the schema described by theSerialSchemaproviding type.aLength- The length of theSerialSchemaproviding type.
-
SerialSchema
public SerialSchema(Class<?> aType, Sequence aValue, int aLength, String aDescription, org.refcodes.schema.Schema... aChildren) Constructs aSerialSchemawith the provided arguments.- Parameters:
aType- The type providing the thisSerialSchemainstance.aValue- The content of theSerialSchemaproviding type.aLength- The length of theSerialSchemaproviding type.aDescription- The description of the schema described by theSerialSchemaproviding type.aChildren- The children'sSerialSchemadescriptions representing part of theSerialSchemaproviding type.
-
SerialSchema
public SerialSchema(String aAlias, Class<?> aType, Sequence aValue, int aLength, String aDescription, org.refcodes.schema.Schema... aChildren) Constructs aSerialSchemawith the provided arguments.- Parameters:
aAlias- The alias (name) of the schema described by theSerialSchemaproviding type.aType- The type providing the thisSerialSchemainstance.aValue- The content of theSerialSchemaproviding type.aLength- The length of theSerialSchemaproviding type.aDescription- The description of the schema described by theSerialSchemaproviding type.aChildren- The children'sSerialSchemadescriptions representing part of theSerialSchemaproviding type.
-
SerialSchema
public SerialSchema(String aAlias, Class<?> aType, Sequence aValue, int aLength, String aVerbose, String aDescription, org.refcodes.schema.Schema... aChildren) Constructs aSerialSchemawith the provided arguments.- Parameters:
aAlias- The alias (name) of the schema described by theSerialSchemaproviding type.aType- The type providing the thisSerialSchemainstance.aValue- The content of theSerialSchemaproviding type.aLength- The length of theSerialSchemaproviding type.aVerbose- The verbose representation of the value.aDescription- The description of the schema described by theSerialSchemaproviding type.aChildren- The children'sSerialSchemadescriptions representing part of theSerialSchemaproviding type.
-
-
Method Details
-
getLength
public int getLength()- Specified by:
getLengthin interfaceorg.refcodes.mixin.LengthAccessor
-
getValue
- Specified by:
getValuein interfaceorg.refcodes.mixin.ValueAccessor<Sequence>
-
getComment
Retrieves the verbose representation of the value.- Specified by:
getCommentin interfaceorg.refcodes.mixin.CommentAccessor- Returns:
- The human readable value representation.
-