Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create light-weight shadow classes when materializing instances of an inexistent class #52

Open
GoogleCodeExporter opened this issue Mar 24, 2015 · 4 comments

Comments

@GoogleCodeExporter
Copy link

Two cites:

Parcels (Mira05 paper):
"On encountering an import for a class that is not present the loader raises
a warning which the user can respond-to either by aborting the load or by
continuing. If the loader continues it creates an instance of a special class
(AbsentClassImport), stores it at the relevant index in the object table, and
initializes the object with all the format information available in the parcel
(again using the class import information available in the parcel). Later on in
the load attempts may be made to add methods to the AbsentClassImport
or to subclass it"

Xtreams (Xtreams 492 Update: Marshaling and Multiplexing): 
"ObjectMarshaler will now create light-weight shadow classes for classes that 
do not exist when unmarshaling objects. The classes are full subclasses of 
Object with getters/setters created on them for their instance variable names."

Original issue reported on code.google.com by tinchod...@gmail.com on 20 Jun 2011 at 8:58

@GoogleCodeExporter
Copy link
Author

SRP:

"Metastates describe the data encoding. You must be able to resolve the 
metastate the object to be read. The metastate is data in a predictable (yet 
extendable) format that describes how data in a less predictable format is 
encoded. SRP uses metastates so that class shape changes or behavior will not 
affect the ability to read data. If the class doesn't exist at all for loaded 
data then SRP is able to load in instance of SrpState that represents the 
structure and accessor behavior of the original object."

Original comment by marianopeck on 21 Jun 2011 at 8:00

@stale
Copy link

stale bot commented May 18, 2021

This issue has been automatically marked as stale because it has not had recent activity. It will remain open but will probably not come into focus. If you still think this should receive some attention, leave a comment. Thank you for your contributions.

@stale stale bot added the stale label May 18, 2021
@tinchodias
Copy link
Collaborator

This would be an anonymous class (in Pharo)

@stale stale bot removed the stale label Jan 29, 2024
Copy link

stale bot commented Mar 31, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will remain open but will probably not come into focus. If you still think this should receive some attention, leave a comment. Thank you for your contributions.

@stale stale bot added the stale label Mar 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants