JavaContext.st
author cg
Wed, 01 May 1996 16:22:02 +0000
changeset 28 916f444c5cae
child 32 0dbaa43a73db
permissions -rw-r--r--
intitial checkin

Object subclass:#JavaContext
	instanceVariableNames:'method class sender stack frameBase'
	classVariableNames:''
	poolDictionaries:''
	category:'Java-Support'
!


!JavaContext methodsFor:'ST context mimicri'!

argsAndVars
    |args|

    args := Array new:(method numArgs + method numVars).
    args replaceFrom:1 to:args size with:stack startingAt:frameBase+1.
    ^ args

    "Created: 1.5.1996 / 17:32:44 / cg"
    "Modified: 1.5.1996 / 17:41:50 / cg"
!

canReturn
    ^ false

    "Created: 1.5.1996 / 15:05:36 / cg"
!

isBlockContext
    ^ false

    "Created: 1.5.1996 / 15:05:26 / cg"
!

lineNumber
    ^ 0

    "Created: 1.5.1996 / 15:05:47 / cg"
!

methodClass
    ^ class

    "Created: 1.5.1996 / 15:04:17 / cg"
!

methodHome
    ^ self

    "Created: 1.5.1996 / 15:03:43 / cg"
!

numArgs
    ^ method numArgs

    "Created: 1.5.1996 / 15:04:35 / cg"
!

nvars
    ^ 0

    "Created: 1.5.1996 / 15:05:03 / cg"
!

receiver
    ^ stack at:frameBase

    "Created: 1.5.1996 / 15:04:03 / cg"
    "Modified: 1.5.1996 / 17:43:17 / cg"
!

selector
    ^ method signatureName

    "Created: 1.5.1996 / 15:03:03 / cg"
! !

!JavaContext methodsFor:'accessing'!

class:aJavaClass method:aJavaMethod sender:aContext stack:s frameBase:f
    class := aJavaClass.
    method := aJavaMethod.
    sender := aContext.
    stack := s.
    frameBase := f

    "Modified: 1.5.1996 / 17:39:34 / cg"
    "Created: 1.5.1996 / 17:42:27 / cg"
!

method
    ^ method.

    "Created: 1.5.1996 / 15:00:23 / cg"
    "Modified: 1.5.1996 / 15:00:47 / cg"
!

sender
    ^ sender.

    "Modified: 1.5.1996 / 15:00:47 / cg"
    "Created: 1.5.1996 / 15:01:18 / cg"
! !

!JavaContext methodsFor:'printing & storing'!

printString
    |mS recCls|

    mS := class name , '::' , method signatureName.

    (recCls := self receiver class) ~~ class ifTrue:[
        ^ recCls name , '>>' , mS
    ].

    ^ mS

    "Created: 1.5.1996 / 15:07:43 / cg"
    "Modified: 1.5.1996 / 17:58:16 / cg"
! !

!JavaContext class methodsFor:'documentation'!

version
    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaContext.st,v 1.1 1996/05/01 16:22:02 cg Exp $'
! !