# HG changeset patch # User cg # Date 831373318 0 # Node ID b5f63f59c2c1fa8e735da92cc265a170df0565ac # Parent db9b84631d43455f3fc8f760d1a0eb7e56c943d8 some net primitives added diff -r db9b84631d43 -r b5f63f59c2c1 Java.st --- a/Java.st Fri May 03 21:41:03 1996 +0000 +++ b/Java.st Mon May 06 09:01:58 1996 +0000 @@ -16,6 +16,22 @@ ^ self at:aString ! ! +!Java class methodsFor:'class initialization'! + +initAllClasses + self allClassesDo:[:cls | + cls isInitialized ifFalse:[ + cls classInit + ] + ] + +! + +reinitAllClasses + self markAllClassesUninitialized. + self initAllClasses +! ! + !Java class methodsFor:'enumerating'! allClassesDo:aBlock @@ -126,5 +142,5 @@ !Java class methodsFor:'documentation'! version - ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/Java.st,v 1.6 1996/05/03 18:54:57 cg Exp $' + ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/Java.st,v 1.7 1996/05/06 09:01:54 cg Exp $' ! ! diff -r db9b84631d43 -r b5f63f59c2c1 JavaExceptionTableEntry.st --- a/JavaExceptionTableEntry.st Fri May 03 21:41:03 1996 +0000 +++ b/JavaExceptionTableEntry.st Mon May 06 09:01:58 1996 +0000 @@ -16,6 +16,28 @@ !JavaExceptionTableEntry methodsFor:'private accessing'! +handlerPCFor:exception at:pc in:aMethod + "if there is a handler for exceptionClass, with given pc, + return the handler-PC; otherwise, return nil." + + |cls ref| + + (pc between:startPC and:endPC) ifTrue:[ + catchType == 0 ifTrue:[^ handlerPC]. + cls := aMethod class. + ref := cls constantPool at:catchType. + (ref isKindOf:JavaClass) ifFalse:[ + self halt. + ^ nil + ]. + (exception class isKindOf:ref) ifTrue:[ + ^ handlerPC + ]. + ^ nil + ]. + ^ nil +! + startPC:start_pc endPC:end_pc handlerPC:handler_pc catchType:catch_type startPC := start_pc. endPC := end_pc. @@ -28,5 +50,5 @@ !JavaExceptionTableEntry class methodsFor:'documentation'! version - ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaExceptionTableEntry.st,v 1.1 1996/04/16 13:34:03 cg Exp $' + ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaExceptionTableEntry.st,v 1.2 1996/05/06 09:01:58 cg Exp $' ! !