Make mirror classes public
This workarounds a bug in stc which does not generate correct code in case
there are multiple private classes that use same pool (such as JavaVMData).
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/JavaAlienMirror.st Fri May 24 10:58:19 2013 +0100
@@ -0,0 +1,278 @@
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+"
+"{ Package: 'stx:libjava' }"
+
+JavaMirror subclass:#JavaAlienMirror
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Languages-Java-Classes'
+!
+
+!JavaAlienMirror class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+
+"
+!
+
+documentation
+"
+ Specialized mirror for Smalltalk (and all other
+ non-Java classes)
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!JavaAlienMirror methodsFor:'accessing'!
+
+getClassLoader
+ "Returns a class loader that loaded this class"
+
+ ^ (JavaVM classForName:'stx.libjava.ClassLoader' definedBy: nil) instVarNamed: #scl.
+
+ "Modified: / 18-05-2013 / 10:57:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredConstructors:publicOnly
+ "Returns an java.lang.reflect.Constructor[] with all constructors
+ declared by this class"
+
+ "Here, return onlu default constructor. Later, all methods annotated
+ with <jsignature: #'<init>(...)V'> wil be returned as well"
+
+ | ctors |
+
+ ctors := OrderedCollection new.
+ klass selectorsAndMethodsDo:[:sel :mthd|
+ (self isJavaConstructor: mthd selector: sel) ifTrue:[
+ ctors add: (self getDeclaredConstructorFor: mthd).
+ ].
+ ].
+
+ ctors isEmpty ifTrue:[
+ "/If no constructor is found, fake default one...
+ ctors add: (self getDeclaredConstructorFor: (klass lookupMethodFor: #initialize)).
+ ].
+
+ ^(JavaVM classForName:'java.lang.reflect.Constructor' definedBy: nil) javaArrayClass withAll: ctors
+
+ "Modified: / 18-05-2013 / 10:57:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredFields:publicOnly
+ "Returns an java.lang.reflect.Field[] with all constructors
+ declared by this class."
+
+ | fields |
+
+ fields := OrderedCollection new.
+
+ klass instVarNames withIndexDo:[:nm :index|
+ | field |
+
+ field := JavaField new.
+ field
+ setAccessFlags: JavaConstants ACC_PROTECTED;
+ setClass: klass;
+ setIndex: klass superclass instSize + index;
+ setDescriptor: #'Ljava/lang/Object;';
+ setName: nm.
+
+ fields add: (self createFieldFor: field)
+ ].
+
+ ^ (JavaVM classForName:'java.lang.reflect.Field' definedBy: nil) javaArrayClass
+ withAll:fields
+
+ "Modified: / 18-05-2013 / 10:57:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredMethods:publicOnly
+ "Returns an java.lang.reflect.Method[] with all methods
+ declared by this class"
+
+ | methods |
+
+ methods := OrderedCollection new.
+ klass selectorsAndMethodsDo:[:sel :mthd|
+ (self isJavaMethod: mthd selector: sel) ifTrue:[
+ methods add: (self getDeclaredMethodFor: mthd).
+ ].
+ ].
+ ^(JavaVM classForName:'java.lang.reflect.Method' definedBy: nil) javaArrayClass withAll: methods
+
+ "Modified: / 18-05-2013 / 10:57:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getInterfaces
+ "Return a list if interfaces"
+
+ ^ Array with: (JavaVM classForName: 'java.lang.Cloneable' definedBy: nil)
+
+ "Modified: / 18-05-2013 / 10:57:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getModifiers
+ "Return class modifiers (public/abstract/final...)"
+
+ ^ JavaConstants ACC_PUBLIC
+
+ "Modified: / 22-08-2012 / 11:01:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getName
+ "Returns name of the class"
+ ^'SMALLTALK.' , klass name
+
+ "Created: / 22-08-2012 / 10:47:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaAlienMirror methodsFor:'accessing-private'!
+
+getDeclaredConstructorFor: method
+ ^ self
+ createConstructorFor: klass
+ method: method
+ signature: (self getSignatureForConstructor: method)
+ modifiers: JavaConstants ACC_PUBLIC
+ parameterTyoes: #()
+ exceptionTypes: #()
+ annotations: JavaMethodAnnotationContainer new
+
+ "Created: / 22-08-2012 / 11:36:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredMethodFor:method
+ | signature name java_lang_Object |
+
+ signature := self getSignatureForMethod: method short: false.
+ name := signature upTo: $(.
+ java_lang_Object := JavaVM classNamed: 'java.lang.Object'.
+ ^ self
+ createMethodFor: klass
+ method: method
+ name: name
+ signature: signature
+ modifiers: JavaConstants ACC_PUBLIC
+ parameterTyoes: ((1 to: method selector numArgs) collect:[:i|java_lang_Object])
+ returnType: java_lang_Object
+ exceptionTypes: #()
+ annotations: JavaMethodAnnotationContainer new
+
+ "Created: / 22-08-2012 / 11:36:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getSignatureForConstructor: method
+ | signature |
+
+ signature :=
+ (String streamContents:[:s|
+ s nextPutAll: '<init>('.
+ method selector numArgs timesRepeat:[
+ s nextPutAll:'Ljava/lang/Object;'.
+ ].
+ s nextPutAll: ')V'.
+ ]) asSymbol.
+ ^signature
+
+ "Created: / 22-08-2012 / 11:40:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getSignatureForMethod: method short: short
+ | selector signature |
+
+ selector := method selector.
+ signature :=
+ (String streamContents:[:s|
+ short ifTrue:[
+ s nextPutAll: (selector upTo: $:)
+ ] ifFalse:[
+ selector numArgs == 1 ifTrue:[
+ s nextPutAll: (selector copyTo: selector size - 1)
+ ] ifFalse:[
+ s nextPutAll: (selector copyReplaceAll: $: with: $_)
+ ]
+ ].
+ s nextPut: $(.
+ method selector numArgs timesRepeat:[
+ s nextPutAll:'Ljava/lang/Object;'.
+ ].
+ s nextPutAll: ')'.
+ s nextPutAll:'Ljava/lang/Object;'.
+ ]) asSymbol.
+ ^signature
+
+ "Created: / 22-08-2012 / 11:46:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaAlienMirror methodsFor:'testing-private'!
+
+isJavaConstructor: mthd selector: sel
+
+ ^sel startsWith: #initialize
+
+ "Created: / 22-08-2012 / 11:47:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+isJavaMethod: mthd selector: sel
+
+ ^sel isBinarySelector not
+ and:[(self isJavaConstructor: mthd selector: sel) not]
+
+ "Created: / 22-08-2012 / 11:47:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaAlienMirror class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/JavaArrayMirror.st Fri May 24 10:58:19 2013 +0100
@@ -0,0 +1,117 @@
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+"
+"{ Package: 'stx:libjava' }"
+
+JavaMirror subclass:#JavaArrayMirror
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Languages-Java-Classes'
+!
+
+!JavaArrayMirror class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+
+"
+! !
+
+!JavaArrayMirror methodsFor:'accessing'!
+
+getClassLoader
+ "Returns a class loader that loaded this class"
+
+ ^ klass javaComponentClass javaMirror getClassLoader
+
+ "Modified: / 31-07-2012 / 18:35:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredConstructors:publicOnly
+ "Returns an java.lang.reflect.Constructor[] with all constructors
+ declared by this class"
+
+ ^ (JavaVM classForName:'java.lang.reflect.Constructor' definedBy: nil) javaArrayClass new:0.
+
+ "Modified: / 18-05-2013 / 10:57:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredFields:publicOnly
+ "Returns an java.lang.reflect.Field[] with all constructors
+ declared by this class."
+
+ ^(JavaVM classForName:'java.lang.reflect.Field' definedBy: nil) javaArrayClass new:0.
+
+ "Modified: / 18-05-2013 / 10:57:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredMethods:publicOnly
+ "Returns an java.lang.reflect.Method[] with all methods
+ declared by this class"
+
+ ^ (JavaVM classForName:'java.lang.reflect.Method' definedBy: nil) javaArrayClass new:0.
+
+ "Modified: / 18-05-2013 / 10:57:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getInterfaces
+ "Return a list if interfaces"
+
+ ^ Array
+ with: (JavaVM classForName: 'java.lang.Cloneable' definedBy: nil)
+ with: (JavaVM classForName: 'java.io.Serializable' definedBy: nil)
+
+ "Modified: / 18-05-2013 / 10:57:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getModifiers
+ "Return class modifiers (public/abstract/final...)"
+
+ ^ JavaConstants ACC_ABSTRACT | JavaConstants ACC_FINAL | JavaConstants ACC_PUBLIC
+
+ "Modified: / 22-08-2012 / 11:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaArrayMirror class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/JavaClassMirror.st Fri May 24 10:58:19 2013 +0100
@@ -0,0 +1,212 @@
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+"
+"{ Package: 'stx:libjava' }"
+
+JavaMirror subclass:#JavaClassMirror
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Languages-Java-Classes'
+!
+
+!JavaClassMirror class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+
+"
+!
+
+documentation
+"
+ A specialized mirror for all Java classes
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!JavaClassMirror methodsFor:'accessing'!
+
+getClassLoader
+ "Returns a class loader that loaded this class"
+
+ ^ klass classLoader
+
+ "Modified: / 31-07-2012 / 18:26:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredConstructors:publicOnly
+ "Returns an java.lang.reflect.Constructor[] with all constructors
+ declared by this class"
+
+ | ctors |
+
+ ctors := OrderedCollection new.
+ klass selectorsAndMethodsDo:[:sel :mthd|
+ (mthd isJavaConstructor and:[publicOnly not or:[mthd isPublic]]) ifTrue:[
+ ctors add: (self getDeclaredConstructorFor: mthd).
+ ].
+ ].
+ ^(JavaVM classForName:'java.lang.reflect.Constructor' definedBy: nil) javaArrayClass withAll: ctors
+
+ "Modified: / 18-05-2013 / 10:56:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredFields:publicOnly
+ "Returns an java.lang.reflect.Field[] with all constructors
+ declared by this class."
+
+ | fields |
+
+ fields := klass fields , klass staticFields.
+ publicOnly ifTrue:[ fields := fields select:[:f | f isPublic ] ].
+ JavaClassReader classLoaderQuerySignal answer: klass classLoader do:[
+ fields := fields collect:[:f | self createFieldFor:f ].
+ ].
+ ^ (JavaVM classForName:'java.lang.reflect.Field' definedBy: nil) javaArrayClass
+ withAll:fields
+
+ "Modified: / 18-05-2013 / 10:57:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredMethods:publicOnly
+ "Returns an java.lang.reflect.Constructor[] with all constructors
+ declared by this class"
+
+ | methods |
+
+ methods := OrderedCollection new.
+ klass selectorsAndMethodsDo:[:sel :mthd|
+ mthd isJavaMethod and:[
+ (mthd isJavaConstructor not
+ and:[mthd isJavaStaticInitializer not
+ and:[publicOnly not or:[mthd isPublic]]]) ifTrue:[
+ methods add: (self getDeclaredMethodFor: mthd).
+ ]
+ ].
+ ].
+ ^(JavaVM classForName:'java.lang.reflect.Method' definedBy: nil) javaArrayClass withAll: methods
+
+ "Modified: / 18-05-2013 / 10:57:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getGenericSignature
+ "Returns Java generic signature (if a generic class) or nil"
+
+ ^klass signatureJ
+
+ "Created: / 22-08-2012 / 11:58:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getInterfaces
+ "Return a list if interfaces"
+
+ ^ klass interfaces
+
+ "Modified: / 22-08-2012 / 11:08:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getModifiers
+ "Return class modifiers (public/abstract/final...)"
+
+ | modifiers |
+
+ "According to OpenJDK JVM, strip ACC_SUPER"
+ modifiers := (klass accessFlags & JavaConstants ACC_SUPER bitInvert) & 16r7FFF.
+ "JV@2011-10-30: It seems that private inner classes has no
+ private bit set, sigh"
+ (modifiers & 16r0007) == 0 ifTrue:[
+ modifiers := modifiers | JavaConstants ACC_PRIVATE.
+ ].
+ ^modifiers
+
+ "Modified: / 22-08-2012 / 11:03:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getProtectionDomain
+ ^klass protectionDomain
+
+ "Created: / 22-08-2012 / 12:56:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaClassMirror methodsFor:'accessing-private'!
+
+getDeclaredConstructorFor: method
+
+ ^self createConstructorFor: method javaClass
+ method: method
+ signature: method signature
+ modifiers: method accessFlags
+ parameterTyoes: (method descriptor parameterClassesUsingClassLoader: method javaClass classLoader)
+ exceptionTypes: method exceptionClasses
+ annotations: method method annotations.
+
+ "Created: / 01-08-2012 / 00:46:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredMethodFor: method
+
+ ^self createMethodFor: method javaClass
+ method: method
+ name: (method selector upTo: $()
+ signature: method signature
+ modifiers: method accessFlags
+ parameterTyoes: (method descriptor parameterClassesUsingClassLoader: method javaClass classLoader)
+ returnType: (method descriptor returnClassUsingClassLoader: method javaClass classLoader)
+ exceptionTypes: method exceptionClasses
+ annotations: method method annotations.
+
+ "Created: / 01-08-2012 / 11:11:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaClassMirror class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- a/JavaMirror.st Thu May 23 09:57:12 2013 +0100
+++ b/JavaMirror.st Fri May 24 10:58:19 2013 +0100
@@ -23,38 +23,10 @@
Object subclass:#JavaMirror
instanceVariableNames:'klass reflection'
classVariableNames:''
- poolDictionaries:'JavaVMData'
+ poolDictionaries:''
category:'Languages-Java-Classes'
!
-JavaMirror subclass:#AlienClassMirror
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:'JavaVMData'
- privateIn:JavaMirror
-!
-
-JavaMirror subclass:#JavaArrayMirror
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:'JavaVMData'
- privateIn:JavaMirror
-!
-
-JavaMirror subclass:#JavaClassMirror
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:'JavaVMData'
- privateIn:JavaMirror
-!
-
-JavaMirror subclass:#JavaPrimitiveMirror
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:'JavaVMData'
- privateIn:JavaMirror
-!
-
!JavaMirror class methodsFor:'documentation'!
copyright
@@ -117,9 +89,10 @@
!JavaMirror class methodsFor:'accessing'!
mirrorClassForAlienClass
- ^ AlienClassMirror
+ ^ JavaAlienMirror
"Created: / 31-07-2012 / 17:36:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 24-05-2013 / 10:54:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
mirrorClassForJavaArray
@@ -273,7 +246,7 @@
"
| ctor |
- ctor := self create: java_lang_reflect_Constructor
+ ctor := self create: (JavaVM classForName:'java.lang.reflect.Constructor' definedBy: nil)
for: class
method: method
signature: signature
@@ -309,7 +282,7 @@
type := JavaVM javaClassObjectForClass:
((JavaDescriptor fromString: javaField descriptor) javaClassUsingClassLoader: javaField javaClass classLoader).
modifiers := javaField accessFlags.
- field := java_lang_reflect_Field new.
+ field := (JavaVM classForName: 'java.lang.reflect.Field' definedBy: nil) new.
field
instVarNamed: #clazz put: clazz;
instVarNamed: #name put: name;
@@ -343,7 +316,7 @@
"
| mthd |
- mthd := self create: java_lang_reflect_Method
+ mthd := self create: (JavaVM classForName:'java.lang.reflect.Method' definedBy: nil)
for: class
method: method
signature: signature
@@ -363,484 +336,6 @@
"Modified: / 18-05-2013 / 10:55:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
-!JavaMirror::AlienClassMirror class methodsFor:'documentation'!
-
-documentation
-"
- Specialized mirror for Smalltalk (and all other
- non-Java classes)
-
- [author:]
- Jan Vrany <jan.vrany@fit.cvut.cz>
-
- [instance variables:]
-
- [class variables:]
-
- [see also:]
-
-"
-! !
-
-!JavaMirror::AlienClassMirror methodsFor:'accessing'!
-
-getClassLoader
- "Returns a class loader that loaded this class"
-
- ^ (JavaVM classForName:'stx.libjava.ClassLoader' definedBy: nil) instVarNamed: #scl.
-
- "Modified: / 18-05-2013 / 10:57:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredConstructors:publicOnly
- "Returns an java.lang.reflect.Constructor[] with all constructors
- declared by this class"
-
- "Here, return onlu default constructor. Later, all methods annotated
- with <jsignature: #'<init>(...)V'> wil be returned as well"
-
- | ctors |
-
- ctors := OrderedCollection new.
- klass selectorsAndMethodsDo:[:sel :mthd|
- (self isJavaConstructor: mthd selector: sel) ifTrue:[
- ctors add: (self getDeclaredConstructorFor: mthd).
- ].
- ].
-
- ctors isEmpty ifTrue:[
- "/If no constructor is found, fake default one...
- ctors add: (self getDeclaredConstructorFor: (klass lookupMethodFor: #initialize)).
- ].
-
- ^java_lang_reflect_Constructor javaArrayClass withAll: ctors
-
- "Modified: / 18-05-2013 / 10:57:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredFields:publicOnly
- "Returns an java.lang.reflect.Field[] with all constructors
- declared by this class."
-
- | fields |
-
- fields := OrderedCollection new.
-
- klass instVarNames withIndexDo:[:nm :index|
- | field |
-
- field := JavaField new.
- field
- setAccessFlags: JavaConstants ACC_PROTECTED;
- setClass: klass;
- setIndex: klass superclass instSize + index;
- setDescriptor: #'Ljava/lang/Object;';
- setName: nm.
-
- fields add: (self createFieldFor: field)
- ].
-
- ^ java_lang_reflect_Field javaArrayClass
- withAll:fields
-
- "Modified: / 18-05-2013 / 10:57:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredMethods:publicOnly
- "Returns an java.lang.reflect.Method[] with all methods
- declared by this class"
-
- | methods |
-
- methods := OrderedCollection new.
- klass selectorsAndMethodsDo:[:sel :mthd|
- (self isJavaMethod: mthd selector: sel) ifTrue:[
- methods add: (self getDeclaredMethodFor: mthd).
- ].
- ].
- ^java_lang_reflect_Method javaArrayClass withAll: methods
-
- "Modified: / 18-05-2013 / 10:57:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getInterfaces
- "Return a list if interfaces"
-
- ^ Array with: (JavaVM classForName: 'java.lang.Cloneable' definedBy: nil)
-
- "Modified: / 18-05-2013 / 10:57:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getModifiers
- "Return class modifiers (public/abstract/final...)"
-
- ^ JavaConstants ACC_PUBLIC
-
- "Modified: / 22-08-2012 / 11:01:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getName
- "Returns name of the class"
- ^'SMALLTALK.' , klass name
-
- "Created: / 22-08-2012 / 10:47:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaMirror::AlienClassMirror methodsFor:'accessing-private'!
-
-getDeclaredConstructorFor: method
- ^ self
- createConstructorFor: klass
- method: method
- signature: (self getSignatureForConstructor: method)
- modifiers: JavaConstants ACC_PUBLIC
- parameterTyoes: #()
- exceptionTypes: #()
- annotations: JavaMethodAnnotationContainer new
-
- "Created: / 22-08-2012 / 11:36:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredMethodFor:method
- | signature name java_lang_Object |
-
- signature := self getSignatureForMethod: method short: false.
- name := signature upTo: $(.
- java_lang_Object := JavaVM classNamed: 'java.lang.Object'.
- ^ self
- createMethodFor: klass
- method: method
- name: name
- signature: signature
- modifiers: JavaConstants ACC_PUBLIC
- parameterTyoes: ((1 to: method selector numArgs) collect:[:i|java_lang_Object])
- returnType: java_lang_Object
- exceptionTypes: #()
- annotations: JavaMethodAnnotationContainer new
-
- "Created: / 22-08-2012 / 11:36:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getSignatureForConstructor: method
- | signature |
-
- signature :=
- (String streamContents:[:s|
- s nextPutAll: '<init>('.
- method selector numArgs timesRepeat:[
- s nextPutAll:'Ljava/lang/Object;'.
- ].
- s nextPutAll: ')V'.
- ]) asSymbol.
- ^signature
-
- "Created: / 22-08-2012 / 11:40:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getSignatureForMethod: method short: short
- | selector signature |
-
- selector := method selector.
- signature :=
- (String streamContents:[:s|
- short ifTrue:[
- s nextPutAll: (selector upTo: $:)
- ] ifFalse:[
- selector numArgs == 1 ifTrue:[
- s nextPutAll: (selector copyTo: selector size - 1)
- ] ifFalse:[
- s nextPutAll: (selector copyReplaceAll: $: with: $_)
- ]
- ].
- s nextPut: $(.
- method selector numArgs timesRepeat:[
- s nextPutAll:'Ljava/lang/Object;'.
- ].
- s nextPutAll: ')'.
- s nextPutAll:'Ljava/lang/Object;'.
- ]) asSymbol.
- ^signature
-
- "Created: / 22-08-2012 / 11:46:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaMirror::AlienClassMirror methodsFor:'testing-private'!
-
-isJavaConstructor: mthd selector: sel
-
- ^sel startsWith: #initialize
-
- "Created: / 22-08-2012 / 11:47:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-isJavaMethod: mthd selector: sel
-
- ^sel isBinarySelector not
- and:[(self isJavaConstructor: mthd selector: sel) not]
-
- "Created: / 22-08-2012 / 11:47:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaMirror::JavaArrayMirror methodsFor:'accessing'!
-
-getClassLoader
- "Returns a class loader that loaded this class"
-
- ^ klass javaComponentClass javaMirror getClassLoader
-
- "Modified: / 31-07-2012 / 18:35:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredConstructors:publicOnly
- "Returns an java.lang.reflect.Constructor[] with all constructors
- declared by this class"
-
- ^ java_lang_reflect_Constructor javaArrayClass new:0.
-
- "Modified: / 18-05-2013 / 10:57:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredFields:publicOnly
- "Returns an java.lang.reflect.Field[] with all constructors
- declared by this class."
-
- ^java_lang_reflect_Field javaArrayClass new:0.
-
- "Modified: / 18-05-2013 / 10:57:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredMethods:publicOnly
- "Returns an java.lang.reflect.Method[] with all methods
- declared by this class"
-
- ^ java_lang_reflect_Method javaArrayClass new:0.
-
- "Modified: / 18-05-2013 / 10:57:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getInterfaces
- "Return a list if interfaces"
-
- ^ Array
- with: (JavaVM classForName: 'java.lang.Cloneable' definedBy: nil)
- with: (JavaVM classForName: 'java.io.Serializable' definedBy: nil)
-
- "Modified: / 18-05-2013 / 10:57:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getModifiers
- "Return class modifiers (public/abstract/final...)"
-
- ^ JavaConstants ACC_ABSTRACT | JavaConstants ACC_FINAL | JavaConstants ACC_PUBLIC
-
- "Modified: / 22-08-2012 / 11:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaMirror::JavaClassMirror class methodsFor:'documentation'!
-
-documentation
-"
- A specialized mirror for all Java classes
-
- [author:]
- Jan Vrany <jan.vrany@fit.cvut.cz>
-
- [instance variables:]
-
- [class variables:]
-
- [see also:]
-
-"
-! !
-
-!JavaMirror::JavaClassMirror methodsFor:'accessing'!
-
-getClassLoader
- "Returns a class loader that loaded this class"
-
- ^ klass classLoader
-
- "Modified: / 31-07-2012 / 18:26:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredConstructors:publicOnly
- "Returns an java.lang.reflect.Constructor[] with all constructors
- declared by this class"
-
- | ctors |
-
- ctors := OrderedCollection new.
- klass selectorsAndMethodsDo:[:sel :mthd|
- (mthd isJavaConstructor and:[publicOnly not or:[mthd isPublic]]) ifTrue:[
- ctors add: (self getDeclaredConstructorFor: mthd).
- ].
- ].
- ^java_lang_reflect_Constructor javaArrayClass withAll: ctors
-
- "Modified: / 18-05-2013 / 10:56:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredFields:publicOnly
- "Returns an java.lang.reflect.Field[] with all constructors
- declared by this class."
-
- | fields |
-
- fields := klass fields , klass staticFields.
- publicOnly ifTrue:[ fields := fields select:[:f | f isPublic ] ].
- JavaClassReader classLoaderQuerySignal answer: klass classLoader do:[
- fields := fields collect:[:f | self createFieldFor:f ].
- ].
- ^ java_lang_reflect_Field javaArrayClass
- withAll:fields
-
- "Modified: / 18-05-2013 / 10:57:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredMethods:publicOnly
- "Returns an java.lang.reflect.Constructor[] with all constructors
- declared by this class"
-
- | methods |
-
- methods := OrderedCollection new.
- klass selectorsAndMethodsDo:[:sel :mthd|
- mthd isJavaMethod and:[
- (mthd isJavaConstructor not
- and:[mthd isJavaStaticInitializer not
- and:[publicOnly not or:[mthd isPublic]]]) ifTrue:[
- methods add: (self getDeclaredMethodFor: mthd).
- ]
- ].
- ].
- ^java_lang_reflect_Method javaArrayClass withAll: methods
-
- "Modified: / 18-05-2013 / 10:57:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getGenericSignature
- "Returns Java generic signature (if a generic class) or nil"
-
- ^klass signatureJ
-
- "Created: / 22-08-2012 / 11:58:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getInterfaces
- "Return a list if interfaces"
-
- ^ klass interfaces
-
- "Modified: / 22-08-2012 / 11:08:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getModifiers
- "Return class modifiers (public/abstract/final...)"
-
- | modifiers |
-
- "According to OpenJDK JVM, strip ACC_SUPER"
- modifiers := (klass accessFlags & JavaConstants ACC_SUPER bitInvert) & 16r7FFF.
- "JV@2011-10-30: It seems that private inner classes has no
- private bit set, sigh"
- (modifiers & 16r0007) == 0 ifTrue:[
- modifiers := modifiers | JavaConstants ACC_PRIVATE.
- ].
- ^modifiers
-
- "Modified: / 22-08-2012 / 11:03:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getProtectionDomain
- ^klass protectionDomain
-
- "Created: / 22-08-2012 / 12:56:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaMirror::JavaClassMirror methodsFor:'accessing-private'!
-
-getDeclaredConstructorFor: method
-
- ^self createConstructorFor: method javaClass
- method: method
- signature: method signature
- modifiers: method accessFlags
- parameterTyoes: (method descriptor parameterClassesUsingClassLoader: method javaClass classLoader)
- exceptionTypes: method exceptionClasses
- annotations: method method annotations.
-
- "Created: / 01-08-2012 / 00:46:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredMethodFor: method
-
- ^self createMethodFor: method javaClass
- method: method
- name: (method selector upTo: $()
- signature: method signature
- modifiers: method accessFlags
- parameterTyoes: (method descriptor parameterClassesUsingClassLoader: method javaClass classLoader)
- returnType: (method descriptor returnClassUsingClassLoader: method javaClass classLoader)
- exceptionTypes: method exceptionClasses
- annotations: method method annotations.
-
- "Created: / 01-08-2012 / 11:11:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaMirror::JavaPrimitiveMirror methodsFor:'accessing'!
-
-getClassLoader
- "Returns a class loader that loaded this class"
-
- ^ nil
-
- "Modified: / 31-07-2012 / 18:35:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredConstructors:publicOnly
- "Returns an java.lang.reflect.Constructor[] with all constructors
- declared by this class"
-
- ^ java_lang_reflect_Constructor javaArrayClass new:0.
-
- "Modified: / 18-05-2013 / 10:57:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredFields:publicOnly
- "Returns an java.lang.reflect.Field[] with all constructors
- declared by this class."
-
- ^java_lang_reflect_Field javaArrayClass new:0.
-
- "Modified: / 18-05-2013 / 10:58:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getDeclaredMethods:publicOnly
- "Returns an java.lang.reflect.Method[] with all methods
- declared by this class"
-
- ^ java_lang_reflect_Method javaArrayClass new:0.
-
- "Modified: / 18-05-2013 / 10:58:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getInterfaces
- "Return a list if interfaces"
-
- ^ #()
-
- "Modified: / 22-08-2012 / 11:07:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-getModifiers
- "Return class modifiers (public/abstract/final...)"
-
- ^ JavaConstants ACC_ABSTRACT | JavaConstants ACC_FINAL | JavaConstants ACC_PUBLIC
-
- "Modified: / 22-08-2012 / 11:02:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
!JavaMirror class methodsFor:'documentation'!
version_CVS
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/JavaPrimitiveMirror.st Fri May 24 10:58:19 2013 +0100
@@ -0,0 +1,115 @@
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+"
+"{ Package: 'stx:libjava' }"
+
+JavaMirror subclass:#JavaPrimitiveMirror
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Languages-Java-Classes'
+!
+
+!JavaPrimitiveMirror class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 1996-2011 by Claus Gittinger
+
+ New code and modifications done at SWING Research Group [1]:
+
+ COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ SWING Research Group, Czech Technical University in Prague
+
+ 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.
+
+ [1] Code written at SWING Research Group contains a signature
+ of one of the above copright owners. For exact set of such code,
+ see the differences between this version and version stx:libjava
+ as of 1.9.2010
+
+"
+! !
+
+!JavaPrimitiveMirror methodsFor:'accessing'!
+
+getClassLoader
+ "Returns a class loader that loaded this class"
+
+ ^ nil
+
+ "Modified: / 31-07-2012 / 18:35:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredConstructors:publicOnly
+ "Returns an java.lang.reflect.Constructor[] with all constructors
+ declared by this class"
+
+ ^ (JavaVM classForName:'java.lang.reflect.Constructor' definedBy: nil) javaArrayClass new:0.
+
+ "Modified: / 18-05-2013 / 10:57:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredFields:publicOnly
+ "Returns an java.lang.reflect.Field[] with all constructors
+ declared by this class."
+
+ ^(JavaVM classForName:'java.lang.reflect.Field' definedBy: nil) javaArrayClass new:0.
+
+ "Modified: / 18-05-2013 / 10:58:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getDeclaredMethods:publicOnly
+ "Returns an java.lang.reflect.Method[] with all methods
+ declared by this class"
+
+ ^ (JavaVM classForName:'java.lang.reflect.Method' definedBy: nil) javaArrayClass new:0.
+
+ "Modified: / 18-05-2013 / 10:58:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getInterfaces
+ "Return a list if interfaces"
+
+ ^ #()
+
+ "Modified: / 22-08-2012 / 11:07:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+getModifiers
+ "Return class modifiers (public/abstract/final...)"
+
+ ^ JavaConstants ACC_ABSTRACT | JavaConstants ACC_FINAL | JavaConstants ACC_PUBLIC
+
+ "Modified: / 22-08-2012 / 11:02:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaPrimitiveMirror class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- a/Make.proto Thu May 23 09:57:12 2013 +0100
+++ b/Make.proto Fri May 24 10:58:19 2013 +0100
@@ -21,7 +21,7 @@
INCLUDE_TOP=$(TOP)/..
# subdirectories where targets are to be made:
-SUBDIRS= experiments
+SUBDIRS= tools experiments
# subdirectories where Makefiles are to be made:
@@ -34,7 +34,7 @@
# add the path(es) here:,
# ********** OPTIONAL: MODIFY the next lines ***
# LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES=-I$(ZLIB_DIR) -Isupport/fdlibm -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic3 -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libview
+LOCALINCLUDES=-I$(ZLIB_DIR) -Isupport/fdlibm -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic3 -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libview
# if you need any additional defines for embedded C code,
@@ -144,8 +144,6 @@
cd ../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
cd ../libbasic3 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
cd ../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
- cd ../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
- cd ../goodies/sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
@@ -231,17 +229,20 @@
$(OUTDIR)stx_libjava.$(O) stx_libjava.$(H): stx_libjava.st $(INCLUDE_TOP)/stx/libbasic/LibraryDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/ProjectDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GroovyMetaclass.$(O) GroovyMetaclass.$(H): GroovyMetaclass.st $(INCLUDE_TOP)/stx/libjava/JavaMetaclass.$(H) $(INCLUDE_TOP)/stx/libbasic/Metaclass.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)Java.$(O) Java.$(H): Java.st $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaAlienMirror.$(O) JavaAlienMirror.$(H): JavaAlienMirror.st $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationArrayValue.$(O) JavaAnnotationArrayValue.$(H): JavaAnnotationArrayValue.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationClassValue.$(O) JavaAnnotationClassValue.$(H): JavaAnnotationClassValue.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationEnumValue.$(O) JavaAnnotationEnumValue.$(H): JavaAnnotationEnumValue.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationNestedAnnotationValue.$(O) JavaAnnotationNestedAnnotationValue.$(H): JavaAnnotationNestedAnnotationValue.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationPrimitiveValue.$(O) JavaAnnotationPrimitiveValue.$(H): JavaAnnotationPrimitiveValue.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaArrayMirror.$(O) JavaArrayMirror.$(H): JavaArrayMirror.st $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaBehavior.$(O) JavaBehavior.$(H): JavaBehavior.st $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(INCLUDE_TOP)/stx/libbasic/Class.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaByteCodeDisassembler.$(O) JavaByteCodeDisassembler.$(H): JavaByteCodeDisassembler.st $(INCLUDE_TOP)/stx/libjava/JavaByteCodeProcessor.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaByteCodeEnumerator.$(O) JavaByteCodeEnumerator.$(H): JavaByteCodeEnumerator.st $(INCLUDE_TOP)/stx/libjava/JavaDecompiler.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaByteCodeProcessorAdapter.$(O) JavaByteCodeProcessorAdapter.$(H): JavaByteCodeProcessorAdapter.st $(INCLUDE_TOP)/stx/libjava/JavaByteCodeProcessor.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassAnnotationContainer.$(O) JavaClassAnnotationContainer.$(H): JavaClassAnnotationContainer.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationContainer.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassContentRef2.$(O) JavaClassContentRef2.$(H): JavaClassContentRef2.st $(INCLUDE_TOP)/stx/libjava/JavaRef2.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaClassMirror.$(O) JavaClassMirror.$(H): JavaClassMirror.st $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassReader.$(O) JavaClassReader.$(H): JavaClassReader.st $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassRef2.$(O) JavaClassRef2.$(H): JavaClassRef2.st $(INCLUDE_TOP)/stx/libjava/JavaRef2.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassRegistry.$(O) JavaClassRegistry.$(H): JavaClassRegistry.st $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -256,6 +257,7 @@
$(OUTDIR)JavaMethodAnnotationContainer.$(O) JavaMethodAnnotationContainer.$(H): JavaMethodAnnotationContainer.st $(INCLUDE_TOP)/stx/libjava/JavaAnnotationContainer.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaMethodDescriptor.$(O) JavaMethodDescriptor.$(H): JavaMethodDescriptor.st $(INCLUDE_TOP)/stx/libjava/JavaDescriptor.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaNativeMethodImpl_OpenJDK6.$(O) JavaNativeMethodImpl_OpenJDK6.$(H): JavaNativeMethodImpl_OpenJDK6.st $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaPrimitiveMirror.$(O) JavaPrimitiveMirror.$(H): JavaPrimitiveMirror.st $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaRelease.$(O) JavaRelease.$(H): JavaRelease.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaStringRef2.$(O) JavaStringRef2.$(H): JavaStringRef2.st $(INCLUDE_TOP)/stx/libjava/JavaRef2.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)JavaUnhandledExceptionError.$(O) JavaUnhandledExceptionError.$(H): JavaUnhandledExceptionError.st $(INCLUDE_TOP)/stx/libjava/JavaError.$(H) $(INCLUDE_TOP)/stx/libbasic/Error.$(H) $(INCLUDE_TOP)/stx/libbasic/Exception.$(H) $(INCLUDE_TOP)/stx/libbasic/GenericException.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
--- a/Make.spec Thu May 23 09:57:12 2013 +0100
+++ b/Make.spec Fri May 24 10:58:19 2013 +0100
@@ -116,17 +116,20 @@
stx_libjava \
GroovyMetaclass \
Java \
+ JavaAlienMirror \
JavaAnnotationArrayValue \
JavaAnnotationClassValue \
JavaAnnotationEnumValue \
JavaAnnotationNestedAnnotationValue \
JavaAnnotationPrimitiveValue \
+ JavaArrayMirror \
JavaBehavior \
JavaByteCodeDisassembler \
JavaByteCodeEnumerator \
JavaByteCodeProcessorAdapter \
JavaClassAnnotationContainer \
JavaClassContentRef2 \
+ JavaClassMirror \
JavaClassReader \
JavaClassRef2 \
JavaClassRegistry \
@@ -141,6 +144,7 @@
JavaMethodAnnotationContainer \
JavaMethodDescriptor \
JavaNativeMethodImpl_OpenJDK6 \
+ JavaPrimitiveMirror \
JavaRelease \
JavaStringRef2 \
JavaUnhandledExceptionError \
@@ -243,17 +247,20 @@
$(OUTDIR_SLASH)stx_libjava.$(O) \
$(OUTDIR_SLASH)GroovyMetaclass.$(O) \
$(OUTDIR_SLASH)Java.$(O) \
+ $(OUTDIR_SLASH)JavaAlienMirror.$(O) \
$(OUTDIR_SLASH)JavaAnnotationArrayValue.$(O) \
$(OUTDIR_SLASH)JavaAnnotationClassValue.$(O) \
$(OUTDIR_SLASH)JavaAnnotationEnumValue.$(O) \
$(OUTDIR_SLASH)JavaAnnotationNestedAnnotationValue.$(O) \
$(OUTDIR_SLASH)JavaAnnotationPrimitiveValue.$(O) \
+ $(OUTDIR_SLASH)JavaArrayMirror.$(O) \
$(OUTDIR_SLASH)JavaBehavior.$(O) \
$(OUTDIR_SLASH)JavaByteCodeDisassembler.$(O) \
$(OUTDIR_SLASH)JavaByteCodeEnumerator.$(O) \
$(OUTDIR_SLASH)JavaByteCodeProcessorAdapter.$(O) \
$(OUTDIR_SLASH)JavaClassAnnotationContainer.$(O) \
$(OUTDIR_SLASH)JavaClassContentRef2.$(O) \
+ $(OUTDIR_SLASH)JavaClassMirror.$(O) \
$(OUTDIR_SLASH)JavaClassReader.$(O) \
$(OUTDIR_SLASH)JavaClassRef2.$(O) \
$(OUTDIR_SLASH)JavaClassRegistry.$(O) \
@@ -268,6 +275,7 @@
$(OUTDIR_SLASH)JavaMethodAnnotationContainer.$(O) \
$(OUTDIR_SLASH)JavaMethodDescriptor.$(O) \
$(OUTDIR_SLASH)JavaNativeMethodImpl_OpenJDK6.$(O) \
+ $(OUTDIR_SLASH)JavaPrimitiveMirror.$(O) \
$(OUTDIR_SLASH)JavaRelease.$(O) \
$(OUTDIR_SLASH)JavaStringRef2.$(O) \
$(OUTDIR_SLASH)JavaUnhandledExceptionError.$(O) \
--- a/abbrev.stc Thu May 23 09:57:12 2013 +0100
+++ b/abbrev.stc Fri May 24 10:58:19 2013 +0100
@@ -0,0 +1,156 @@
+# automagically generated by the project definition
+# this file is needed for stc to be able to compile modules independently.
+# it provides information about a classes filename, category and especially namespace.
+GroovyCompiler GroovyCompiler stx:libjava 'Languages-Groovy-Compiler' 0
+GroovyEvaluator GroovyEvaluator stx:libjava 'Languages-Groovy-Compiler' 0
+GroovyLanguage GroovyLanguage stx:libjava 'Languages-Groovy-Support' 1
+GroovySourceFileWriter GroovySourceFileWriter stx:libjava 'Languages-Groovy-Support' 0
+JUnitTestCaseProxy JUnitTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
+JavaAnnotation JavaAnnotation stx:libjava 'Languages-Java-Reader-Support' 0
+JavaAnnotationContainer JavaAnnotationContainer stx:libjava 'Languages-Java-Annotations' 1
+JavaAnnotationDefault JavaAnnotationDefault stx:libjava 'Languages-Java-Annotations' 1
+JavaAnnotationDictionary JavaAnnotationDictionary stx:libjava 'Languages-Java-Annotations' 1
+JavaAnnotationValue JavaAnnotationValue stx:libjava 'Languages-Java-Reader-Support' 0
+JavaAntProjectResource JavaAntProjectResource stx:libjava 'Languages-Java-Tests' 2
+JavaArray JavaArray stx:libjava 'Languages-Java-Classes' 1
+JavaByte JavaByte stx:libjava 'Languages-Java-Support' 0
+JavaByteCodeDisassemblerTests JavaByteCodeDisassemblerTests stx:libjava 'Languages-Java-Tests' 1
+JavaByteCodeProcessor JavaByteCodeProcessor stx:libjava 'Languages-Java-Bytecode' 0
+JavaByteCodeProcessorTests JavaByteCodeProcessorTests stx:libjava 'Languages-Java-Tests' 1
+JavaClassAccessor JavaClassAccessor stx:libjava 'Languages-Java-Classes' 0
+JavaClassLoadingTests JavaClassLoadingTests stx:libjava 'Languages-Java-Tests-ClassLoading' 1
+JavaClassQuery JavaClassQuery stx:libjava 'Languages-Java-Classes' 1
+JavaClassReaderTests JavaClassReaderTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaClassRefTests JavaClassRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaClassReloader JavaClassReloader stx:libjava 'Languages-Java-Support' 0
+JavaCodeLibraryOrBundle JavaCodeLibraryOrBundle stx:libjava 'Languages-Java-Support-Libraries' 0
+JavaCompiler_Eclipse JavaCompiler_Eclipse stx:libjava 'Languages-Java-Tools-Eclipse' 0
+JavaConstantPool JavaConstantPool stx:libjava 'Languages-Java-Reader-Support' 0
+JavaConstants JavaConstants stx:libjava 'Languages-Java-Support' 0
+JavaContext JavaContext stx:libjava 'Languages-Java-Support' 0
+JavaDecompiler JavaDecompiler stx:libjava 'Languages-Java-Support-Decompiling' 0
+JavaDescriptor JavaDescriptor stx:libjava 'Languages-Java-Support' 0
+JavaError JavaError stx:libjava 'Languages-Java-Support' 1
+JavaExceptionTable JavaExceptionTable stx:libjava 'Languages-Java-Support' 0
+JavaExceptionTests JavaExceptionTests stx:libjava 'Languages-Java-Tests' 1
+JavaField JavaField stx:libjava 'Languages-Java-Reader-Support' 0
+JavaFieldRefTests JavaFieldRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaFinalizationRegistry JavaFinalizationRegistry stx:libjava 'Languages-Java-Support' 0
+JavaFreshlyInitializedResource JavaFreshlyInitializedResource stx:libjava 'Languages-Java-Tests' 1
+JavaInitializedResource JavaInitializedResource stx:libjava 'Languages-Java-Tests' 2
+JavaInterfaceMethodRefTests JavaInterfaceMethodRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaJUnitTests JavaJUnitTests stx:libjava 'Languages-Java-Tests-Libraries' 1
+JavaLanguage JavaLanguage stx:libjava 'Languages-Java-Support' 1
+JavaLibraries JavaLibraries stx:libjava 'Languages-Java-Support' 0
+JavaLibrariesResource JavaLibrariesResource stx:libjava 'Languages-Java-Tests' 1
+JavaLocalVariableTable JavaLocalVariableTable stx:libjava 'Languages-Java-Support' 0
+JavaLocalVariableTableEntry JavaLocalVariableTableEntry stx:libjava 'Languages-Java-Support' 0
+JavaLookup JavaLookup stx:libjava 'Languages-Java-Interop' 0
+JavaLookupResolutionAlgorithmTests JavaLookupResolutionAlgorithmTests stx:libjava 'Languages-Java-Tests-Interop' 1
+JavaLookupTests JavaLookupTests stx:libjava 'Languages-Java-Tests-Interop' 1
+JavaLookupTestsResource JavaLookupTestsResource stx:libjava 'Languages-Java-Tests-Interop' 3
+JavaMathSupport JavaMathSupport stx:libjava 'Languages-Java-Support-Native' 0
+JavaMetaclass JavaMetaclass stx:libjava 'Languages-Java-Classes' 0
+JavaMethodRefTests JavaMethodRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaMirror JavaMirror stx:libjava 'Languages-Java-Classes' 0
+JavaMonitor JavaMonitor stx:libjava 'Languages-Java-Support' 0
+JavaMonitorsTests JavaMonitorsTests stx:libjava 'Languages-Java-Tests' 1
+JavaNameAndType2 JavaNameAndType2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaNativeMemory JavaNativeMemory stx:libjava 'Languages-Java-Support' 0
+JavaNativeMemoryTests JavaNativeMemoryTests stx:libjava 'Languages-Java-Tests' 1
+JavaNioSupport JavaNioSupport stx:libjava 'Languages-Java-Support-Native' 0
+JavaObject JavaObject stx:libjava 'Languages-Java-Classes' 0
+JavaObjectDictionary JavaObjectDictionary stx:libjava 'Languages-Java-Support' 0
+JavaPackage JavaPackage stx:libjava 'Languages-Java-Support' 0
+JavaPopUpView JavaPopUpView stx:libjava 'Languages-Java-Views-Support' 2
+JavaProcess JavaProcess stx:libjava 'Languages-Java-Classes' 0
+JavaRef2 JavaRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaRefMock JavaRefMock stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 0
+JavaRefsAndConstantPoolTestCase JavaRefsAndConstantPoolTestCase stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaResolver JavaResolver stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaRuntimeConstantPoolTests JavaRuntimeConstantPoolTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaShort JavaShort stx:libjava 'Languages-Java-Support' 0
+JavaSlotIndexCache JavaSlotIndexCache stx:libjava 'Languages-Java-Support' 0
+JavaSocket JavaSocket stx:libjava 'Languages-Java-Support' 0
+JavaSourceCodeCache JavaSourceCodeCache stx:libjava 'Languages-Java-Support' 1
+JavaSourceFileWriter JavaSourceFileWriter stx:libjava 'Languages-Java-Support' 0
+JavaTestCaseProxy JavaTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
+JavaTestsLoader JavaTestsLoader stx:libjava 'Languages-Java-Tests' 0
+JavaTestsResource JavaTestsResource stx:libjava 'Languages-Java-Tests' 2
+JavaTopView JavaTopView stx:libjava 'Languages-Java-Views-Support' 2
+JavaUTF8Tests JavaUTF8Tests stx:libjava 'Languages-Java-Tests' 1
+JavaUnresolvedCompilationError JavaUnresolvedCompilationError stx:libjava 'Languages-Java-Support' 1
+JavaUnresolvedConstant JavaUnresolvedConstant stx:libjava 'Languages-Java-Reader-Support' 0
+JavaUtilities JavaUtilities stx:libjava 'Languages-Java-Utilities' 0
+JavaVMData JavaVMData stx:libjava 'Languages-Java-Support' 0
+JavaView JavaView stx:libjava 'Languages-Java-Views-Support' 2
+JavaZipSupport JavaZipSupport stx:libjava 'Languages-Java-Support-Native' 0
+ProxyMethod ProxyMethod stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodCompiler ProxyMethodCompiler stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodNode ProxyMethodNode stx:libjava 'System-Compiler-Interop' 0
+SmalltalkAppletContext SmalltalkAppletContext stx:libjava 'Languages-Java-Views-Support' 0
+SmalltalkAppletStub SmalltalkAppletStub stx:libjava 'Languages-Java-Views-Support' 0
+TestletTestCaseProxy TestletTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
+stx_libjava stx_libjava stx:libjava '* Projects & Packages *' 3
+GroovyMetaclass GroovyMetaclass stx:libjava 'Languages-Groovy-Classes' 0
+Java Java stx:libjava 'Languages-Java-Support' 0
+JavaAlienMirror JavaAlienMirror stx:libjava 'Languages-Java-Classes' 0
+JavaAnnotationArrayValue JavaAnnotationArrayValue stx:libjava 'Languages-Java-Reader-Support' 0
+JavaAnnotationClassValue JavaAnnotationClassValue stx:libjava 'Languages-Java-Reader-Support' 0
+JavaAnnotationEnumValue JavaAnnotationEnumValue stx:libjava 'Languages-Java-Reader-Support' 0
+JavaAnnotationNestedAnnotationValue JavaAnnotationNestedAnnotationValue stx:libjava 'Languages-Java-Reader-Support' 0
+JavaAnnotationPrimitiveValue JavaAnnotationPrimitiveValue stx:libjava 'Languages-Java-Reader-Support' 0
+JavaArrayMirror JavaArrayMirror stx:libjava 'Languages-Java-Classes' 0
+JavaBehavior JavaBehavior stx:libjava 'Languages-Java-Classes' 0
+JavaByteCodeDisassembler JavaByteCodeDisassembler stx:libjava 'Languages-Java-Bytecode' 0
+JavaByteCodeEnumerator JavaByteCodeEnumerator stx:libjava 'Languages-Java-Support-Decompiling' 0
+JavaByteCodeProcessorAdapter JavaByteCodeProcessorAdapter stx:libjava 'Languages-Java-Bytecode' 0
+JavaClassAnnotationContainer JavaClassAnnotationContainer stx:libjava 'Languages-Java-Annotations' 1
+JavaClassContentRef2 JavaClassContentRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaClassMirror JavaClassMirror stx:libjava 'Languages-Java-Classes' 0
+JavaClassReader JavaClassReader stx:libjava 'Languages-Java-Support' 0
+JavaClassRef2 JavaClassRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaClassRegistry JavaClassRegistry stx:libjava 'Languages-Java-Support' 0
+JavaCodeBundle JavaCodeBundle stx:libjava 'Languages-Java-Support-Libraries' 0
+JavaCodeLibrary JavaCodeLibrary stx:libjava 'Languages-Java-Support-Libraries' 0
+JavaEmbeddedFrameView JavaEmbeddedFrameView stx:libjava 'Languages-Java-Views-Support' 2
+JavaFieldAnnotationContainer JavaFieldAnnotationContainer stx:libjava 'Languages-Java-Annotations' 1
+JavaFieldDescriptor JavaFieldDescriptor stx:libjava 'Languages-Java-Support' 0
+JavaFieldDescriptorWithUnionType JavaFieldDescriptorWithUnionType stx:libjava 'Languages-Java-Support' 0
+JavaInvalidRefError JavaInvalidRefError stx:libjava 'Languages-Java-Support' 1
+JavaMethod JavaMethod stx:libjava 'Languages-Java-Classes' 0
+JavaMethodAnnotationContainer JavaMethodAnnotationContainer stx:libjava 'Languages-Java-Annotations' 1
+JavaMethodDescriptor JavaMethodDescriptor stx:libjava 'Languages-Java-Support' 0
+JavaNativeMethodImpl_OpenJDK6 JavaNativeMethodImpl_OpenJDK6 stx:libjava 'Languages-Java-Support-OpenJDK6' 0
+JavaPrimitiveMirror JavaPrimitiveMirror stx:libjava 'Languages-Java-Classes' 0
+JavaRelease JavaRelease stx:libjava 'Languages-Java-Support' 1
+JavaStringRef2 JavaStringRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaUnhandledExceptionError JavaUnhandledExceptionError stx:libjava 'Languages-Java-Support' 1
+JavaUnresolvedClassConstant JavaUnresolvedClassConstant stx:libjava 'Languages-Java-Reader-Support' 0
+JavaUnresolvedStringConstant JavaUnresolvedStringConstant stx:libjava 'Languages-Java-Reader-Support' 0
+JavaVM JavaVM stx:libjava 'Languages-Java-Support' 0
+ProxyMethodConditionNode ProxyMethodConditionNode stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodGuardNode ProxyMethodGuardNode stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodInvocationNode ProxyMethodInvocationNode stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodJavaFieldAccessor ProxyMethodJavaFieldAccessor stx:libjava 'Languages-Java-Interop' 0
+JavaByteCodePreresolver JavaByteCodePreresolver stx:libjava 'Languages-Java-Bytecode' 0
+JavaClass JavaClass stx:libjava 'Languages-Java-Classes' 0
+JavaClassPathBundle JavaClassPathBundle stx:libjava 'Languages-Java-Support-Libraries' 0
+JavaFieldRef2 JavaFieldRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaMethodRef2 JavaMethodRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaMethodWithException JavaMethodWithException stx:libjava 'Languages-Java-Classes' 0
+JavaNativeMethodImpl_OpenJDK7 JavaNativeMethodImpl_OpenJDK7 stx:libjava 'Languages-Java-Support-OpenJDK7' 0
+JavaNativeMethodImpl_SunJDK6 JavaNativeMethodImpl_SunJDK6 stx:libjava 'Languages-Java-Support-OpenJDK6' 0
+ProxyMethodAndNode ProxyMethodAndNode stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodBlockInvocationNode ProxyMethodBlockInvocationNode stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodJavaFieldGetter ProxyMethodJavaFieldGetter stx:libjava 'Languages-Java-Interop' 0
+ProxyMethodJavaFieldSetter ProxyMethodJavaFieldSetter stx:libjava 'Languages-Java-Interop' 0
+ProxyMethodMethodInvocationNode ProxyMethodMethodInvocationNode stx:libjava 'System-Compiler-Interop' 0
+ProxyMethodTypeCheckNode ProxyMethodTypeCheckNode stx:libjava 'System-Compiler-Interop' 0
+GroovyClass GroovyClass stx:libjava 'Languages-Groovy-Classes' 0
+JavaInterfaceMethodRef2 JavaInterfaceMethodRef2 stx:libjava 'Languages-Java-Reader-Support-new' 0
+JavaMethodWithHandler JavaMethodWithHandler stx:libjava 'Languages-Java-Classes' 0
+JavaNativeMethodImpl_SunJDK7 JavaNativeMethodImpl_SunJDK7 stx:libjava 'Languages-Java-Support-OpenJDK7' 0
+ProxyMethodJavaMethodInvocationNode ProxyMethodJavaMethodInvocationNode stx:libjava 'Languages-Java-Interop' 0
+ProxyMethodJavaTypeCheckNode ProxyMethodJavaTypeCheckNode stx:libjava 'Languages-Java-Interop' 0
+JavaNativeMethod JavaNativeMethod stx:libjava 'Languages-Java-Classes' 0
--- a/bc.mak Thu May 23 09:57:12 2013 +0100
+++ b/bc.mak Fri May 24 10:58:19 2013 +0100
@@ -34,7 +34,7 @@
-LOCALINCLUDES=-I$(ZLIB_DIR) -Isupport\fdlibm -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic3 -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libview
+LOCALINCLUDES=-I$(ZLIB_DIR) -Isupport\fdlibm -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic3 -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libview
LOCALDEFINES=
STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -varPrefix=$(LIBNAME)
@@ -54,8 +54,6 @@
pushd ..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
pushd ..\libbasic3 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
pushd ..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
- pushd ..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
- pushd ..\goodies\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
@@ -164,17 +162,20 @@
$(OUTDIR)stx_libjava.$(O) stx_libjava.$(H): stx_libjava.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GroovyMetaclass.$(O) GroovyMetaclass.$(H): GroovyMetaclass.st $(INCLUDE_TOP)\stx\libjava\JavaMetaclass.$(H) $(INCLUDE_TOP)\stx\libbasic\Metaclass.$(H) $(INCLUDE_TOP)\stx\libbasic\ClassDescription.$(H) $(INCLUDE_TOP)\stx\libbasic\Behavior.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)Java.$(O) Java.$(H): Java.st $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaAlienMirror.$(O) JavaAlienMirror.$(H): JavaAlienMirror.st $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationArrayValue.$(O) JavaAnnotationArrayValue.$(H): JavaAnnotationArrayValue.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationValue.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationClassValue.$(O) JavaAnnotationClassValue.$(H): JavaAnnotationClassValue.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationValue.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationEnumValue.$(O) JavaAnnotationEnumValue.$(H): JavaAnnotationEnumValue.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationValue.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationNestedAnnotationValue.$(O) JavaAnnotationNestedAnnotationValue.$(H): JavaAnnotationNestedAnnotationValue.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationValue.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaAnnotationPrimitiveValue.$(O) JavaAnnotationPrimitiveValue.$(H): JavaAnnotationPrimitiveValue.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationValue.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaArrayMirror.$(O) JavaArrayMirror.$(H): JavaArrayMirror.st $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaBehavior.$(O) JavaBehavior.$(H): JavaBehavior.st $(INCLUDE_TOP)\stx\libjava\JavaConstants.$(H) $(INCLUDE_TOP)\stx\libbasic\Class.$(H) $(INCLUDE_TOP)\stx\libbasic\ClassDescription.$(H) $(INCLUDE_TOP)\stx\libbasic\Behavior.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaByteCodeDisassembler.$(O) JavaByteCodeDisassembler.$(H): JavaByteCodeDisassembler.st $(INCLUDE_TOP)\stx\libjava\JavaByteCodeProcessor.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaByteCodeEnumerator.$(O) JavaByteCodeEnumerator.$(H): JavaByteCodeEnumerator.st $(INCLUDE_TOP)\stx\libjava\JavaDecompiler.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaByteCodeProcessorAdapter.$(O) JavaByteCodeProcessorAdapter.$(H): JavaByteCodeProcessorAdapter.st $(INCLUDE_TOP)\stx\libjava\JavaByteCodeProcessor.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassAnnotationContainer.$(O) JavaClassAnnotationContainer.$(H): JavaClassAnnotationContainer.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationContainer.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassContentRef2.$(O) JavaClassContentRef2.$(H): JavaClassContentRef2.st $(INCLUDE_TOP)\stx\libjava\JavaRef2.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaClassMirror.$(O) JavaClassMirror.$(H): JavaClassMirror.st $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassReader.$(O) JavaClassReader.$(H): JavaClassReader.st $(INCLUDE_TOP)\stx\libjava\JavaConstants.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassRef2.$(O) JavaClassRef2.$(H): JavaClassRef2.st $(INCLUDE_TOP)\stx\libjava\JavaRef2.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaClassRegistry.$(O) JavaClassRegistry.$(H): JavaClassRegistry.st $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -189,6 +190,7 @@
$(OUTDIR)JavaMethodAnnotationContainer.$(O) JavaMethodAnnotationContainer.$(H): JavaMethodAnnotationContainer.st $(INCLUDE_TOP)\stx\libjava\JavaAnnotationContainer.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaMethodDescriptor.$(O) JavaMethodDescriptor.$(H): JavaMethodDescriptor.st $(INCLUDE_TOP)\stx\libjava\JavaDescriptor.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaNativeMethodImpl_OpenJDK6.$(O) JavaNativeMethodImpl_OpenJDK6.$(H): JavaNativeMethodImpl_OpenJDK6.st $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaPrimitiveMirror.$(O) JavaPrimitiveMirror.$(H): JavaPrimitiveMirror.st $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaRelease.$(O) JavaRelease.$(H): JavaRelease.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaStringRef2.$(O) JavaStringRef2.$(H): JavaStringRef2.st $(INCLUDE_TOP)\stx\libjava\JavaRef2.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)JavaUnhandledExceptionError.$(O) JavaUnhandledExceptionError.$(H): JavaUnhandledExceptionError.st $(INCLUDE_TOP)\stx\libjava\JavaError.$(H) $(INCLUDE_TOP)\stx\libbasic\Error.$(H) $(INCLUDE_TOP)\stx\libbasic\Exception.$(H) $(INCLUDE_TOP)\stx\libbasic\GenericException.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
--- a/bmake.bat Thu May 23 09:57:12 2013 +0100
+++ b/bmake.bat Fri May 24 10:58:19 2013 +0100
@@ -10,6 +10,13 @@
make.exe -N -f bc.mak %DEFINES% %*
@echo "***********************************"
+@echo "Buildung stx/libjava/tools
+@echo "***********************************"
+@cd tools
+@call bmake %1 %2
+@cd ..
+
+@echo "***********************************"
@echo "Buildung stx/libjava/experiments
@echo "***********************************"
@cd experiments
--- a/lccmake.bat Thu May 23 09:57:12 2013 +0100
+++ b/lccmake.bat Fri May 24 10:58:19 2013 +0100
@@ -6,6 +6,13 @@
make.exe -N -f bc.mak -DUSELCC=1 %*
@echo "***********************************"
+@echo "Buildung stx/libjava/tools
+@echo "***********************************"
+@cd tools
+@call lccmake %1 %2
+@cd ..
+
+@echo "***********************************"
@echo "Buildung stx/libjava/experiments
@echo "***********************************"
@cd experiments
--- a/libInit.cc Thu May 23 09:57:12 2013 +0100
+++ b/libInit.cc Fri May 24 10:58:19 2013 +0100
@@ -93,17 +93,20 @@
_stx_137libjava_Init(pass,__pRT__,snd);
_GroovyMetaclass_Init(pass,__pRT__,snd);
_Java_Init(pass,__pRT__,snd);
+_JavaAlienMirror_Init(pass,__pRT__,snd);
_JavaAnnotationArrayValue_Init(pass,__pRT__,snd);
_JavaAnnotationClassValue_Init(pass,__pRT__,snd);
_JavaAnnotationEnumValue_Init(pass,__pRT__,snd);
_JavaAnnotationNestedAnnotationValue_Init(pass,__pRT__,snd);
_JavaAnnotationPrimitiveValue_Init(pass,__pRT__,snd);
+_JavaArrayMirror_Init(pass,__pRT__,snd);
_JavaBehavior_Init(pass,__pRT__,snd);
_JavaByteCodeDisassembler_Init(pass,__pRT__,snd);
_JavaByteCodeEnumerator_Init(pass,__pRT__,snd);
_JavaByteCodeProcessorAdapter_Init(pass,__pRT__,snd);
_JavaClassAnnotationContainer_Init(pass,__pRT__,snd);
_JavaClassContentRef2_Init(pass,__pRT__,snd);
+_JavaClassMirror_Init(pass,__pRT__,snd);
_JavaClassReader_Init(pass,__pRT__,snd);
_JavaClassRef2_Init(pass,__pRT__,snd);
_JavaClassRegistry_Init(pass,__pRT__,snd);
@@ -118,6 +121,7 @@
_JavaMethodAnnotationContainer_Init(pass,__pRT__,snd);
_JavaMethodDescriptor_Init(pass,__pRT__,snd);
_JavaNativeMethodImpl_137OpenJDK6_Init(pass,__pRT__,snd);
+_JavaPrimitiveMirror_Init(pass,__pRT__,snd);
_JavaRelease_Init(pass,__pRT__,snd);
_JavaStringRef2_Init(pass,__pRT__,snd);
_JavaUnhandledExceptionError_Init(pass,__pRT__,snd);
--- a/libjava.rc Thu May 23 09:57:12 2013 +0100
+++ b/libjava.rc Fri May 24 10:58:19 2013 +0100
@@ -25,7 +25,7 @@
VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2011\nCopyright eXept Software AG 1998-2011\nCopyright Jan Vrany, Jan Kurs and Marcel Hlopko\n SWING Research Group, Czech Technical University In Prague\0"
VALUE "ProductName", "Smalltalk/X\0"
VALUE "ProductVersion", "6.2.3.0\0"
- VALUE "ProductDate", "Wed, 22 May 2013 20:13:57 GMT\0"
+ VALUE "ProductDate", "Fri, 24 May 2013 09:56:29 GMT\0"
END
END
--- a/mingwmake.bat Thu May 23 09:57:12 2013 +0100
+++ b/mingwmake.bat Fri May 24 10:58:19 2013 +0100
@@ -14,6 +14,13 @@
make.exe -N -f bc.mak %DEFINES% %USEMINGW_ARG% %*
@echo "***********************************"
+@echo "Buildung stx/libjava/tools
+@echo "***********************************"
+@cd tools
+@call mingwmake %1 %2
+@cd ..
+
+@echo "***********************************"
@echo "Buildung stx/libjava/experiments
@echo "***********************************"
@cd experiments
--- a/stx_libjava.st Thu May 23 09:57:12 2013 +0100
+++ b/stx_libjava.st Fri May 24 10:58:19 2013 +0100
@@ -158,7 +158,6 @@
exclude individual packages in the #excludedFromPreRequisites method."
^ #(
- #'stx:goodies/sunit' "TestAsserter - superclass of JavaByteCodeProcessorTests "
#'stx:libbasic' "AbstractNumberVector - extended "
#'stx:libbasic2' "BitArray - extended "
#'stx:libbasic3' "WrappedMethod - extended "
@@ -175,6 +174,7 @@
exclude individual packages in the #excludedFromPreRequisites method."
^ #(
+ #'stx:goodies/sunit' "TestSuite - referenced by JavaTestsLoader class>>buildSuiteFrom: "
#'stx:libcomp' "BlockNode - referenced by JavaNativeMethod>>numberOfArgs: "
#'stx:libhtml' "URL - referenced by JavaEmbeddedFrameView>>setupAppletFrameIn:initializeJava: "
#'stx:libjava/experiments' "JavaByteCodeInterpreter - referenced by JavaMethod>>interpretWithReceiver:arguments: "
@@ -193,6 +193,7 @@
for those, redefine requiredPrerequisites"
^ #(
+ #'stx:libjava/tools'
#'stx:libjava/experiments'
)
! !
@@ -399,17 +400,20 @@
#'stx_libjava'
GroovyMetaclass
Java
+ JavaAlienMirror
JavaAnnotationArrayValue
JavaAnnotationClassValue
JavaAnnotationEnumValue
JavaAnnotationNestedAnnotationValue
JavaAnnotationPrimitiveValue
+ JavaArrayMirror
JavaBehavior
JavaByteCodeDisassembler
JavaByteCodeEnumerator
JavaByteCodeProcessorAdapter
JavaClassAnnotationContainer
JavaClassContentRef2
+ JavaClassMirror
JavaClassReader
JavaClassRef2
JavaClassRegistry
@@ -424,6 +428,7 @@
JavaMethodAnnotationContainer
JavaMethodDescriptor
#'JavaNativeMethodImpl_OpenJDK6'
+ JavaPrimitiveMirror
JavaRelease
JavaStringRef2
JavaUnhandledExceptionError
--- a/vcmake.bat Thu May 23 09:57:12 2013 +0100
+++ b/vcmake.bat Fri May 24 10:58:19 2013 +0100
@@ -18,6 +18,13 @@
@echo "***********************************"
+@echo "Buildung stx/libjava/tools
+@echo "***********************************"
+@cd tools
+@call vcmake %1 %2
+@cd ..
+
+@echo "***********************************"
@echo "Buildung stx/libjava/experiments
@echo "***********************************"
@cd experiments