extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 27 May 2014 13:18:11 +0100
changeset 3113 3cdcaf15c918
parent 3112 1f8c991bc1d2
parent 3108 b442904eec25
child 3125 012cc8eddb86
permissions -rw-r--r--
Merged 1f8c991bc1d2 and b442904eec25
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
     1
"{ Package: 'stx:libjava' }"!
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     2
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     3
!Behavior methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     4
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     5
isInterface
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     6
    "return true, if the receiver is a Java interface"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     7
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     8
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
     9
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    10
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    11
     True isInterface
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    12
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    13
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    14
    "Created: / 22-02-2012 / 21:53:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    15
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    16
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    17
!Behavior methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    18
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    19
isJavaPrimitiveType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    20
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    21
    ^false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    22
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    23
    "Created: / 20-12-2010 / 21:52:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    24
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    25
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    26
!Boolean class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    27
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    28
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    29
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    30
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    31
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    32
    "Created: / 25-02-2011 / 08:22:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    33
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    34
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    35
!Boolean class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    36
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    37
javaArrayClass
2993
ed8cd8e5a16d Added JavaBooleanArray to represent boolean[].
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2974
diff changeset
    38
    ^ JavaBooleanArray
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    39
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    40
    "Created: / 25-02-2011 / 08:27:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2993
