--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/extensions.st Fri Aug 19 08:58:19 2011 +0000
@@ -0,0 +1,872 @@
+"{ Package: 'stx:libjava' }"
+
+!
+
+!BooleanArray methodsFor:'queries'!
+
+isInterface
+
+ ^false
+
+ "Created: / 31-05-2011 / 16:07:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object methodsFor:'testing'!
+
+isJavaArray
+
+ ^self class isJavaArrayClass
+
+ "Created: / 19-12-2010 / 17:05:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object methodsFor:'testing'!
+
+isJavaNameAndType
+ "return true, if given object represents name and type struct in java constant pool"
+
+ ^ false.
+
+ "Created: / 10-05-2011 / 12:21:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+! !
+!Object methodsFor:'testing'!
+
+isJavaPackage
+ "return true, if this is a java package.
+ false is returned here - the method is only redefined in JavaPackage."
+
+ ^ false
+
+ "Created: / 09-08-2011 / 09:35:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object methodsFor:'testing'!
+
+isJavaRef
+"return true, if given object represents reference in java constant pool"
+^ false.
+
+ "Created: / 08-04-2011 / 16:12:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+! !
+!Object methodsFor:'autoboxing support'!
+
+javaBox: anObject
+
+ ^anObject
+
+ "Created: / 15-08-2011 / 10:52:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object methodsFor:'autoboxing support'!
+
+javaUnbox: anObject
+
+ ^anObject
+
+ "Created: / 15-08-2011 / 10:52:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!String methodsFor:'converting'!
+
+asArrayOfSubstringsSeparatedBy:aSeparator
+ "Modified version of asArrayOfSubstrings"
+
+ |substrings start end|
+
+ substrings := OrderedCollection new.
+ start := 1.
+ [start <= self size] whileTrue:[
+ (self at:start) = aSeparator ifFalse:[
+ end := start + 1.
+ [
+ end <= self size and:[(self at:end) ~= aSeparator]
+ ] whileTrue:[end := end + 1].
+ substrings add:(self copyFrom:start to:end - 1).
+ start := end - 1
+ ].
+ start := start + 1
+ ].
+ ^ substrings asArray
+
+ "Created: / 07-02-2011 / 11:18:03 / Marcel Hlopko <hlopik@gmail.com>"
+ "Modified: / 08-02-2011 / 01:08:15 / Marcel Hlopko <hlopik@gmail.com>"
+! !
+!UserPreferences methodsFor:'accessing-java-devel'!
+
+javaTestsDirectory
+ ^ self at: #javaTestsDirectory
+ ifAbsent:
+ [ | nm |
+
+ nm := OperatingSystem getLoginName.
+ "Default path for Jan"
+ nm = 'jv'
+ ifTrue:
+ [ '/home/jv/Projects/libjava/sources/libjava/branches/jk_new_structure/tests' ]
+ ifFalse:
+ [ "Default path for Jan (the other one :-)"
+ nm = 'jk'
+ ifTrue: [ 'path for Jan' ]
+ ifFalse:
+ [ "Default path for Marcel"
+ nm = 'm'
+ ifTrue: [ '/home/m/Projects/libjava/branches/jk_new_structure/tests' ]
+ ifFalse:
+ [ | "Look into package dir" p |
+
+ (p := (Smalltalk getPackageDirectoryForPackage: 'stx:libjava') asFilename
+ / 'tests') exists
+ ifTrue: [ p pathName ]
+ ifFalse:
+ [ | "Try the environment variable (used by Hudson)" p |
+
+ (p := OperatingSystem getEnvironment: 'LIBJAVA_TESTS') notNil
+ ifTrue: [ p ]
+ ifFalse:
+ [ "No default, trigger an error"
+ self error: 'No tests path specified' ] ] ] ] ] ]
+
+ "
+ UserPreferences current javaTestsDirectory"
+
+ "Created: / 07-05-2011 / 17:43:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 07-05-2011 / 20:21:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 12-05-2011 / 15:54:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+! !
+!UserPreferences methodsFor:'accessing-java-devel'!
+
+javaTestsDirectory: aStringOrFilename
+
+ self at:#javaTestsDirectory put: aStringOrFilename asString.
+
+ "Created: / 07-05-2011 / 17:45:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ZipArchive methodsFor:'reading - java support'!
+
+nextBytes: bytesToRead of: zmember startingAt: pos into: b startingAt: off
+
+ file position0Based: zmember fileStart + startOfArchive + pos.
+ ^ file nextBytes: bytesToRead into: b startingAt: off.
+
+ "Created: / 01-05-2011 / 16:21:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Boolean class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^true
+
+ "Created: / 25-02-2011 / 08:22:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Boolean class methodsFor:'queries'!
+
+javaArrayClass
+ ^ BooleanArray
+
+ "Created: / 25-02-2011 / 08:27:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Boolean class methodsFor:'autoboxing support'!
+
+javaBox:anObject
+
+ | wrapper |
+
+ wrapper := (Java classForName: 'java.lang.Boolean') new.
+ wrapper perform: #'<init>(Z)V' with: anObject.
+ ^wrapper
+
+ "Created: / 14-08-2011 / 22:54:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Boolean class methodsFor:'accessing'!
+
+javaName
+
+ ^'boolean'.
+
+ "Modified: / 25-02-2011 / 18:58:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!BooleanArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!BooleanArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 20-12-2010 / 22:47:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!BooleanArray class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ "Java arrays are reference types"
+ ^true
+
+ "Created: / 20-12-2010 / 22:30:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!BooleanArray class methodsFor:'accessing-java'!
+
+javaComponentClass
+
+ ^Boolean
+
+ "Created: / 20-12-2010 / 22:13:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!BooleanArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'[X'.
+
+ "Modified: / 25-02-2011 / 19:03:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ByteArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!ByteArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 05-02-2011 / 22:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ByteArray class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ "Java arrays are reference types"
+ ^true
+
+ "Created: / 20-12-2010 / 22:30:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ByteArray class methodsFor:'accessing-java'!
+
+javaArrayClass
+
+ ^JavaArray javaArrayClassFor: self
+
+ "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ByteArray class methodsFor:'accessing-java'!
+
+javaComponentClass
+
+ ^Byte
+
+ "Created: / 20-12-2010 / 22:05:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ByteArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'[B'.
+
+ "Modified: / 25-02-2011 / 19:02:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Character class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^true
+
+ "Created: / 20-12-2010 / 22:18:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Character class methodsFor:'accessing'!
+
+javaArrayClass
+ ^ String
+
+ "Created: / 11-02-2011 / 10:44:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Character class methodsFor:'autoboxing support'!
+
+javaBox:anObject
+
+| wrapper |
+
+wrapper := (Java classForName: 'java.lang.Character') new.
+wrapper perform: #'<init>(C)V' with: anObject.
+^wrapper
+
+ "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Character class methodsFor:'accessing'!
+
+javaName
+
+ ^'char'.
+
+ "Modified: / 25-02-2011 / 18:58:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!CharacterArray class methodsFor:'encoding & decoding'!
+
+decodeFromJavaUTF8: bytes
+ "Decodes a string from modified UTF8 encoding
+ as used in Java .class files. see
+ 'The class file format specification', section 4.5.7"
+
+ | string i s b codePoint realLength |
+
+ string := String new: bytes size.
+ realLength := bytes size.
+ s := bytes readStream.
+ i := 1.
+ [ s atEnd ] whileFalse:
+ [ b := s next.
+ (b & 2r10000000) == 0
+ ifTrue: [ codePoint := b ]
+ ifFalse:
+ [ self assert: (b & 2r01000000) = 2r01000000.
+ (b & 2r00100000) = 0
+ ifTrue:
+ [ "two byte utf char"
+ realLength := realLength - 1.
+ self assert: s size > 0.
+ self assert: (b & 2r01000000) = 2r01000000.
+ string bitsPerCharacter = 8
+ ifTrue: [ string := Unicode16String fromString: string ].
+ codePoint := (b & 2r00011111) << 6.
+ b := s next.
+ self assert: (b & 2r11000000) = 2r10000000.
+ codePoint := codePoint + (b & 2r00111111). ]
+ ifFalse:
+ [ "at lease 3 byte utf char"
+ realLength := realLength - 2.
+ string bitsPerCharacter ~= 16"was: 32"
+ ifTrue: [ string := Unicode16String"was: Unicode32String" fromString: string ].
+ self assert: s size > 1.
+ (b & 2r00010000) = 0
+ ifTrue:
+ [ | utf32Possible utf32Value |
+
+ "3 or 6 byte utf char"
+ self assert: s size > 1.
+ s size < 5
+ ifTrue: [ utf32Possible := false ]
+ ifFalse: [ utf32Possible := true ].
+ b ~= 2r11101101 ifTrue: [ utf32Possible := false ].
+ codePoint := (b & 2r00001111) << 12.
+ b := s next.
+ self assert: (b & 2r11000000) = 2r10000000.
+ ((b & 2r11110000) = 2r10100000 and: [ utf32Possible ])
+ ifTrue: [ utf32Value := 2r00010000 + ((b & 2r00001111) << 16) ]
+ ifFalse: [ utf32Possible := false ].
+ codePoint := codePoint + ((b & 2r00111111) << 6).
+ b := s next.
+ self assert: (b & 2r11000000) = 2r10000000.
+ utf32Possible
+ ifTrue: [ utf32Value := utf32Value + ((b & 2r00111111) << 10) ].
+ codePoint := codePoint + (b & 2r00111111).
+ utf32Possible
+ ifTrue:
+ [ | tmpB |
+
+ tmpB := s copy.
+ b := tmpB next.
+ b = 2r11101101
+ ifTrue:
+ [ b := tmpB next.
+ (b & 2r11110000) = 2r10110000
+ ifTrue:
+ [ utf32Value := utf32Value + ((b & 2r00001111) << 6).
+ b := tmpB next.
+ self assert: (b & 2r11000000) = 2r10000000.
+ utf32Value := utf32Value + (b & 2r00111111).
+ codePoint := utf32Value.
+ realLength := realLength - 3. s position: tmpB position.] ] ] ]
+ ifFalse:
+ [ "should not happen, ask mh"
+ self halt. ] ] ].
+ string at: i put: (Character codePoint: codePoint).
+ i := i + 1. ].
+ ^ string subString: 1 to: realLength.
+
+ "
+ String decodeFromJavaUTF8: 'Hello world' asByteArray"
+
+ "Created: / 22-12-2010 / 23:45:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 09-02-2011 / 01:12:25 / Marcel Hlopko <hlopik@gmail.com>"
+ "Modified: / 13-03-2011 / 15:52:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+ "Modified: / 10-08-2011 / 01:00:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!CharacterArray class methodsFor:'instance creation'!
+
+fromJavaUTF8Bytes:aByteCollection
+ "return a new string which represents the characters as decoded
+ from the modified utf8 encoded bytes as specified in
+ The class file format specification, section 4.5.7"
+
+ ^ self decodeFromJavaUTF8:aByteCollection.
+
+ "
+ CharacterArray fromUTF8Bytes:#[ 16r41 16r42 ]
+ CharacterArray fromUTF8Bytes:#[ 16rC1 16r02 ]
+ CharacterArray fromUTF8Bytes:#[ 16rE0 16r81 16r02 ]
+ CharacterArray fromUTF8Bytes:#[ 16rEF 16rBF 16rBF ]
+
+ rfc2279 examples:
+ CharacterArray fromUTF8Bytes:#[ 16r41 16rE2 16r89 16rA2 16rCE 16r91 16r2E ]
+ CharacterArray fromUTF8Bytes:#[ 16rED 16r95 16r9C 16rEA 16rB5 16rAD 16rEC 16r96 16rB4 ]
+ CharacterArray fromUTF8Bytes:#[ 16rE6 16r97 16rA5 16rE6 16r9C 16rAC 16rE8 16rAA 16r9E ]
+
+ invalid:
+ CharacterArray fromUTF8Bytes:#[ 16rC0 16r80 ]
+ CharacterArray fromUTF8Bytes:#[ 16rE0 16r80 16r80 ]
+ "
+
+ "Created: / 23-12-2010 / 09:01:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!CharacterArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 05-02-2011 / 22:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!CharacterArray class methodsFor:'accessing-java'!
+
+javaArrayClass
+
+ ^JavaArray javaArrayClassFor: Unicode16String
+
+ "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 10-08-2011 / 13:18:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!CharacterArray class methodsFor:'accessing-java'!
+
+javaComponentClass
+
+ ^Character
+
+ "Created: / 20-12-2010 / 22:05:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!DoubleArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!DoubleArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 20-12-2010 / 22:47:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!DoubleArray class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ "Java arrays are reference types"
+ ^true
+
+ "Created: / 20-12-2010 / 22:30:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!DoubleArray class methodsFor:'accessing-java'!
+
+javaComponentClass
+
+ ^Float
+
+ "Created: / 20-12-2010 / 22:06:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!DoubleArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'[D'.
+
+ "Modified: / 25-02-2011 / 19:03:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Float class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^true
+
+ "Created: / 06-02-2011 / 17:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Float class methodsFor:'accessing'!
+
+javaArrayClass
+ ^ DoubleArray
+
+ "Created: / 11-02-2011 / 10:50:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Float class methodsFor:'autoboxing support'!
+
+javaBox:anObject
+
+ | wrapper |
+
+ wrapper := (Java classForName: 'java.lang.Double') new.
+ wrapper perform: #'<init>(D)V' with: anObject.
+ ^wrapper
+
+ "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Float class methodsFor:'accessing'!
+
+javaName
+
+ ^'double'.
+
+ "Modified: / 25-02-2011 / 18:59:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!FloatArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!FloatArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 20-12-2010 / 22:47:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!FloatArray class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ "Java arrays are reference types"
+ ^true
+
+ "Created: / 20-12-2010 / 22:30:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!FloatArray class methodsFor:'accessing-java'!
+
+javaComponentClass
+
+ ^ShortFloat
+
+ "Created: / 20-12-2010 / 22:06:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!FloatArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'[F'.
+
+ "Modified: / 25-02-2011 / 19:03:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!GenericToolbarIconLibrary class methodsFor:'image specs'!
+
+javaClassBrowserIcon
+ "This resource specification was automatically generated
+ by the ImageEditor of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the ImageEditor may not be able to read the specification."
+
+ "
+ self javaClassBrowserIcon inspect
+ ImageEditor openOnClass:self andSelector:#javaClassBrowserIcon
+ Icon flushCachedIcons
+ "
+
+ <resource: #image>
+
+ ^Icon
+ constantNamed:'GenericToolbarIconLibrary class javaClassBrowserIcon'
+ ifAbsentPut:[(Depth24Image new) width: 13; height: 11; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@96<@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@96<@96<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@') ; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@\CA0LG@0\CA0LG@0\CA0\GA \@A0@a') ; yourself); yourself]
+! !
+!Integer class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^true
+
+ "Created: / 11-02-2011 / 11:12:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Integer class methodsFor:'accessing'!
+
+javaArrayClass
+ ^ SignedIntegerArray
+
+ "Created: / 11-02-2011 / 10:51:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Integer class methodsFor:'autoboxing support'!
+
+javaBox:anObject
+
+ | wrapper |
+
+ wrapper := (Java classForName: 'java.lang.Integer') new.
+ wrapper perform: #'<init>(I)V' with: anObject.
+ ^wrapper
+
+ "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Integer class methodsFor:'accessing'!
+
+javaName
+
+ ^'int'.
+
+ "Modified: / 25-02-2011 / 18:59:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!LargeInteger class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^true
+
+ "Created: / 04-02-2011 / 11:55:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!LargeInteger class methodsFor:'accessing'!
+
+javaArrayClass
+ ^ SignedLongIntegerArray
+
+ "Created: / 11-02-2011 / 10:51:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!LargeInteger class methodsFor:'autoboxing support'!
+
+javaBox:anObject
+
+ | wrapper |
+
+ wrapper := (Java classForName: 'java.lang.Long') new.
+ wrapper perform: #'<init>(J)V' with: anObject.
+ ^wrapper
+
+ "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!LargeInteger class methodsFor:'accessing'!
+
+javaName
+
+ ^'long'.
+
+ "Modified: / 25-02-2011 / 18:59:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^false
+
+ "Created: / 19-12-2010 / 17:05:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object class methodsFor:'queries'!
+
+isJavaClassType
+
+ ^false
+
+ "Created: / 11-02-2011 / 08:08:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^false
+
+ "Created: / 20-12-2010 / 21:52:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ ^false
+
+ "Created: / 20-12-2010 / 21:52:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!Object class methodsFor:'queries'!
+
+isJavaType
+
+ ^false
+
+ "Created: / 20-12-2010 / 21:52:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ShortFloat class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ ^true
+
+ "Created: / 06-02-2011 / 17:21:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ShortFloat class methodsFor:'accessing'!
+
+javaArrayClass
+ ^ FloatArray
+
+ "Created: / 11-02-2011 / 10:50:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ShortFloat class methodsFor:'autoboxing support'!
+
+javaBox:anObject
+
+ | wrapper |
+
+ wrapper := (Java classForName: 'java.lang.Float') new.
+ wrapper perform: #'<init>(F)V' with: anObject.
+ ^wrapper
+
+ "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!ShortFloat class methodsFor:'accessing'!
+
+javaName
+
+ ^'float'.
+
+ "Modified: / 25-02-2011 / 18:59:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedIntegerArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!SignedIntegerArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 06-02-2011 / 15:16:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedIntegerArray class methodsFor:'accessing-java'!
+
+javaArrayClass
+
+ ^JavaArray javaArrayClassFor: SignedIntegerArray
+
+ "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 10-08-2011 / 22:47:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedIntegerArray class methodsFor:'accessing'!
+
+javaComponentClass
+
+ ^ Integer
+
+ "Created: / 25-06-2011 / 08:38:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedIntegerArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'[I'.
+
+ "Modified: / 25-02-2011 / 19:03:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedLongIntegerArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!SignedLongIntegerArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 20-12-2010 / 22:47:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedLongIntegerArray class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ "Java arrays are reference types"
+ ^true
+
+ "Created: / 20-12-2010 / 22:30:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedLongIntegerArray class methodsFor:'accessing'!
+
+javaComponentClass
+
+ ^LargeInteger
+
+ "Modified: / 25-06-2011 / 08:38:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!SignedLongIntegerArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'[J'.
+
+ "Modified: / 25-02-2011 / 19:03:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!UndefinedObject class methodsFor:'queries'!
+
+isJavaPrimitiveType
+
+ "void"
+
+ ^true
+
+ "Created: / 21-12-2010 / 22:52:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!UndefinedObject class methodsFor:'accessing'!
+
+javaName
+
+ ^'void'.
+
+ "Modified: / 25-02-2011 / 18:59:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!WordArray class methodsFor:'testing'!
+
+isInterface
+
+ ^false
+! !
+!WordArray class methodsFor:'queries'!
+
+isJavaArrayClass
+
+ ^true
+
+ "Created: / 20-12-2010 / 22:47:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!WordArray class methodsFor:'queries'!
+
+isJavaReferenceType
+
+ "Java arrays are reference types"
+ ^true
+
+ "Created: / 20-12-2010 / 22:30:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!WordArray class methodsFor:'accessing-java'!
+
+javaArrayClass
+
+ ^JavaArray javaArrayClassFor: WordArray
+
+ "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 10-08-2011 / 22:46:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!WordArray class methodsFor:'accessing-java'!
+
+javaComponentClass
+
+ ^Short
+
+ "Created: / 20-12-2010 / 22:13:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+!WordArray class methodsFor:'accessing'!
+
+javaName
+
+ ^'['.
+! !
\ No newline at end of file