facet const class sys::Serializable

sys::Obj
  sys::Serializable : sys::Facet

@FacetMeta { inherited=true }
@Serializable

Serializable is a facet used to annotate types which can be serialized. Objects are serialized via sys::OutStream.writeObj and deserialized via sys::InStream.readObj.

See the Serialization Doc for details.

collection

const Bool collection := false

Collections are serializabled with a collection of child objects using the following rules where Item is the item type:

  • Provide an add(Item) method to add child items during readObj
  • Provide an each(|Item| f) method to iterate children item during writeObj
simple

const Bool simple := false

Simples are serialized atomically via a customized string representation using the following rules:

  • Override Obj.toStr to return a suitable string representation of the object.
  • Must declare a static method called fromStr which takes one Str parameter and returns an instance of the declaring type. The fromStr method may contain additional parameters if they declare defaults.