Marker interface for all Jetson object (de)serialization components.
This interface has no methods and exists solely to provide a common supertype for Jetson’s serialization infrastructure. Implementing ObjectSerializable indicates that a class participates in Jetson’s serialization pipeline and may be discovered, registered, or applied by:
- ObjectSerializer
- ObjectDeserializer
- Converter adapters
- SerializationContext / DeserializationContext
- Reflection-based or generated serializer lookup
Purpose
Serializable is used strictly as a semantic marker:
- It unifies all Jetson serialization components under a shared type
- It assists the framework in identifying serializable/deserializable handlers during runtime or code generation
- It enables annotation-based discovery and automatic registration
Notes
- This interface introduces zero runtime overhead
- It does not imply that a class is directly serializable as a user-facing model—only that it participates in Jetson’s internal serialization system
- Domain model classes may choose to implement this marker, but it is primarily intended for framework-level components
- Implementers
- DateTimeSerializationAdapter
- DurationSerializationAdapter
- JsonSerializationAdapter
- LocalDateSerializationAdapter
- LocalDateTimeSerializationAdapter
- ObjectDeserializer
- ObjectSerializer
- UriSerializationAdapter
- UrlSerializationAdapter
- XmlSerializationAdapter
- YamlSerializationAdapter
- ZonedDateTimeSerializationAdapter
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited