Header

We provide a hierarchy of errors which allow to clearly identify what went wrong:
  • FLError
    • FLSerializationError
      • FLNotSerializable
      • FLObjectNotFound
      • FLObsolete
      • FLNotInstalledMethod
    • FLMaterializationError
      • FLBadSignature
      • FLBadVersion
      • FLClassNotFound
      • FLGlobalNotFound
      • FLMethodChanged
      • FLMethodNotFound
As most classes of Fuel, they have class comments that give an idea their meanings:
FLError
I represent an error produced during Fuel operation.
FLSerializationError
I represent an error happened during serialization.
FLNotSerializable
I represent an error which may happen while tracing in the graph an object that is forbidden of being serialized.
FLObjectNotFound
I represent an error which may happen during serialization, when trying to encode on the stream a reference to an object that should be encoded before, but it is not. This usually happens when the graph changes during serialization. Another possible cause is a bug in the analysis step of serialization.
FLObsolete
I am an error produced during serialization, signaled when trying to serialize an obsolete class as global. It is a prevention, because such class is lekely to be absent during materialization.
FLNotInstalledMethod
By default, Fuel serializes methods as globals. For more details see this page. I am an error produced during serialization, signaled when trying to serialize a method that is not installed in any class. It is a prevention, because such method is lekely to be absent during materialization. This case may happen when serializing closures that hold references to not installed methods. If the user wants to fully serialize methods, then it needs to install the package FuelMetalevel (see this page for explanations) and create the serializer by using the method #newFull. Example:
 FLSerializer newFull serialize: anObject toFileNamed: 'example'.
FLMaterializationError
I represent an error happened during materialization.
FLBadSignature
I represent an error produced during materialization when the serialized signature doesn't match the materializer's signature (accessible via FLMaterializer>>signature). A signature is a byte prefix that should prefix a well-serialized stream.
FLBadVersion
I represent an error produced during materialization when the serialized version doesn't match the materializer's version (accessible via FLMaterializer>>version). A version is encoded in 16 bits and is encoded heading the serialized stream, after the signature.
FLClassNotFound
I represent an error produced during materialization when a serialized class or trait name doesn't exist.
FLGlobalNotFound
I represent an error produced during materialization when a serialized global name doesn't exist (at Smalltalk globals).
FLMethodChanged
I represent an error produced during materialization when is detected a change in the bytecodes of a method serialized as global. This error was born when testing the materialization of a BlockClosure defined in a method that changed. The test produced a VM crash.
FLMethodNotFound
I represent an error produced during materialization when a serialized method in a class or trait name doesn't exist (at Smalltalk globals).

We provide a hierarchy of errors which allow to clearly identify what went wrong:

  • FLError
    • FLSerializationError
      • FLNotSerializable
      • FLObjectNotFound
      • FLObsolete
      • FLNotInstalledMethod
    • FLMaterializationError
      • FLBadSignature
      • FLBadVersion
      • FLClassNotFound
      • FLGlobalNotFound
      • FLMethodChanged
      • FLMethodNotFound

As most classes of Fuel, they have class comments that give an idea their meanings:

FLError
I represent an error produced during Fuel operation.
FLSerializationError
I represent an error happened during serialization.
FLNotSerializable
I represent an error which may happen while tracing in the graph an object that is forbidden of being serialized.
FLObjectNotFound
I represent an error which may happen during serialization, when trying to encode on the stream a reference to an object that should be encoded before, but it is not. This usually happens when the graph changes during serialization. Another possible cause is a bug in the analysis step of serialization.
FLObsolete
I am an error produced during serialization, signaled when trying to serialize an obsolete class as global. It is a prevention, because such class is lekely to be absent during materialization.
FLNotInstalledMethod
By default, Fuel serializes methods as globals. For more details see this page. I am an error produced during serialization, signaled when trying to serialize a method that is not installed in any class. It is a prevention, because such method is lekely to be absent during materialization. This case may happen when serializing closures that hold references to not installed methods. If the user wants to fully serialize methods, then it needs to install the package FuelMetalevel (see this page for explanations) and create the serializer by using the method #newFull. Example:
 FLSerializer newFull serialize: anObject toFileNamed: 'example'.
FLMaterializationError
I represent an error happened during materialization.
FLBadSignature
I represent an error produced during materialization when the serialized signature doesn't match the materializer's signature (accessible via FLMaterializer>>signature). A signature is a byte prefix that should prefix a well-serialized stream.
FLBadVersion
I represent an error produced during materialization when the serialized version doesn't match the materializer's version (accessible via FLMaterializer>>version). A version is encoded in 16 bits and is encoded heading the serialized stream, after the signature.
FLClassNotFound
I represent an error produced during materialization when a serialized class or trait name doesn't exist.
FLGlobalNotFound
I represent an error produced during materialization when a serialized global name doesn't exist (at Smalltalk globals).
FLMethodChanged
I represent an error produced during materialization when is detected a change in the bytecodes of a method serialized as global. This error was born when testing the materialization of a BlockClosure defined in a method that changed. The test produced a VM crash.
FLMethodNotFound
I represent an error produced during materialization when a serialized method in a class or trait name doesn't exist (at Smalltalk globals).