State isa;
private int asi;
instance (id) alloc;
isa
will have been initialized to their default
value.
boolean classp;
TRUE
, since we're a class object.
boolean coding-permanent-object-p;
YES
. This should not be changed; this method is used in
situations where it is not known whether the object is a class or not.
In other situations, where it is known to be a class, this method is
not invoked as it is known to return YES
.
boolean dump_simple_p;
YES
.
class (id) kind;
isa
.
ByteString name;
int (n) num_instances;
Unit (unit) unit post unit != nil;
instance (id) new;
OutputStream write OutputStream s;
s
.
class (id) isa;
private int asi;
boolean classp;
FALSE
, as we're an instance, and not a class.
protected void dump MutableKeyed done indent MutableByteString prefix simple boolean allow_simple level int level to OutputStream s;
dump
.
id init;
class (id) kind;
void set_kind class (State) a_class;
isa
) into the
a_class
. Currently both the original and the new class must carry
exactly the same state. Looser restrictions could be implemented...
OutputStream write OutputStream s;
s
.
OutputStream writeFields OutputStream s;
write
to allow subclasses to write their fields to
the stream s
. The default implementation does nothing.
void dealloc;
Do not message any other objects from within this method as they might have become garbage too.
Since class objects can not become garbage, it is safe to message class objects.
When overriding this method, it is not necessary to invoke State
's
implementation.
void gc_mark_elements;