|
Class: ObjectFileHandle
Object
|
+--ObjectFileHandle
- Package:
- stx:libcomp
- Category:
- System-Compiler
- Version:
- rev:
1.50
date: 2022/01/17 16:15:38
- user: stefan
- file: ObjectFileHandle.st directory: libcomp
- module: stx stc-classLibrary: libcomp
not for public use - used by ObjectFileLoader to keep track of loaded modules,
associating objectFile names and moduleIDs to classes/methods.
This is required to be able to fixup classes, methods and function references
when an image is restarted and the dynamic objects are reloaded.
copyrightCOPYRIGHT (c) 1995 by Claus Gittinger
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
change & update
-
preSnapshot
-
about to write a snapshot.
Mark all the current instances as being snapshotted
accessing
-
classes
-
return the classes
-
classes: aCollectionOfClasses
-
set the classes collection
-
functions
-
return the functions which were already extracted from the module.
-
makeClassLibHandle
-
make this a classLibHandle - must be done manually when init failed for proper de-registration
later.
-
method
-
return the method (or nil, if I am not a method-file handle)
-
method: something
-
set the method
-
methods
-
return the collection of methods (or an empty collection,
if I am not a method-file handle)
-
moduleID
-
return moduleID
-
moduleID: something
-
set moduleID
-
pathName
-
return pathName
-
pathName: something
-
set pathName
-
snapshot
-
return the value of the instance variable 'snapshot' (automatically generated)
-
snapshot: something
-
set the value of the instance variable 'snapshot' (automatically generated)
-
sysHandle1
-
return sysHandle1
-
sysHandle1: something
-
set sysHandle1
-
sysHandle2
-
return sysHandle2
-
sysHandle2: something
-
set sysHandle2
actions
-
removeConnectedObjects
-
remove the smalltalk objects from the system that are connected
with this ObjectFileHandle
-
removeUnusedObjectFile
-
remove the object file,
but only if we are sure, that it is not referenced by a snapshot.
-
unload
-
unload the object file represented by me
change & update
-
update: anAspect with: aParameter from: changedObject
-
my method/class object was collected - unload the underlying object file
copying-private
-
postCopy
-
flush module handles of the copy
-
postDeepCopy
-
printing & storing
-
printOn: aStream
-
append a printed representation of the receiver to aStream
queries
-
getFunction: aString
-
return a function object for an entry in the module represented by the receiver.
-
getFunctionAddress: aString into: anExternalFunction
-
fill the code address of the external function named aString into anExternalFunction.
Returns the address, or nil.
-
hasUndefinedSymbols
-
return true, if the module has any undefined symbols.
The only system, which allows modules with undefined symbols to be
loaded is (currently) the linux a.out version.
-
isClassLibHandle
-
return true, if I am a handle for a class library
-
isFunctionObjectHandle
-
return true, if I am a handle for a c-code (or other) function object file
-
isMethodHandle
-
return true, if I am a handle for a single compiled method
-
isObsolete
-
return true, if my clases/method has already been removed from
the image. I.e. if the object file can be unloaded without danger.
-
isUnknownHandle
-
return true, if it is not (yet) known, what type of
file is represented by the handle. (i.e. when loaded, but not yet
registered/initialized)
-
package
-
retrieve the packageID of the class-library handle
Usage example(s):
sigh - for now, the package must be extracted from the first classes/methods
|
Usage example(s):
|