ed8cd8e5a16d Added JavaBooleanArray to represent boolean[].
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2974
diff changeset
    41
    "Modified: / 31-01-2014 / 12:31:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    42
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    43
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    44
!Boolean class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    45
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    46
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    47
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    48
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    49
    wrapper := (JavaVM classForName: 'java.lang.Boolean') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    50
    wrapper perform: #'<init>(Z)V' with: anObject.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    51
    ^ wrapper
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    52
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    53
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    54
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    55
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    56
!Boolean class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    57
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    58
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    59
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    60
    ^'boolean'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    61
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    62
    "Modified: / 25-02-2011 / 18:58:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    63
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    64
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    65
!Boolean class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    66
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    67
javaUnbox: object onError: errorBlock
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    68
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    69
    | value |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    70
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
    71
    (object class binaryName = 'java/lang/Boolean') ifFalse:[
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    72
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    73
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    74
    value := object instVarNamed: #value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    75
    (value ~~ 0 and:[value ~~ 1]) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    76
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    77
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    78
    ^value
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    79
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    80
    "Created: / 22-11-2011 / 11:52:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
    81
    "Modified: / 08-10-2013 / 22:41:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    82
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    83
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    84
!Boolean class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    85
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    86
javaUnwrap: zeroOrOne
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    87
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    88
    ^zeroOrOne == 1
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    89
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    90
    "Created: / 10-12-2011 / 20:00:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    91
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    92
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    93
!Boolean class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    94
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    95
javaWrap: boolean
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    96
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    97
    ^boolean ifTrue:[1] ifFalse:[0].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    98
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    99
    "Created: / 18-03-2012 / 22:03:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   100
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   101
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   102
!Boolean class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   103
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   104
javaWrapRequired
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   105
    ^true
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   106
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   107
    "Created: / 29-11-2012 / 23:02:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   108
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   109
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   110
!Boolean class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   111
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   112
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   113
    ^(JavaVM classForName: 'java.lang.Boolean')
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   114
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   115
    "Created: / 24-02-2012 / 19:43:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   116
    "Modified: / 07-05-2013 / 11:21:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   117
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   118
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   119
!ByteArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   120
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   121
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   122
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   123
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   124
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   125
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   126
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   127
!ByteArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   128
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   129
_CHECKCAST: cls
2974
36b5b06398b5 Fix in ByteArray>>_CHECKCAST:/_INSTANCEOF: (typo/copy paste error)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2965
diff changeset
   130
    ^cls == ByteArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   131
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   132
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   133
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   134
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   135
!ByteArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   136
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   137
_INSTANCEOF: cls
2974
36b5b06398b5 Fix in ByteArray>>_CHECKCAST:/_INSTANCEOF: (typo/copy paste error)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2965
diff changeset
   138
    ^ByteArray == cls ifTrue:[1] ifFalse:[0]
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   139
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   140
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   141
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   142
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   143
!ByteArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   144
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   145
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   146
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   147
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   148
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   149
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   150
!ByteArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   151
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   152
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   153
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   154
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   155
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   156
    "Created: / 05-02-2011 / 22:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   157
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   158
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   159
!ByteArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   160
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   161
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   162
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   163
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   164
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   165
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   166
    "Created: / 20-12-2010 / 22:30:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   167
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   168
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   169
!ByteArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   170
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   171
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   172
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   173
    ^JavaArray javaArrayClassFor: self
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   174
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   175
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   176
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   177
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   178
!ByteArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   179
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   180
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   181
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   182
    ^JavaByte
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   183
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   184
    "Created: / 20-12-2010 / 22:05:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   185
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   186
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   187
!ByteArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   188
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   189
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   190
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   191
    ^'[B'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   192
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   193
    "Modified: / 25-02-2011 / 19:02:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   194
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   195
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   196
!Character class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   197
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   198
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   199
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   200
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   201
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   202
    "Created: / 20-12-2010 / 22:18:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   203
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   204
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   205
!Character class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   206
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   207
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   208
    ^ String
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   209
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   210
    "Created: / 11-02-2011 / 10:44:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   211
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   212
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   213
!Character class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   214
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   215
javaBox: anObject
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   216
    | wrapper |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   217
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   218
    wrapper := (JavaVM classForName: 'java.lang.Character') new.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   219
    wrapper perform: #'<init>(C)V' with: anObject codePoint.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   220
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   221
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   222
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   223
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   224
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   225
!Character class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   226
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   227
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   228
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   229
    ^'char'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   230
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   231
    "Modified: / 25-02-2011 / 18:58:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   232
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   233
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   234
!Character class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   235
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   236
javaUnbox: object onError: errorBlock
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   237
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   238
    | value |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   239
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   240
    (object class binaryName = 'java/lang/Character') ifFalse:[
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   241
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   242
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   243
    value := object instVarNamed: #value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   244
    (value between: 0 and: 255) ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   245
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   246
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   247
    ^value
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   248
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   249
    "Created: / 22-11-2011 / 11:52:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   250
    "Modified: / 08-10-2013 / 22:41:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   251
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   252
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   253
!Character class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   254
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   255
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   256
    ^(JavaVM classForName: 'java.lang.Character')
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   257
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   258
    "Created: / 24-02-2012 / 19:42:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   259
    "Modified: / 07-05-2013 / 11:21:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   260
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   261
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   262
!CharacterArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   263
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   264
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   265
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   266
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   267
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   268
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   269
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   270
!CharacterArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   271
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   272
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   273
    cls == Unicode16String ifTrue:[^self].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   274
    cls == String          ifTrue:[^self].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   275
    ^JavaVM throwClassCastException.
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   276
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   277
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   278
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   279
    "Modified: / 14-05-2013 / 11:10:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   280
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   281
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   282
!CharacterArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   283
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   284
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   285
    cls == Unicode16String ifTrue:[^1].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   286
    cls == String          ifTrue:[^1].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   287
    ^0
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   288
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   289
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   290
    "Modified: / 14-05-2013 / 11:10:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   291
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   292
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   293
!CharacterArray methodsFor:'java conversions'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   294
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   295
asDottedJavaClassName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   296
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   297
 "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   298
    examples:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   299
    java.lang.String
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   300
    [[[Ljava/lang/Object; => java.lang.Object
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   301
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   302
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   303
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   304
    | nm |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   305
    nm := self asJavaComponentClassName.
3112
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   306
    (nm first == $L) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   307
        nm := nm copyFrom: 2 to: nm size - 1.
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   308
        (nm includes: $/) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   309
            "/ No need to do another copt here!!
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   310
            nm replaceAll: $/ with: $.            
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   311
        ].
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   312
    ] ifFalse:[
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   313
        (nm includes: $/) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   314
            nm := nm copyReplaceAll: $/ with: $.
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   315
        ].
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   316
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   317
    ^ nm.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   318
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   319
    "Created: / 21-10-2011 / 12:31:51 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   320
    "Created: / 30-10-2011 / 17:41:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3112
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   321
    "Modified: / 27-05-2014 / 12:29:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   322
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   323
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   324
!CharacterArray methodsFor:'java conversions'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   325
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   326
asJavaComponentClassName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   327
    | componentClassName |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   328
3112
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   329
    componentClassName := self "utf8Encoded".
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   330
    (componentClassName first == $[) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   331
        componentClassName := componentClassName copyFrom: (componentClassName lastIndexOf: $[) + 1
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   332
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   333
    ^ componentClassName.
3112
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   334
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   335
    "Modified: / 27-05-2014 / 12:25:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   336
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   337
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   338
!CharacterArray methodsFor:'java conversions'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   339
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   340
asNiceJavaClassName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   341
    | niceName |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   342
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   343
    niceName := self asJavaComponentClassName asSTXInternalJavaClassName.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   344
    (self occurrencesOf: $[) timesRepeat: [ niceName := niceName , '[]' ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   345
    niceName := niceName asString copyReplaceAll: $/ with: $..
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   346
    ^ niceName.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   347
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   348
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   349
!CharacterArray methodsFor:'java conversions'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   350
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   351
asSTXInternalJavaClassName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   352
    | internalName |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   354
    internalName := self asJavaComponentClassName.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   355
    (internalName startsWith: $L) ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   356
	internalName := internalName copyFrom: 2 to: internalName size - 1
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   357
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   358
    (internalName includes: $.) ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   359
	internalName := internalName asString copyReplaceAll: $. with: $/
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   360
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   361
    ^internalName.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   362
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   363
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   364
!CharacterArray methodsFor:'java conversions'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   365
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   366
asSlashedJavaClassName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   367
    "removes square brackets and adds slashes"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   368
    | internalName |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   369
    internalName := self asJavaComponentClassName.
3112
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   370
    (internalName first == $L) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   371
        internalName := internalName copyFrom: 2 to: internalName size - 1.
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   372
        "/ No need to do another copy here
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   373
        (internalName includes: $.) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   374
            internalName replaceAll: $. with: $/
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   375
        ].
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   376
    ] ifFalse:[
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   377
        (internalName includes: $.) ifTrue: [
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   378
            internalName := internalName copyReplaceAll: $. with: $/
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   379
        ].
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   380
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   381
    ^ internalName.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   382
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   383
    "Created: / 21-10-2011 / 12:31:51 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   384
    "Created: / 30-10-2011 / 17:40:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3112
1f8c991bc1d2 Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3055
diff changeset
   385
    "Modified: / 27-05-2014 / 12:30:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   386
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   387
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   388
!CharacterArray methodsFor:'java queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   389
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   390
isJavaArrayDescriptor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   391
^ self startsWith:$[.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   392
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   393
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   394
!CharacterArray methodsFor:'java queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   395
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   396
isJavaPrimitiveTypeDescriptor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   397
    ^ (self size = 1 and: [ JavaDescriptor baseTypes includesKey: self first ]).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   398
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   399
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   400
!CharacterArray methodsFor:'special string converting'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   401
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
   402
withoutSuffix: aString
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   403
    "if the receiver endsWith aString, return a copy without it.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   404
     Otherwise return the receiver"
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
   405
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   406
    (self endsWith: aString) ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   407
        ^ self copyFrom: 1 to: self size - aString size
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   408
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   409
    ^ self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   410
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   411
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   412
     'helloworld' withoutSuffix:'world'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   413
     'helloworld' withoutSuffix:'foo'"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   414
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   415
    "Created: / 08-12-2012 / 20:26:27 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   416
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   417
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   418
!CharacterArray class methodsFor:'encoding & decoding'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   419
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   420
decodeFromJavaUTF8: bytes
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   421
    "Decodes a string from modified UTF8 encoding
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   422
     as used in Java .class files. see
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   423
     'The class file format specification', section 4.5.7"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   424
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   425
    | string  i  s  b  codePoint  realLength |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   426
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   427
    string := String new: bytes size.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   428
    realLength := bytes size.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   429
    s := bytes readStream.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   430
    i := 1.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   431
    [ s atEnd ] whileFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   432
            [ b := s next.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   433
            (b & 2r10000000) == 0
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   434
                ifTrue: [ codePoint := b ]
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   435
                ifFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   436
                    [ self assert: (b & 2r01000000) = 2r01000000.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   437
                    (b & 2r00100000) = 0
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   438
                        ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   439
                            [ "two byte utf char"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   440
                            realLength := realLength - 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   441
                            self assert: s size > 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   442
                            self assert: (b & 2r01000000) = 2r01000000.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   443
                            string bitsPerCharacter < 16
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   444
                                ifTrue: [ string := Unicode16String fromString: string ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   445
                            codePoint := (b & 2r00011111) << 6.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   446
                            b := s next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   447
                            self assert: (b & 2r11000000) = 2r10000000.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   448
                            codePoint := codePoint + (b & 2r00111111). ]
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   449
                        ifFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   450
                            [ "at lease 3 byte utf char"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   451
                            realLength := realLength - 2.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   452
                            string bitsPerCharacter < 16"was: 32"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   453
                                ifTrue: [ string := Unicode16String"was: Unicode32String" fromString: string ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   454
                            self assert: s size > 1.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   455
                            (b & 2r00010000) = 0
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   456
                                ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   457
                                    [ | utf32Possible  utf32Value |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   458
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   459
                                    "3 or 6 byte utf char"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   460
                                    self assert: s size > 1.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   461
                                    s size < 5
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   462
                                        ifTrue: [ utf32Possible := false ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   463
                                        ifFalse: [ utf32Possible := true ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   464
                                    b ~= 2r11101101 ifTrue: [ utf32Possible := false ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   465
                                    codePoint := (b & 2r00001111) << 12.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   466
                                    b := s next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   467
                                    self assert: (b & 2r11000000) = 2r10000000.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   468
                                    ((b & 2r11110000) = 2r10100000 and: [ utf32Possible ])
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   469
                                        ifTrue: [ utf32Value := 2r00010000 + ((b & 2r00001111) << 16) ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   470
                                        ifFalse: [ utf32Possible := false ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   471
                                    codePoint := codePoint + ((b & 2r00111111) << 6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   472
                                    b := s next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   473
                                    self assert: (b & 2r11000000) = 2r10000000.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   474
                                    utf32Possible
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   475
                                        ifTrue: [ utf32Value := utf32Value + ((b & 2r00111111) << 10) ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   476
                                    codePoint := codePoint + (b & 2r00111111).
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   477
                                    utf32Possible
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   478
                                        ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   479
                                            [ | tmpB |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   480
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   481
                                            string bitsPerCharacter < 32
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   482
                                                ifTrue: [ string := Unicode32String fromString: string ].
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   483
                                            tmpB := s copy.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   484
                                            b := tmpB next.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   485
                                            b = 2r11101101
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   486
                                                ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   487
                                                    [ b := tmpB next.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   488
                                                    (b & 2r11110000) = 2r10110000
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   489
                                                        ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   490
                                                            [ utf32Value := utf32Value + ((b & 2r00001111) << 6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   491
                                                            b := tmpB next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   492
                                                            self assert: (b & 2r11000000) = 2r10000000.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   493
                                                            utf32Value := utf32Value + (b & 2r00111111).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   494
                                                            codePoint := utf32Value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   495
                                                            realLength := realLength - 3. s position: tmpB position.] ] ] ]
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   496
                                ifFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   497
                                    [ "should not happen, ask mh"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   498
                                    self halt. ] ] ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   499
            string at: i put: (Character codePoint: codePoint).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   500
            i := i + 1. ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   501
    ^ string subString: 1 to: realLength.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   502
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   503
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   504
        String decodeFromJavaUTF8: 'Hello world' asByteArray"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   505
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   506
    "Created: / 22-12-2010 / 23:45:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   507
    "Modified: / 09-02-2011 / 01:12:25 / Marcel Hlopko <hlopik@gmail.com>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   508
    "Modified: / 13-03-2011 / 15:52:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   509
    "Modified: / 09-12-2011 / 19:49:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   510
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   511
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   512
!CharacterArray class methodsFor:'instance creation'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   513
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   514
fromJavaUTF8Bytes:aByteCollection
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   515
    "return a new string which represents the characters as decoded
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   516
     from the modified utf8 encoded bytes as specified in
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   517
     The class file format specification, section 4.5.7"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   518
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   519
    ^ self decodeFromJavaUTF8:aByteCollection.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   520
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   521
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   522
     CharacterArray fromUTF8Bytes:#[ 16r41 16r42 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   523
     CharacterArray fromUTF8Bytes:#[ 16rC1 16r02 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   524
     CharacterArray fromUTF8Bytes:#[ 16rE0 16r81 16r02 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   525
     CharacterArray fromUTF8Bytes:#[ 16rEF 16rBF 16rBF ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   526
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   527
   rfc2279 examples:
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   528
     CharacterArray fromUTF8Bytes:#[ 16r41 16rE2 16r89 16rA2 16rCE 16r91 16r2E ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   529
     CharacterArray fromUTF8Bytes:#[ 16rED 16r95 16r9C 16rEA 16rB5 16rAD 16rEC 16r96 16rB4 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   530
     CharacterArray fromUTF8Bytes:#[ 16rE6 16r97 16rA5 16rE6 16r9C 16rAC 16rE8 16rAA 16r9E ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   531
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   532
   invalid:
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   533
     CharacterArray fromUTF8Bytes:#[ 16rC0 16r80 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   534
     CharacterArray fromUTF8Bytes:#[ 16rE0 16r80 16r80 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   535
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   536
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   537
    "Created: / 23-12-2010 / 09:01:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   538
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   539
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   540
!CharacterArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   541
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   542
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   543
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   544
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   545
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   546
    "Created: / 05-02-2011 / 22:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   547
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   548
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   549
!CharacterArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   550
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   551
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   552
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   553
    ^JavaArray javaArrayClassFor: Unicode16String
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   554
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   555
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   556
    "Modified: / 10-08-2011 / 13:18:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   557
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   558
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   559
!CharacterArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   560
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   561
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   562
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   563
    ^Character
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   564
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   565
    "Created: / 20-12-2010 / 22:05:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   566
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   567
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   568
!Class methodsFor:'accessing - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   569
2942
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   570
binaryName
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   571
    "Returns Java binary name for this class."
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   572
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   573
    ^ 'SMALLTALK/' , self name
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   574
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   575
    "Created: / 20-11-2013 / 15:55:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   576
! !
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   577
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   578
!Class methodsFor:'accessing - java'!
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   579
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   580
classLoader
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   581
    JavaVM smalltalkClassLoader
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   582
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   583
    "Created: / 22-08-2012 / 13:00:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   584
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   585
2942
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   586
!Class methodsFor:'queries'!
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   587
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   588
isSynthetic
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   589
    ^ false "/ Smalltalk classes are not synthetic...
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   590
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   591
    "Created: / 20-11-2013 / 16:03:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   592
! !
c39cbf09ea3d Fixes for Java reflection on Smalltalk classes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2918
diff changeset
   593
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   594
!Class methodsFor:'accessing - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   595
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   596
javaMirror
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   597
    ^self javaMirrorClass forClass: self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   598
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   599
    "Created: / 31-07-2012 / 17:39:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   600
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   601
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   602
!Class methodsFor:'accessing - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   603
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   604
javaMirrorClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   605
    "Returns a Java mirror class to be used by Java reflection"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   606
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   607
    self isJavaPrimitiveType ifTrue:[ ^ JavaMirror mirrorClassForJavaPrimitive ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   608
    self isJavaArrayClass ifTrue:[ ^ JavaMirror mirrorClassForJavaArray ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   609
    ^JavaMirror mirrorClassForAlienClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   610
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   611
    "Created: / 31-07-2012 / 17:39:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   612
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   613
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   614
!Class methodsFor:'accessing - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   615
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   616
lookupMethodByNameAndType: nameAndType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   617
    | descriptor selector |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   618
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   619
    descriptor := JavaMethodDescriptor fromString: (nameAndType descriptor).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   620
    selector := nameAndType name copyReplaceAll: $_ with: $:.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   621
    descriptor numArgs > 0 ifTrue:[selector := selector , ':'].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   622
    selector := selector asSymbol.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   623
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   624
    ^self lookupMethodFor: selector
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   625
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   626
    "Created: / 22-08-2012 / 13:11:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   627
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   628
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   629
!ConfigurableFeatures class methodsFor:'queries-features'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   630
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   631
hasJavaSupport
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   632
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   633
    ^ (Smalltalk at: #'JavaVM' ifAbsent:nil) notNil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   634
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   635
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   636
     ConfigurableFeatures hasJavaSupport
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   637
     ConfigurableFeatures includesFeature:#JavaSupport
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   638
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   639
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   640
    "Created: / 03-01-2012 / 15:36:03 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   641
    "Created: / 18-02-2012 / 16:42:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   642
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   643
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   644
!Delay methodsFor:'delaying'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   645
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   646
waitWithState:state
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   647
    "suspend the current process until either the relative time delta
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   648
     has passed (if millisecondDelta is non-nil), or the absolute millisecondTime
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   649
     has been reached (if resumptionTime non-nil)."
2635
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   650
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   651
    Processor activeProcess state:state.
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   652
    self wait.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   653
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   654
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   655
     Transcript showCR:'1'.
2635
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   656
     (Delay forSeconds:10) waitWithState:#sleep.
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   657
     Transcript showCR:'2'.
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   658
    "
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   659
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   660
    "Modified: / 18-04-1997 / 11:56:46 / stefan"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   661
    "Created: / 30-11-2011 / 13:38:18 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
2635
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   662
    "Modified: / 25-07-2013 / 11:33:41 / exept"
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
   663
    "Modified: / 25-07-2013 / 11:34:54 / cg"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   664
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   665
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   666
!DoubleArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   667
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   668
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   669
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   670
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   671
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   672
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   673
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   674
!DoubleArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   675
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   676
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   677
    ^cls == DoubleArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   678
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   679
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   680
    "Modified: / 14-05-2013 / 11:11:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   681
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   682
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   683
!DoubleArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   684
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   685
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   686
    ^DoubleArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   687
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   688
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   689
    "Modified: / 14-05-2013 / 11:11:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   690
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   691
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   692
!DoubleArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   693
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   694
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   695
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   696
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   697
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   698
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   699
!DoubleArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   700
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   701
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   702
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   703
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   704
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   705
    "Created: / 20-12-2010 / 22:47:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   706
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   707
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   708
!DoubleArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   709
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   710
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   711
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   712
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   713
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   714
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   715
    "Created: / 20-12-2010 / 22:30:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   716
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   717
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   718
!DoubleArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   719
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   720
javaArrayClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   721
    ^ JavaArray javaArrayClassFor: self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   722
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   723
    "Created: / 06-12-2011 / 17:28:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   724
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   725
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   726
!DoubleArray class methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   727
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   728
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   729
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   730
    ^Float
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   731
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   732
    "Created: / 20-12-2010 / 22:06:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   733
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   734
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   735
!DoubleArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   736
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   737
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   738
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   739
    ^'[D'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   740
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   741
    "Modified: / 25-02-2011 / 19:03:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   742
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   743
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   744
!ExecutableFunction methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   745
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   746
isJavaConstructor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   747
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   748
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   749
    "Created: / 31-07-2012 / 18:42:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   750
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   751
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   752
!ExecutableFunction methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   753
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   754
isProxyMethod
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   755
    "return true, if the receiver is a proxy method.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   756
    false is returned here, true is returned in ProxyMethod."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   757
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   758
    ^ false.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   759
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   760
    "Created: / 16-12-2012 / 13:35:41 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   761
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   762
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   763
!Float class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   764
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   765
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   766
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   767
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   768
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   769
    "Created: / 06-02-2011 / 17:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   770
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   771
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   772
!Float class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   773
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   774
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   775
    ^ DoubleArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   776
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   777
    "Created: / 11-02-2011 / 10:50:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   778
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   779
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   780
!Float class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   781
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   782
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   783
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   784
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   785
    wrapper := (JavaVM classForName: 'java.lang.Double') new.
2918
e2fc5ead5542 Fix in Float/LargeInteger>>javaBox:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2907
diff changeset
   786
    wrapper perform: #'<init>(D)V' with: anObject with: nil.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   787
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   788
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   789
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2918
e2fc5ead5542 Fix in Float/LargeInteger>>javaBox:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2907
diff changeset
   790
    "Modified: / 14-11-2013 / 01:21:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   791
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   792
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   793
!Float class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   794
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   795
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   796
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   797
    ^'double'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   798
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   799
    "Modified: / 25-02-2011 / 18:59:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   800
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   801
2442
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   802
!Float class methodsFor:'autoboxing support'!
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   803
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   804
javaUnbox: object onError: errorBlock
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   805
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   806
    | value |
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   807
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   808
    (object class binaryName = 'java/lang/Double') ifFalse:[
2442
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   809
        errorBlock value.
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   810
    ].
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   811
    value := object instVarNamed: #value.
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   812
    ^value
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   813
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   814
    "Modified: / 08-10-2013 / 22:41:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2442
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   815
! !
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   816
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   817
!Float class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   818
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   819
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   820
    ^(JavaVM classForName: 'java.lang.Double')
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   821
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   822
    "Created: / 24-02-2012 / 19:42:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   823
    "Modified: / 07-05-2013 / 11:21:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   824
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   825
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   826
!FloatArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   827
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   828
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   829
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   830
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   831
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   832
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   833
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   834
!FloatArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   835
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   836
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   837
    ^cls == FloatArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   838
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   839
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   840
    "Modified: / 14-05-2013 / 11:11:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   841
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   842
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   843
!FloatArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   844
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   845
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   846
    ^FloatArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   847
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   848
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   849
    "Modified: / 14-05-2013 / 11:11:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   850
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   851
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   852
!FloatArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   853
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   854
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   855
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   856
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   857
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   858
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   859
!FloatArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   860
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   861
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   862
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   863
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   864
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   865
    "Created: / 20-12-2010 / 22:47:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   866
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   867
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   868
!FloatArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   869
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   870
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   871
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   872
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   873
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   874
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   875
    "Created: / 20-12-2010 / 22:30:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   876
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   877
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   878
!FloatArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   879
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   880
javaArrayClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   881
    ^ JavaArray javaArrayClassFor: self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   882
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   883
    "Created: / 06-12-2011 / 17:29:01 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   884
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   885
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   886
!FloatArray class methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   887
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   888
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   889
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   890
    ^ShortFloat
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   891
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   892
    "Created: / 20-12-2010 / 22:06:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   893
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   894
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   895
!FloatArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   896
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   897
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   898
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   899
    ^'[F'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   900
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   901
    "Modified: / 25-02-2011 / 19:03:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   902
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   903
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   904
!Integer class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   905
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   906
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   907
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   908
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   909
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   910
    "Created: / 11-02-2011 / 11:12:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   911
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   912
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   913
!Integer class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   914
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   915
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   916
    ^ SignedIntegerArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   917
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   918
    "Created: / 11-02-2011 / 10:51:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   919
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   920
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   921
!Integer class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   922
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   923
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   924
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   925
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   926
    wrapper := (JavaVM classForName: 'java.lang.Integer') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   927
    wrapper perform: #'<init>(I)V' with: anObject.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   928
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   929
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   930
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   931
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   932
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   933
!Integer class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   934
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   935
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   936
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   937
    ^'int'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   938
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   939
    "Modified: / 25-02-2011 / 18:59:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   940
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   941
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   942
!Integer class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   943
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   944
javaUnbox: object onError: errorBlock
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   945
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
   946
    ^self javaUnbox: object onError: errorBlock
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   947
          min: "Integer.MIN_VALUE"-2147483648
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   948
          max: "Integer.MAX_VALUE" 2147483647
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   949
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   950
    "Created: / 25-11-2011 / 19:10:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   951
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   952
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   953
!Integer class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   954
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   955
javaUnbox: object onError: errorBlock min: min max: max
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   956
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   957
    | value |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   958
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   959
    (#(  'java/lang/Byte'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   960
        'java/lang/Short'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   961
        'java/lang/Integer'
2907
503761e88b38 Fixes for Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2841
diff changeset
   962
        "'java/lang/Long'" ) includes: object class binaryName) ifFalse:[
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   963
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   964
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   965
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   966
    value := object instVarNamed:#value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   967
    (value between: min and: max) ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   968
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   969
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   970
    ^value
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   971
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   972
    "Created: / 22-11-2011 / 11:43:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2907
503761e88b38 Fixes for Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2841
diff changeset
   973
    "Modified: / 08-11-2013 / 00:02:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   974
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   975
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   976
!Integer class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   977
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   978
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   979
    ^(JavaVM classForName: 'java.lang.Integer')
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   980
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   981
    "Created: / 24-02-2012 / 19:41:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   982
    "Modified: / 07-05-2013 / 11:21:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   983
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   984
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   985
!LargeInteger class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   986
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   987
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   988
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   989
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   990
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   991
    "Created: / 04-02-2011 / 11:55:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   992
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   993
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   994
!LargeInteger class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   995
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   996
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   997
    ^ SignedLongIntegerArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   998
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   999
    "Created: / 11-02-2011 / 10:51:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1000
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1001
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1002
!LargeInteger class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1003
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1004
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1005
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1006
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1007
    wrapper := (JavaVM classForName: 'java.lang.Long') new.
2918
e2fc5ead5542 Fix in Float/LargeInteger>>javaBox:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2907
diff changeset
  1008
    wrapper perform: #'<init>(J)V' with: anObject with: nil.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1009
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1010
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1011
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2918
e2fc5ead5542 Fix in Float/LargeInteger>>javaBox:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2907
diff changeset
  1012
    "Modified: / 14-11-2013 / 01:21:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1013
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1014
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1015
!LargeInteger class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1016
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1017
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1018
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1019
    ^'long'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1020
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1021
    "Modified: / 25-02-2011 / 18:59:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1022
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1023
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1024
!LargeInteger class methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1025
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1026
javaUnbox: object onError: errorBlock
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1027
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1028
    | value |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1029
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
  1030
    (object class binaryName = 'java/lang/Long') ifFalse:[
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1031
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1032
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1033
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1034
    value := object instVarNamed:#value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1035
    (value between: "Integer.MIN_VALUE"-9223372036854775808 and: "Integer.MAX_VALUE" 9223372036854775807) ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1036
        errorBlock value.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1037
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1038
    ^value
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1039
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1040
    "Created: / 22-11-2011 / 11:45:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
  1041
    "Modified: / 08-10-2013 / 22:42:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1042
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1043
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1044
!LargeInteger class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1045
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1046
javaWrapperClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1047
    ^(Java classForName: 'java.lang.Long')
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1048
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1049
    "Created: / 24-02-2012 / 19:42:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1050
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1051
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1052
!Method methodsFor:'queries-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1053
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1054
isAbstract
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1055
    "For compatibility with Java methods"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1056
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1057
    ^false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1058
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1059
    "Created: / 22-08-2012 / 13:19:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1060
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1061
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1062
!Method methodsFor:'queries-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1063
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1064
isStatic
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1065
    "For compatibility with Java methods"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1066
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1067
    ^mclass notNil and:[mclass isMetaclass]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1068
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1069
    "Created: / 22-08-2012 / 12:27:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1070
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1071
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1072
!Method methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1073
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1074
javaClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1075
    "For compatibiliry with JavaMethod"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1076
    ^mclass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1077
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1078
    "Created: / 22-08-2012 / 13:20:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1079
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1080
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1081
!Object methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1082
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1083
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1084
    ^JavaVM _ARRAYLENGTH: self
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1085
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1086
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1087
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1088
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1089
!Object methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1090
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1091
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1092
    ^JavaVM _CHECKCAST: self _: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1093
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1094
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1095
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1096
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1097
!Object methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1098
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1099
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1100
    ^JavaVM _INSTANCEOF: self _: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1101
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1102
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1103
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1104
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1105
!Object methodsFor:'accessing-Java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1106
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1107
getJavaLockWord
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1108
    "Returns a Java lock word for given object. The returned
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1109
     value is
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1110
        - either SmallInteger that encodes the thinlock
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1111
        - or a fat lock, instance of JavaMonitor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1112
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1113
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1114
    "/For nonJava objects, always return fatlock
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1115
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1116
    ^self getJavaMonitor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1117
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1118
    "Created: / 26-08-2012 / 14:03:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1119
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1120
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1121
!Object methodsFor:'accessing-Java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1122
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1123
getJavaMonitor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1124
    "Returns fat JavaMonitor associated with the receiver"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1125
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1126
    ^JavaVM getJavaMonitorFor: self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1127
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1128
    "Created: / 26-08-2012 / 18:35:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1129
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1130
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1131
!Object methodsFor:'testing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1132
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1133
isGroovyClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1134
    ^false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1135
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1136
    "Created: / 18-02-2012 / 20:29:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1137
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1138
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1139
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1140
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1141
isJavaArray
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1142
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1143
    ^self class isJavaArrayClass
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1144
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1145
    "Created: / 19-12-2010 / 17:05:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1146
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1147
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1148
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1149
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1150
isJavaNameAndType
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1151
    "return true, if given object represents name and type struct in java constant pool"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1152
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1153
    ^ false.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1154
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1155
    "Created: / 10-05-2011 / 12:21:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1156
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1157
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1158
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1159
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1160
isJavaPackage
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1161
    "return true, if the receiver is a java package.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1162
     False is returned here - the method is only redefined in JavaPackage."
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1163
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1164
    ^ false
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1165
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1166
    "Created: / 09-08-2011 / 09:35:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1167
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1168
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1169
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1170
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1171
isJavaRef
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2639
diff changeset
  1172
    "Return true, if given object represents reference in java constant pool"
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2639
diff changeset
  1173
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2639
diff changeset
  1174
    ^ false.
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1175
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1176
    "Created: / 08-04-2011 / 16:12:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2639
diff changeset
  1177
    "Modified (comment): / 30-08-2013 / 00:41:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1178
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1179
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1180
!Object methodsFor:'testing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1181
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1182
isJavaWrapperClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1183
    "return true, if this is a java wrapper class, i.e, java.lang.Integer, java.lang.Boolean etc."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1184
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1185
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1186
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1187
    "Created: / 01-01-2012 / 17:25:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1188
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1189
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1190
!Object methodsFor:'testing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1191
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1192
isSocket
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1193
    "return true, if the receiver is some kind of socket;
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1194
     false returned here - the method is only redefined in Socket."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1195
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1196
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1197
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1198
    "Created: / 17-08-2012 / 15:32:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1199
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1200
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1201
!Object methodsFor:'autoboxing support'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1202
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1203
javaBox: anObject
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1204
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1205
    ^anObject
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1206
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1207
    "Created: / 15-08-2011 / 10:52:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1208
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1209
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1210
!Object methodsFor:'autoboxing support'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1211
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1212
javaUnwrap: anObject
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1213
    "Unwraps the objects. Possibly call on the wrapped class"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1214
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1215
    ^anObject
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1216
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1217
    "Created: / 10-12-2011 / 19:51:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1218
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1219
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1220
!Object methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1221
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1222
javaUnwrapFrom: javaType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1223
    ^ self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1224
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1225
    "Created: / 10-12-2011 / 19:51:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1226
    "Created: / 30-12-2011 / 15:22:06 / kursjan <kursjan@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1227
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1228
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1229
!Object methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1230
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1231
javaWrap: anObject
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1232
    "Wraps the receiver into corresponding Java object"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1233
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1234
    ^anObject
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1235
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1236
    "Created: / 26-12-2011 / 00:57:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1237
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1238
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1239
!Object methodsFor:'autoboxing support'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1240
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1241
javaWrapRequired
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1242
    "Returns true, if a #javaWrap: has to be called
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1243
     prior an instance of Smalltalk object is passed
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1244
     as an argument to Java method, whoose formal tyoe
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1245
     is the receiver.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1246
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1247
     Example:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1248
     Let's say the Java method is declared as
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1249
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1250
     publid void setCount(int c) { ... }
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1251
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1252
     and Smalltalk calls
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1253
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1254
     obj setCount: 0
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1255
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1256
     then 'Integer javaWrapRequired' should return false as there
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1257
     is no need to wrap SmallInt as it represent java int values.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1258
     (Integer is formal type of argument c.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1259
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1260
     If the method is declared as:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1261
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1262
     publid void setCount(java.lang.Integer c) { ... }
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1263
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1264
     then 'java.lang.Integer javaWrapRequired' should return true
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1265
     as the integer value must be wrapped into an instance of
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1266
     java.lang.Integer before it is passed to a Java method.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1267
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1268
     "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1269
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1270
    ^false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1271
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1272
    "Created: / 05-11-2012 / 00:29:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1273
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1274
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1275
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1276
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1277
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1278
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1279
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1280
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1281
    "Created: / 19-12-2010 / 17:05:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1282
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1283
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1284
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1285
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1286
isJavaClassType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1287
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1288
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1289
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1290
    "Created: / 11-02-2011 / 08:08:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1291
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1292
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1293
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1294
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1295
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1296
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1297
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1298
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1299
    "Created: / 20-12-2010 / 21:52:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1300
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1301
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1302
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1303
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1304
isJavaType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1305
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1306
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1307
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1308
    "Created: / 20-12-2010 / 21:52:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1309
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1310
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1311
!Process methodsFor:'Java protocol'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1312
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1313
clearInterrupted
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1314
    JavaVM clearInterrupted: self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1315
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1316
    "Created: / 30-11-2011 / 10:44:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1317
    "Modified: / 16-08-2012 / 22:03:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1318
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1319
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1320
!Process methodsFor:'Java protocol'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1321
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1322
isInterrupted
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1323
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1324
    ^ JavaVM isInterrupted: self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1325
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1326
    "Created: / 30-11-2011 / 12:12:33 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1327
    "Modified: / 16-08-2012 / 21:56:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1328
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1329
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1330
!Process methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1331
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1332
isParked
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1333
    "return true, iff the receiver is parked (by means of sun.misc.Unsafe.park() )"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1334
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1335
    ^ (state == #parked)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1336
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1337
    "Created: / 16-08-2012 / 22:13:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1338
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1339
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1340
!Process methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1341
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1342
isSleeping
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1343
    "return true, iff the receiver is sleeping on Delay"
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1344
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1345
    ^ (state == #sleep)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1346
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1347
    "Created: / 30-11-2011 / 13:35:18 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1348
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1349
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1350
!Process methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1351
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1352
isWaiting
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1353
    "return true, iff the receiver is waiting on semaphore or something"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1354
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1355
    ^ (state == #wait)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1356
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1357
    "Created: / 20-11-2011 / 20:55:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1358
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1359
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1360
!Process methodsFor:'Java protocol'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1361
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1362
javaInterrupt
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1363
    self isWaiting ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1364
        self interruptWith: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1365
            JavaVM throwInterruptedException: 'thread has been interrupted during wait'.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1366
            self terminate
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1367
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1368
        ^self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1369
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1370
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1371
    self isSleeping ifTrue: [
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1372
        self interruptWith: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1373
            JavaVM throwInterruptedException: 'thread has been interrupted during sleep'.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1374
            self terminate
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1375
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1376
        ^self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1377
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1378
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1379
    self isParked ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1380
        self setInterrupted.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1381
        JavaVM unpark: self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1382
        ^self.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1383
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1384
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1385
    self setInterrupted
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1386
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1387
    "Created: / 30-11-2011 / 13:35:18 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1388
    "Modified: / 16-08-2012 / 22:14:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1389
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1390
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1391
!Process methodsFor:'Java protocol'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1392
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1393
setInterrupted
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1394
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1395
    JavaVM setInterrupted: self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1396
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1397
    "Created: / 30-11-2011 / 10:44:37 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1398
    "Modified: / 16-08-2012 / 22:03:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1399
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1400
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1401
!ProgrammingLanguage methodsFor:'testing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1402
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1403
isGroovy
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1404
    "true iff this is a Groovy language"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1405
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1406
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1407
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1408
    "Created: / 13-04-2012 / 17:47:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1409
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1410
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1411
!ProgrammingLanguage methodsFor:'testing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1412
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1413
isJavaLike
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1414
    "true if receiver is kind of Java language (based on Java)"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1415
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1416
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1417
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1418
    "Created: / 13-04-2012 / 17:48:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1419
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1420
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1421
!ProjectDefinition class methodsFor:'description - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1422
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1423
javaBundle
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1424
    "Defines a Java code bundle provided by this package.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1425
     Used by STX:LIBJAVA"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1426
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1427
    ^nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1428
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1429
    "Created: / 15-01-2013 / 16:49:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1430
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1431
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1432
!ProjectDefinition class methodsFor:'description - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1433
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1434
javaClassPath
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1435
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1436
    "Defines a Java class path containing java classes/jars
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1437
     required by this package"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1438
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1439
    ^#()
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1440
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1441
    "Created: / 13-12-2011 / 23:48:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1442
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1443
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1444
!ProjectDefinition class methodsFor:'description - java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1445
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1446
javaSourcePath
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1447
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1448
    "Defines paths to Java source files (for packages that
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1449
     contains Java code"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1450
    ^#()
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1451
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1452
    "Created: / 13-12-2011 / 23:49:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1453
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1454
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1455
!Semaphore methodsFor:'waiting'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1456
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1457
parkWithTimeoutMs:milliSeconds
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1458
    "Same as #waitWithTimeoutMs: but sets the state to #parked.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1459
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1460
     Stupid, that I have to copy-paste this method...
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1461
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1462
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1463
    |activeProcess timeoutOccured wasBlocked timeoutBlock now endTime|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1464
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1465
    wasBlocked := OperatingSystem blockInterrupts.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1466
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1467
    count <= 0 ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1468
        "with zero-timeout, this is a poll"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1469
        milliSeconds == 0 ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1470
            wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1471
            ^ nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1472
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1473
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1474
        activeProcess := Processor activeProcess.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1475
        timeoutOccured := false.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1476
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1477
        milliSeconds notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1478
            "Wait with timeout: calculate the end-time"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1479
            now := OperatingSystem getMillisecondTime.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1480
            endTime := OperatingSystem millisecondTimeAdd:now and:milliSeconds.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1481
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1482
            timeoutBlock := [timeoutOccured := true. timeoutBlock:= nil. Processor resume:activeProcess].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1483
            Processor addTimedBlock:timeoutBlock for:activeProcess atMilliseconds:endTime.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1484
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1485
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1486
        "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1487
         need a while-loop here, since more than one process may
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1488
         wait for it and another one may also wake up.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1489
         Thus, the count is not always non-zero after returning from
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1490
         suspend.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1491
        "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1492
        [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1493
            self addWaitingProcess:activeProcess.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1494
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1495
            "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1496
             for some more descriptive info in processMonitor ...
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1497
             ... set the state to #wait (instead of #suspend)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1498
            "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1499
            [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1500
                "sleep until resumed..."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1501
                activeProcess suspendWithState:#parked.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1502
            ] ifCurtailed:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1503
                "interrupts are not blocked when entered through Processor>>#interruptActive"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1504
                OperatingSystem blockInterrupts.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1505
                timeoutBlock notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1506
                    Processor removeTimedBlock:timeoutBlock.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1507
                    timeoutBlock := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1508
                ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1509
                self removeWaitingProcess:activeProcess.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1510
                wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1511
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1512
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1513
            self removeWaitingProcess:activeProcess.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1514
            timeoutOccured ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1515
                wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1516
                ^ nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1517
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1518
        ] doUntil:[count > 0].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1519
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1520
        timeoutBlock notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1521
            Processor removeTimedBlock:timeoutBlock.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1522
            timeoutBlock := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1523
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1524
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1525
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1526
    "if we come here, we have accquired the semaphore"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1527
    count := count - 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1528
    count == 0 ifTrue:[
2639
453c3d9e8a94 class: Semaphore
Stefan Vogel <sv@exept.de>
parents: 2638
diff changeset
  1529
        activeProcess isNil ifTrue:[activeProcess := Processor activeProcess].
453c3d9e8a94 class: Semaphore
Stefan Vogel <sv@exept.de>
parents: 2638
diff changeset
  1530
        lastOwner := activeProcess.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1531
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1532
    wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1533
    ^ self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1534
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1535
    "Created: / 16-08-2012 / 20:53:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1536
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1537
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1538
!Set methodsFor:'javaProtocol'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1539
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1540
java__contains:anObject
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1541
         ^ self contains: [:el | anObject = el ]
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1542
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1543
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1544
!ShortFloat class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1545
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1546
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1547
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1548
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1549
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1550
    "Created: / 06-02-2011 / 17:21:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1551
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1552
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1553
!ShortFloat class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1554
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1555
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1556
    ^ FloatArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1557
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1558
    "Created: / 11-02-2011 / 10:50:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1559
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1560
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1561
!ShortFloat class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1562
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1563
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1564
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1565
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1566
    wrapper := (JavaVM classForName: 'java.lang.Float') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1567
    wrapper perform: #'<init>(F)V' with: anObject.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1568
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1569
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1570
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1571
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1572
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1573
!ShortFloat class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1574
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1575
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1576
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1577
    ^'float'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1578
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1579
    "Modified: / 25-02-2011 / 18:59:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1580
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1581
2450
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1582
!ShortFloat class methodsFor:'autoboxing support'!
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1583
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1584
javaUnbox: object onError: errorBlock
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
  1585
    (object class binaryName = 'java/lang/Float') ifFalse:[
2450
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1586
        errorBlock value.
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1587
    ].
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1588
    ^object instVarNamed: #value.
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1589
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1590
    "Created: / 22-11-2011 / 11:52:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2841
6fa1bcf9c997 JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
  1591
    "Modified: / 08-10-2013 / 22:42:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2450
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1592
! !
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1593
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1594
!ShortFloat class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1595
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1596
javaWrapperClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1597
    ^(Java classForName: 'java.lang.Float')
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1598
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1599
    "Created: / 24-02-2012 / 19:42:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1600
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1601
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1602
!SignedIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1603
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1604
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1605
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1606
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1607
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1608
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1609
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1610
!SignedIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1611
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1612
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1613
    ^cls == SignedIntegerArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1614
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1615
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1616
    "Modified: / 14-05-2013 / 11:11:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1617
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1618
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1619
!SignedIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1620
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1621
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1622
    ^SignedIntegerArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1623
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1624
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1625
    "Modified: / 14-05-2013 / 11:11:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1626
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1627
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1628
!SignedIntegerArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1629
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1630
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1631
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1632
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1633
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1634
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1635
!SignedIntegerArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1636
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1637
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1638
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1639
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1640
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1641
    "Created: / 06-02-2011 / 15:16:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1642
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1643
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1644
!SignedIntegerArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1645
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1646
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1647
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1648
    ^JavaArray javaArrayClassFor: SignedIntegerArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1649
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1650
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1651
    "Modified: / 10-08-2011 / 22:47:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1652
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1653
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1654
!SignedIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1655
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1656
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1657
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1658
    ^ Integer
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1659
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1660
    "Created: / 25-06-2011 / 08:38:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1661
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1662
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1663
!SignedIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1664
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1665
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1666
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1667
    ^'[I'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1668
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1669
    "Modified: / 25-02-2011 / 19:03:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1670
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1671
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1672
!SignedLongIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1673
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1674
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1675
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1676
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1677
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1678
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1679
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1680
!SignedLongIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1681
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1682
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1683
    ^cls == SignedLongIntegerArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1684
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1685
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1686
    "Modified: / 14-05-2013 / 11:14:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1687
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1688
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1689
!SignedLongIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1690
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1691
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1692
    ^SignedLongIntegerArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1693
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1694
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1695
    "Modified: / 14-05-2013 / 11:14:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1696
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1697
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1698
!SignedLongIntegerArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1699
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1700
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1701
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1702
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1703
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1704
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1705
!SignedLongIntegerArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1706
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1707
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1708
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1709
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1710
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1711
    "Created: / 20-12-2010 / 22:47:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1712
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1713
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1714
!SignedLongIntegerArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1715
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1716
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1717
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1718
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1719
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1720
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1721
    "Created: / 20-12-2010 / 22:30:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1722
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1723
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1724
!SignedLongIntegerArray class methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1725
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1726
javaArrayClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1727
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1728
    ^JavaArray javaArrayClassFor: SignedLongIntegerArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1729
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1730
    "Modified: / 10-08-2011 / 22:47:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1731
    "Created: / 26-08-2011 / 18:29:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1732
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1733
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1734
!SignedLongIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1735
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1736
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1737
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1738
    ^LargeInteger
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1739
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1740
    "Modified: / 25-06-2011 / 08:38:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1741
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1742
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1743
!SignedLongIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1744
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1745
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1746
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1747
    ^'[J'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1748
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1749
    "Modified: / 25-02-2011 / 19:03:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1750
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1751
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1752
!SignedWordArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1753
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1754
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1755
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1756
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1757
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1758
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1759
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1760
!SignedWordArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1761
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1762
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1763
    ^cls == SignedWordArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1764
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1765
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1766
    "Modified: / 14-05-2013 / 11:14:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1767
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1768
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1769
!SignedWordArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1770
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1771
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1772
    ^SignedWordArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1773
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1774
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1775
    "Modified: / 14-05-2013 / 11:14:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1776
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1777
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1778
!SignedWordArray class methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1779
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1780
isJavaArrayClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1781
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1782
    ^true
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1783
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1784
    "Created: / 20-12-2010 / 22:47:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1785
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1786
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1787
!SignedWordArray class methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1788
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1789
isJavaReferenceType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1790
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1791
    "Java arrays are reference types"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1792
    ^true
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1793
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1794
    "Created: / 20-12-2010 / 22:30:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1795
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1796
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1797
!SignedWordArray class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1798
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1799
javaComponentClass
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1800
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1801
    ^JavaShort
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1802
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1803
    "Modified: / 24-02-2012 / 17:46:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1804
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1805
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1806
!SignedWordArray class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1807
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1808
javaName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1809
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1810
    ^'[S'.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1811
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1812
    "Modified: / 24-02-2012 / 17:46:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1813
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1814
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1815
!SmallInteger methodsFor:'autoboxing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1816
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1817
javaUnwrapFrom: javaType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1818
    javaType = #boolean ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1819
        ^ self = 1
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1820
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1821
    ^ self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1822
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1823
    "Created: / 30-12-2011 / 15:22:52 / kursjan <kursjan@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1824
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1825
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1826
!Socket methodsFor:'testing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1827
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1828
isSocket
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1829
    ^true
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1830
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1831
    "Created: / 17-08-2012 / 15:32:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1832
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1833
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1834
!Socket methodsFor:'special'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1835
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1836
reOpenIfPossible
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1837
    "If the socket was listening (server-sockets), try to reopen it"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1838
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1839
    listening ifFalse:[ ^ self ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1840
    [
2635
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
  1841
        self domain:domain type:socketType protocol:protocol reuseAddress:true.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1842
        self bindTo:port address:nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1843
        self listenFor: 5
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1844
    ] on: OpenError do:[
2635
00c38014b451 eliminated marcel's duplicate code
Claus Gittinger <cg@exept.de>
parents: 2442
diff changeset
  1845
        "Nothing, socket could not be reopened"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1846
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1847
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1848
    "Created: / 17-08-2012 / 15:43:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1849
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1850
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1851
!String methodsFor:'converting'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1852
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1853
asArrayOfSubstringsSeparatedBy:aSeparator
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1854
    "Modified version of asArrayOfSubstrings"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1855
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1856
    |substrings start end|
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1857
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1858
    substrings := OrderedCollection new.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1859
    start := 1.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1860
    [start <= self size] whileTrue:[
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1861
	(self at:start) = aSeparator ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1862
	    end := start + 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1863
	    [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1864
		end <= self size and:[(self at:end) ~= aSeparator]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1865
	    ] whileTrue:[end := end + 1].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1866
	    substrings add:(self copyFrom:start to:end - 1).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1867
	    start := end - 1
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1868
	].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1869
	start := start + 1
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1870
    ].
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1871
    ^ substrings asArray
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1872
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1873
    "Created: / 07-02-2011 / 11:18:03 / Marcel Hlopko <hlopik@gmail.com>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1874
    "Modified: / 08-02-2011 / 01:08:15 / Marcel Hlopko <hlopik@gmail.com>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1875
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1876
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1877
!String class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1878
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1879
javaName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1880
    ^ '[C'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1881
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1882
    "Created: / 18-01-2013 / 22:27:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1883
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1884
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1885
!UndefinedObject methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1886
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1887
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1888
    ^JavaVM throwNullPointerException
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1889
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1890
    "Created: / 14-05-2013 / 10:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1891
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1892
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1893
!UndefinedObject methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1894
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1895
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1896
    ^nil
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1897
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1898
    "Created: / 14-05-2013 / 10:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1899
    "Modified: / 14-05-2013 / 11:10:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1900
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1901
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1902
!UndefinedObject methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1903
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1904
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1905
    ^0
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1906
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1907
    "Created: / 14-05-2013 / 10:09:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1908
    "Modified: / 14-05-2013 / 11:10:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1909
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1910
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1911
!UndefinedObject class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1912
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1913
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1914
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1915
    "void"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1916
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1917
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1918
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1919
    "Created: / 21-12-2010 / 22:52:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1920
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1921
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1922
!UndefinedObject class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1923
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1924
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1925
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1926
    ^'void'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1927
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1928
    "Modified: / 25-02-2011 / 18:59:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1929
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1930
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1931
!Unicode16String class methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1932
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1933
javaName
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1934
    ^ '[C'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1935
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1936
    "Created: / 18-01-2013 / 22:27:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1937
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1938
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1939
!UserPreferences methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1940
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1941
javaRelease
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1942
    "Return the Java release according to the preferences
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1943
     or nil, if not set"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1944
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1945
    | rel sel |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1946
    sel := self javaReleaseSelector.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1947
    sel notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1948
        rel := JavaRelease perform: sel asSymbol ifNotUnderstood:[nil]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1949
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1950
    ^rel
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1951
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1952
    "Created: / 27-07-2012 / 10:12:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1953
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1954
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1955
!UserPreferences methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1956
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1957
javaReleaseSelector
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1958
    ^ self at:#javaReleaseSelector ifAbsent:[nil].
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1959
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1960
    "
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1961
        UserPreferences current javaReleaseSelector
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1962
        UserPreferences current javaReleaseSelector: #openJDK6
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1963
        UserPreferences current javaReleaseSelector: nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1964
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1965
        Java release
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1966
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1967
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1968
    "Created: / 27-07-2012 / 10:02:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1969
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1970
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1971
!UserPreferences methodsFor:'accessing-java'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1972
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1973
javaReleaseSelector: name
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1974
    "Sets the Java release to use. selector must be one of
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1975
     releases defined in JavaRelease, protocol 'instance creation'"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1976
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1977
    self at:#javaReleaseSelector put: name.
3055
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1978
"/    Java notNil ifTrue:[
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1979
"/        Java reinitializeRelease
10b7a8f2e23c Change JavaRelease to use output of `java -version` when validating Java installation directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3028
diff changeset
  1980
"/    ].
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1981
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1982
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1983
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1984
        UserPreferences current javaReleaseSelector
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1985
        UserPreferences current javaReleaseSelector: #openJDK7
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1986
        UserPreferences current javaReleaseSelector: nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1987
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1988
        Java release
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1989
        Java release:nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1990
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1991
        Java reinitializeRelease
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1992
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1993
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1994
    "Created: / 27-07-2012 / 10:02:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1995
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1996
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1997
!WordArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1998
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1999
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2000
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2001
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2002
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2003
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2004
!WordArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2005
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2006
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2007
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2008
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2009
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2010
    "Created: / 20-12-2010 / 22:47:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2011
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2012
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2013
!WordArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2014
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2015
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2016
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2017
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2018
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2019
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2020
    "Created: / 20-12-2010 / 22:30:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2021
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2022
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2023
!WordArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2024
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2025
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2026
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2027
    ^JavaArray javaArrayClassFor: WordArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2028
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2029
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2030
    "Modified: / 10-08-2011 / 22:46:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2031
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2032
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2033
!WordArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2034
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2035
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2036
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2037
    ^JavaShort
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2038
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2039
    "Created: / 20-12-2010 / 22:13:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2040
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2041
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2042
!WordArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2043
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2044
javaName
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2045
    ^ '[S'.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2046
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2047
    "Modified: / 06-12-2011 / 16:43:59 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2048
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2049
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2050
!WrappedMethod methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2051
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2052
descriptor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2053
    "Returns descriptor object (for wrapped Java methods)"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2054
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2055
    | orig |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2056
    orig := self originalMethod.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2057
    ^(orig respondsTo: #descriptor) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2058
        orig descriptor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2059
    ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2060
        self doesNotUnderstand: (Message selector: #descriptor)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2061
    ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2062
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2063
    "Created: / 16-12-2011 / 20:03:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2064
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2065
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2066
!WrappedMethod methodsFor:'queries'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2067
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2068
isAbstract
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2069
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2070
    ^self originalMethod isAbstract.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2071
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2072
    "Created: / 04-12-2011 / 11:24:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2152
1cbdfbcc685c Jan's version
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 749
diff changeset
  2073
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2074
2604
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2075
!ZipArchive methodsFor:'queries - java support'!
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2076
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2077
isValidFile: path
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2078
    "Return true, if the recevier contains given file. false otherwise.
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2079
    "
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2080
    ^zipMembersByName includesKey: path
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2081
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2082
    "Created: / 20-05-2013 / 23:37:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2083
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2084
! !
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2085
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2086
!ZipArchive methodsFor:'reading - java support'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2087
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2088
nextBytes: bytesToRead of: zmember startingAt: pos into: b startingAt: off
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2089
2638
54cd07376ffb use #position/#position: instead of #positionXBased
Stefan Vogel <sv@exept.de>
parents: 2635
diff changeset
  2090
    file position: (self dataStartOf: zmember) + startOfArchive + pos.
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2091
    ^ file nextBytes: bytesToRead into: b startingAt: off.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2092
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2093
    "Created: / 01-05-2011 / 16:21:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2094
    "Modified: / 10-12-2012 / 05:41:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2095
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2096
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2097
!stx_libjava class methodsFor:'documentation'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2098
2578
fc6186a4961f Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2566
diff changeset
  2099
extensionsVersion_HG
fc6186a4961f Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2566
diff changeset
  2100
fc6186a4961f Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2566
diff changeset
  2101
    ^ '$Changeset: <not expanded> $'
2476
d24ce8174195 JavaClass can now keep it's classfile bytes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2450
diff changeset
  2102
! !