Package com.io7m.cedarbridge.runtime.api
Class CBAbstractSerializerFactory<T extends CBSerializableType>
java.lang.Object
com.io7m.cedarbridge.runtime.api.CBAbstractSerializerFactory<T>
- Type Parameters:
T- The type of serialized values
- All Implemented Interfaces:
CBSerializerFactoryType<T>
- Direct Known Subclasses:
CBByteArraySerializers,CBFloat16Serializers,CBFloat32Serializers,CBFloat64Serializers,CBIntegerSigned16Serializers,CBIntegerSigned32Serializers,CBIntegerSigned64Serializers,CBIntegerSigned8Serializers,CBIntegerUnsigned16Serializers,CBIntegerUnsigned32Serializers,CBIntegerUnsigned64Serializers,CBIntegerUnsigned8Serializers,CBListSerializers,CBMapEntrySerializers,CBMapSerializers,CBOptionSerializers,CBStringSerializers
@ProviderType
public abstract class CBAbstractSerializerFactory<T extends CBSerializableType>
extends Object
implements CBSerializerFactoryType<T>
A factory of serializers.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCBAbstractSerializerFactory(String inPackageName, String inTypeName) -
Method Summary
Modifier and TypeMethodDescriptionfinal CBSerializerType<T>create(CBSerializerDirectoryType directory, List<CBTypeArgument> arguments) Create a new serializer, instantiating it with the given type arguments.protected abstract CBSerializerType<T>createActual(CBSerializerDirectoryType directory, List<CBTypeArgument> arguments) final CBQualifiedTypeNametypeName()Declare the type name of the type.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.io7m.cedarbridge.runtime.api.CBSerializerFactoryType
typeParameters
-
Constructor Details
-
CBAbstractSerializerFactory
-
-
Method Details
-
create
public final CBSerializerType<T> create(CBSerializerDirectoryType directory, List<CBTypeArgument> arguments) Description copied from interface:CBSerializerFactoryTypeCreate a new serializer, instantiating it with the given type arguments.- Specified by:
createin interfaceCBSerializerFactoryType<T extends CBSerializableType>- Parameters:
directory- The directory of available serializersarguments- The arguments- Returns:
- A new serializer
-
typeName
Description copied from interface:CBSerializerFactoryTypeDeclare the type name of the type. This must be a valid Cedarbridge qualified type name, and is the name used to refer to the type from other Cedarbridge type declarations.- Specified by:
typeNamein interfaceCBSerializerFactoryType<T extends CBSerializableType>- Returns:
- The type name of the type
-
createActual
protected abstract CBSerializerType<T> createActual(CBSerializerDirectoryType directory, List<CBTypeArgument> arguments)
-