ObjFHandle.st
author claus
Fri, 15 Sep 1995 13:38:21 +0200
changeset 122 d174a54ad291
parent 120 13f0112a469a
child 123 62dec1f5860e
permissions -rw-r--r--
.

'From Smalltalk/X, Version:2.10.7 on 14-sep-1995 at 9:26:01 pm'                 !

Object subclass:#ObjectFileHandle
	 instanceVariableNames:'sysHandle1 sysHandle2 pathName moduleID handleType weakMethodRef weakClassRefs'
	 classVariableNames:''
	 poolDictionaries:''
	 category:'System-Compiler'
!

!ObjectFileHandle class methodsFor:'documentation'!

version
"
$Header: /cvs/stx/stx/libcomp/Attic/ObjFHandle.st,v 1.3 1995-09-15 11:38:21 claus Exp $
"
!

documentation
"
    not for public use - used by ObjectFileLoader to keep track of loaded modules
"

    "Created: 14.9.1995 / 21:10:55 / claus"
!

history

    "Created: 14.9.1995 / 21:10:55 / claus"
    "Modified: 14.9.1995 / 21:10:55 / claus"
!

copyright
"
 COPYRIGHT (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.
"
! !

!ObjectFileHandle methodsFor:'queries'!

isClassLibHandle
    ^ handleType == #classLibraryObject 
!

isMethodHandle
    ^ handleType == #methodObject
! !

!ObjectFileHandle methodsFor:'accessing'!

sysHandle1
    "return sysHandle1"

    ^ sysHandle1

    "Created: 14.9.1995 / 21:13:12 / claus"
!

sysHandle1:something
    "set sysHandle1"

    sysHandle1 := something.

    "Created: 14.9.1995 / 21:13:12 / claus"
!

sysHandle2
    "return sysHandle2"

    ^ sysHandle2

    "Created: 14.9.1995 / 21:13:12 / claus"
!

sysHandle2:something
    "set sysHandle2"

    sysHandle2 := something.

    "Created: 14.9.1995 / 21:13:12 / claus"
!

pathName
    "return pathName"

    ^ pathName

    "Created: 14.9.1995 / 21:13:12 / claus"
!

pathName:something
    "set pathName"

    pathName := something.

    "Created: 14.9.1995 / 21:13:12 / claus"
!

moduleID
    "return moduleID"

    ^ moduleID

    "Created: 14.9.1995 / 21:13:12 / claus"
!

moduleID:something
    "set moduleID"

    moduleID := something.

    "Created: 14.9.1995 / 21:13:12 / claus"
!

classes
    "return the classes"

    ^ weakClassRefs asArray 

    "Created: 14.9.1995 / 21:13:13 / claus"
!

classes:aCollectionOfClasses 
    "set the classes collection"

    weakClassRefs := WeakArray withAll:aCollectionOfClasses.
    handleType := #classLibraryObject 

    "Created: 14.9.1995 / 21:13:13 / claus"
!

method
    "return method"

    ^ weakMethodRef at:1 

    "Created: 14.9.1995 / 21:13:13 / claus"
!

method:something
    "set method"

    weakMethodRef := WeakArray with:something.
    handleType := #methodObject.

    "Created: 14.9.1995 / 21:13:13 / claus"
! !