"{ Package: 'stx:libjava' }"
JavaDecompiler subclass:#JavaByteCodeEnumerator
instanceVariableNames:'literalAction'
classVariableNames:''
poolDictionaries:''
category:'Languages-Java-Support-Decompiling'
!
!JavaByteCodeEnumerator methodsFor:'accessing'!
literalAction
"return the value of the instance variable 'literalAction' (automatically generated)"
^ literalAction
"Created: / 9.11.1999 / 15:27:37 / cg"
!
literalAction:something
"set the value of the instance variable 'literalAction' (automatically generated)"
literalAction := something.
"Created: / 9.11.1999 / 15:27:37 / cg"
! !
!JavaByteCodeEnumerator methodsFor:'operand decoding'!
constIndexByte
lastConstIndex := code at:pc.
pc := pc + 1.
lastConstant := javaMethod constantPool at:lastConstIndex ifAbsent:nil.
literalAction notNil ifTrue:[
literalAction value:pc-2 value:lastConstIndex value:lastConstant
].
"Created: / 9.11.1999 / 15:26:42 / cg"
"Modified: / 9.11.1999 / 15:29:24 / cg"
!
constIndexShort
lastConstIndex := code wordAt:pc MSB:true.
pc := pc + 2.
lastConstant := javaMethod constantPool at:lastConstIndex ifAbsent:nil.
literalAction notNil ifTrue:[
literalAction value:pc-3 value:lastConstIndex value:lastConstant
].
"Created: / 9.11.1999 / 15:27:32 / cg"
"Modified: / 9.11.1999 / 15:29:31 / cg"
! !
!JavaByteCodeEnumerator methodsFor:'processing'!
instructionHookPC:pc op:op spec:spec
"/ self halt.
"Created: / 9.11.1999 / 15:35:39 / cg"
"Modified: / 9.11.1999 / 17:21:18 / cg"
!
remember_invokeinterface
"/ self halt.
"Created: / 9.11.1999 / 17:20:58 / cg"
"Modified: / 9.11.1999 / 17:22:04 / cg"
!
remember_invokenonvirtual
"/ self halt.
"Created: / 9.11.1999 / 17:21:06 / cg"
"Modified: / 9.11.1999 / 17:21:51 / cg"
!
remember_invokestatic
"/ self halt.
"Modified: / 9.11.1999 / 17:22:00 / cg"
"Created: / 9.11.1999 / 17:22:14 / cg"
!
remember_invokevirtual
"/ self halt.
"Created: / 9.11.1999 / 17:21:08 / cg"
"Modified: / 9.11.1999 / 17:22:00 / cg"
! !
!JavaByteCodeEnumerator class methodsFor:'documentation'!
version
^ '$Header: /cvs/stx/stx/libjava/JavaByteCodeEnumerator.st,v 1.3 2002-11-22 20:13:48 cg Exp $'
! !