On 6-May-2009, Robert T. Short wrote:
| if there might be an inheritance issue then
| if there is no entry in the exemplar table then
| execute the class constructor to create an exemplar table entry
| if executing the class constructor failed, return the broken class
|
| use the exemplar table to reconstruct the inheritance
| if there is an inconsistency in the inheritance structure return the
| broken class
|
| if there is no inheritance problem
| execute the user's loadobj method
Don't you need to add
if there is no entry in the exemplar table then
execute the class constructor to create an exemplar table entry
if executing the class constructor failed, return the broken class
here as well, so that you can check for consistency? So does it
matter whether there is inheritance or not? Just first ensure that
there is an exemplar for the named class in the table. Then you can
check to see about inheritance and consistency of field names.
| check the class for consistency with the exemplar table entry
| if inconsistent, return the broken class
| else return the class
jwe