extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 24 May 2013 17:55:42 +0100
branchbuiltin-class-support
changeset 2629 cedb88626902
parent 2604 b9cb81e47766
child 2965 bac7022ca26a
permissions -rw-r--r--
Closing branch.
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
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    38
    ^ BooleanArray
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>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    41
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    42
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    43
!Boolean class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    44
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
    45
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    46
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    47
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
    48
    wrapper := (JavaVM classForName: 'java.lang.Boolean') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    49
    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
    50
    ^ 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
    51
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
    "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
    53
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    54
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    55
!Boolean class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    56
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    57
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    58
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    59
    ^'boolean'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    60
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    61
    "Modified: / 25-02-2011 / 18:58:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    62
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
    63
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
    64
!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
    65
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
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
    67
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
    | 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
    69
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
    (object class name = 'java/lang/Boolean') 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
    71
        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
    72
    ].
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
    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
    74
    (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
    75
        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
    76
    ].
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
    ^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
    78
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
    "Created: / 22-11-2011 / 11:52:12 / 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
    80
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
    81
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
!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
    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
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
    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
    ^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
    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
    "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
    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
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
!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
    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
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
    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
    ^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
    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
    "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
    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
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
!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
   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
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
   103
    ^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
   104
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
    "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
   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
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
!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
   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
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   111
    ^(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
   112
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   113
    "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
   114
    "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
   115
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   116
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   117
!BooleanArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   118
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   119
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   120
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   121
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   122
    "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
   123
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   124
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   125
!BooleanArray methodsFor:'vm support'!
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
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   128
    ^cls == BooleanArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   129
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   130
    "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
   131
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   132
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   133
!BooleanArray methodsFor:'vm support'!
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
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   136
    ^BooleanArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   137
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   138
    "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
   139
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   140
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   141
!BooleanArray methodsFor:'queries'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   142
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   143
isInterface
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   144
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   145
    ^false
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   146
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   147
    "Created: / 31-05-2011 / 16:07:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   148
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   149
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   150
!BooleanArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   151
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   152
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   153
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   154
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   155
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   156
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   157
!BooleanArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   158
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   159
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   160
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   161
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   162
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   163
    "Created: / 20-12-2010 / 22:47:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   164
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   165
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   166
!BooleanArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   167
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   168
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   169
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   170
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   171
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   172
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   173
    "Created: / 20-12-2010 / 22:30:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   174
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   175
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   176
!BooleanArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   177
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
   178
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
   179
    ^ 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
   180
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   181
    "Created: / 06-12-2011 / 17:29:22 / 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
   182
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   183
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   184
!BooleanArray 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
   185
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   186
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   187
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   188
    ^Boolean
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   189
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   190
    "Created: / 20-12-2010 / 22:13:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   191
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   192
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   193
!BooleanArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   194
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   195
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   196
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
   197
    ^'[Z'.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   198
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   199
    "Modified: / 31-08-2011 / 23:57:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   200
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   201
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   202
!ByteArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   203
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   204
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   205
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   206
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   207
    "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
   208
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   209
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   210
!ByteArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   211
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   212
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   213
    ^cls == BooleanArray ifTrue:[self] ifFalse:[JavaVM throwClassCastException]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   214
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   215
    "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
   216
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   217
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   218
!ByteArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   219
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   220
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   221
    ^BooleanArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   222
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   223
    "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
   224
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   225
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   226
!ByteArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   227
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   228
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   229
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   230
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   231
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   232
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   233
!ByteArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   234
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   235
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   236
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   237
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   238
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   239
    "Created: / 05-02-2011 / 22:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   240
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   241
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   242
!ByteArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   243
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   244
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   245
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   246
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   247
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   248
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   249
    "Created: / 20-12-2010 / 22:30:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   250
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   251
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   252
!ByteArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   253
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   254
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   255
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   256
    ^JavaArray javaArrayClassFor: self
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   257
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   258
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   259
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   260
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   261
!ByteArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   262
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   263
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   264
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   265
    ^JavaByte
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   266
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   267
    "Created: / 20-12-2010 / 22:05:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   268
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   269
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   270
!ByteArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   271
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   272
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   273
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   274
    ^'[B'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   275
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   276
    "Modified: / 25-02-2011 / 19:02:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   277
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   278
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   279
!Character class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   280
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   281
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   282
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   283
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   284
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   285
    "Created: / 20-12-2010 / 22:18:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   286
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   287
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   288
!Character class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   289
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   290
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   291
    ^ String
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   292
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   293
    "Created: / 11-02-2011 / 10:44:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   294
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   295
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   296
!Character class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   297
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
   298
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
   299
    | 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
   300
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
    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
   302
    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
   303
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   304
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   305
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   306
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   307
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   308
!Character class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   309
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   310
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   311
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   312
    ^'char'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   313
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   314
    "Modified: / 25-02-2011 / 18:58:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   315
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   316
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
   317
!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
   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
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
   320
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   321
    | 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
   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
    (object class name = 'java/lang/Character') 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
   324
        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
   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
    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
   327
    (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
   328
        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
   329
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   330
    ^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
   331
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
    "Created: / 22-11-2011 / 11:52:12 / 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
   333
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   334
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   335
!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
   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
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   338
    ^(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
   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
    "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
   341
    "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
   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
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   344
!CharacterArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   345
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   346
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   347
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   348
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   349
    "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
   350
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   351
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   352
!CharacterArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   353
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   354
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   355
    cls == Unicode16String ifTrue:[^self].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   356
    cls == String          ifTrue:[^self].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   357
    ^JavaVM throwClassCastException.
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   358
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   359
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   360
    "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
   361
    "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
   362
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   363
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   364
!CharacterArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   365
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   366
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   367
    cls == Unicode16String ifTrue:[^1].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   368
    cls == String          ifTrue:[^1].
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   369
    ^0
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   370
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   371
    "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
   372
    "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
   373
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   374
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
   375
!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
   376
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   377
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
   378
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   379
 "
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
    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
   381
    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
   382
    [[[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
   383
    "
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
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   385
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
    | 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
   387
    nm := 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
   388
    (nm 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
   389
	nm := nm copyFrom: 2 to: nm 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
   390
    ].
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
    (nm 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
   392
	nm := nm 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
   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
    ^ 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
   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
    "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
   397
    "Created: / 30-10-2011 / 17:41:04 / 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
   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:'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
   401
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   402
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
   403
    | 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
   404
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   405
    componentClassName := self utf8Encoded.
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
    (componentClassName matches: '*\[*') 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
	componentClassName := 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
   408
		    copyFrom: (componentClassName lastIndexOf: $[) + 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
   409
		    to: componentClassName 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
   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
    ^ 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
   412
! !
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
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
!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
   415
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
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
   417
    | 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
   418
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   419
    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
   420
    (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
   421
    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
   422
    ^ 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
   423
! !
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
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   425
!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
   426
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   427
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
   428
    | 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
   429
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   430
    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
   431
    (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
   432
	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
   433
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   434
    (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
   435
	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
   436
    ].
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
    ^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
   438
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   439
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   440
!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
   441
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   442
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
   443
    "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
   444
    | 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
   445
    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
   446
    (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
   447
	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
   448
    ].
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
    (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
   450
	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
   451
    ].
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
    ^ 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
   453
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   454
    "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
   455
    "Created: / 30-10-2011 / 17:40: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
   456
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   457
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   458
!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
   459
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   460
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
   461
^ 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
   462
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   463
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   464
!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
   465
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   466
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
   467
    ^ (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
   468
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   469
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   470
!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
   471
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   472
withoutSuffix: aString 
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   473
    "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
   474
     Otherwise return 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
   475
    
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   476
    (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
   477
        ^ 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
   478
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   479
    ^ 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
   480
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
    "
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
     '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
   483
     '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
   484
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
    "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
   486
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   487
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   488
!CharacterArray class methodsFor:'encoding & decoding'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   489
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
   490
decodeFromJavaUTF8: bytes
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   491
    "Decodes a string from modified UTF8 encoding
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   492
     as used in Java .class files. see
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   493
     '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
   494
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   495
    | string  i  s  b  codePoint  realLength |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   496
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   497
    string := String new: bytes size.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   498
    realLength := bytes size.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   499
    s := bytes readStream.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   500
    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
   501
    [ s atEnd ] whileFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   502
            [ 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
   503
            (b & 2r10000000) == 0
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   504
                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
   505
                ifFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   506
                    [ 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
   507
                    (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
   508
                        ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   509
                            [ "two byte utf char"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   510
                            realLength := realLength - 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   511
                            self assert: s size > 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   512
                            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
   513
                            string bitsPerCharacter < 16
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   514
                                ifTrue: [ string := Unicode16String fromString: string ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   515
                            codePoint := (b & 2r00011111) << 6.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   516
                            b := s next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   517
                            self assert: (b & 2r11000000) = 2r10000000.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   518
                            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
   519
                        ifFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   520
                            [ "at lease 3 byte utf char"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   521
                            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
   522
                            string bitsPerCharacter < 16"was: 32"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   523
                                ifTrue: [ string := Unicode16String"was: Unicode32String" fromString: string ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   524
                            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
   525
                            (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
   526
                                ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   527
                                    [ | utf32Possible  utf32Value |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   528
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   529
                                    "3 or 6 byte utf char"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   530
                                    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
   531
                                    s size < 5
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   532
                                        ifTrue: [ utf32Possible := false ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   533
                                        ifFalse: [ utf32Possible := true ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   534
                                    b ~= 2r11101101 ifTrue: [ utf32Possible := false ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   535
                                    codePoint := (b & 2r00001111) << 12.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   536
                                    b := s next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   537
                                    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
   538
                                    ((b & 2r11110000) = 2r10100000 and: [ utf32Possible ])
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   539
                                        ifTrue: [ utf32Value := 2r00010000 + ((b & 2r00001111) << 16) ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   540
                                        ifFalse: [ utf32Possible := false ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   541
                                    codePoint := codePoint + ((b & 2r00111111) << 6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   542
                                    b := s next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   543
                                    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
   544
                                    utf32Possible
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   545
                                        ifTrue: [ utf32Value := utf32Value + ((b & 2r00111111) << 10) ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   546
                                    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
   547
                                    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
   548
                                        ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   549
                                            [ | tmpB |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   550
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
   551
                                            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
   552
                                                ifTrue: [ string := Unicode32String fromString: string ].
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   553
                                            tmpB := s copy.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   554
                                            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
   555
                                            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
   556
                                                ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   557
                                                    [ 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
   558
                                                    (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
   559
                                                        ifTrue:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   560
                                                            [ utf32Value := utf32Value + ((b & 2r00001111) << 6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   561
                                                            b := tmpB next.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   562
                                                            self assert: (b & 2r11000000) = 2r10000000.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   563
                                                            utf32Value := utf32Value + (b & 2r00111111).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   564
                                                            codePoint := utf32Value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   565
                                                            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
   566
                                ifFalse:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   567
                                    [ "should not happen, ask mh"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   568
                                    self halt. ] ] ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   569
            string at: i put: (Character codePoint: codePoint).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   570
            i := i + 1. ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   571
    ^ string subString: 1 to: realLength.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   572
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   573
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   574
        String decodeFromJavaUTF8: 'Hello world' asByteArray"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   575
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   576
    "Created: / 22-12-2010 / 23:45:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   577
    "Modified: / 09-02-2011 / 01:12:25 / Marcel Hlopko <hlopik@gmail.com>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   578
    "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
   579
    "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
   580
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   581
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   582
!CharacterArray class methodsFor:'instance creation'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   583
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   584
fromJavaUTF8Bytes:aByteCollection
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   585
    "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
   586
     from the modified utf8 encoded bytes as specified in
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   587
     The class file format specification, section 4.5.7"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   588
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   589
    ^ self decodeFromJavaUTF8:aByteCollection.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   590
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   591
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   592
     CharacterArray fromUTF8Bytes:#[ 16r41 16r42 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   593
     CharacterArray fromUTF8Bytes:#[ 16rC1 16r02 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   594
     CharacterArray fromUTF8Bytes:#[ 16rE0 16r81 16r02 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   595
     CharacterArray fromUTF8Bytes:#[ 16rEF 16rBF 16rBF ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   596
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   597
   rfc2279 examples:
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   598
     CharacterArray fromUTF8Bytes:#[ 16r41 16rE2 16r89 16rA2 16rCE 16r91 16r2E ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   599
     CharacterArray fromUTF8Bytes:#[ 16rED 16r95 16r9C 16rEA 16rB5 16rAD 16rEC 16r96 16rB4 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   600
     CharacterArray fromUTF8Bytes:#[ 16rE6 16r97 16rA5 16rE6 16r9C 16rAC 16rE8 16rAA 16r9E ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   601
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   602
   invalid:
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   603
     CharacterArray fromUTF8Bytes:#[ 16rC0 16r80 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   604
     CharacterArray fromUTF8Bytes:#[ 16rE0 16r80 16r80 ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   605
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   606
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   607
    "Created: / 23-12-2010 / 09:01:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   608
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   609
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   610
!CharacterArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   611
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   612
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   613
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   614
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   615
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   616
    "Created: / 05-02-2011 / 22:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   617
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   618
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   619
!CharacterArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   620
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   621
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   622
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   623
    ^JavaArray javaArrayClassFor: Unicode16String
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   624
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   625
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   626
    "Modified: / 10-08-2011 / 13:18:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   627
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   628
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   629
!CharacterArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   630
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   631
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   632
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   633
    ^Character
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   634
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   635
    "Created: / 20-12-2010 / 22:05:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   636
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   637
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
   638
!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
   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
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
   641
    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
   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
    "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
   644
! !
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
!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
   647
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
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
   649
    ^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
   650
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   651
    "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
   652
! !
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
!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
   655
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   656
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
   657
    "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
   658
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   659
    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
   660
    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
   661
    ^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
   662
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   663
    "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
   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
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   666
!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
   667
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   668
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
   669
    | 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
   670
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   671
    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
   672
    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
   673
    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
   674
    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
   675
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   676
    ^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
   677
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   678
    "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
   679
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   680
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   681
!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
   682
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   683
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
   684
    "/ 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
   685
    ^ (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
   686
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   687
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   688
     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
   689
     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
   690
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   691
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   692
    "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
   693
    "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
   694
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   695
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   696
!Context 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
   697
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   698
arg1Index    
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   699
    ^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
   700
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   701
    "Created: / 31-01-2013 / 13:29: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
   702
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   703
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   704
!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
   705
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   706
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
   707
    "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
   708
     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
   709
     has been reached (if resumptionTime non-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
   710
    
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   711
    | wasBlocked  currentDelta  dueTime  now  then |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   712
    isInterrupted := 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
   713
    millisecondDelta 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
   714
        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
   715
        currentDelta := millisecondDelta rounded.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   716
        currentDelta > 16r0fffffff 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
   717
            "NOTE: the microsecondTime is increasing monotonically,
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   718
                   while millisecondTime is wrapping at 16r1fffffff.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   719
                   So use the microsecondTime to check when we are finished"
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
            dueTime := OperatingSystem getMicrosecondTime + (currentDelta * 1000).
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
            currentDelta := 16r0fffffff.
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
        then := OperatingSystem millisecondTimeAdd: now and: currentDelta.
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
    ] ifFalse: [ then := resumptionTime. ].
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
    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
   726
    [
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
        [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   728
            Processor signal: delaySemaphore atMilliseconds: then.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   729
            Processor activeProcess state: 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
   730
            delaySemaphore 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
   731
        ] doWhile: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   732
            (dueTime 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
   733
                and: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   734
                    isInterrupted not 
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   735
                        and: [ (currentDelta := dueTime - OperatingSystem getMicrosecondTime) > 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
   736
                ]) 
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   737
                    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
   738
                        currentDelta := (currentDelta // 1000) min: 16r0fffffff.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   739
                        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
   740
                        then := OperatingSystem millisecondTimeAdd: now and: currentDelta.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   741
                        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
   742
                    ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   743
                    ifFalse: [ 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
   744
        ].
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
    ] ensure: [ 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
   746
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
    "
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
     Transcript showCR:'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
   749
     (Delay forSeconds:10) 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
   750
     Transcript showCR:'2'."
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
    "Modified: / 26-02-1997 / 15:21:35 / 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
   753
    "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
   754
    "Created: / 30-11-2011 / 13:38: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
   755
! !
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
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   757
!DoubleArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   758
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   759
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   760
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   761
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   762
    "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
   763
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   764
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   765
!DoubleArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   766
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   767
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   768
    ^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
   769
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   770
    "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
   771
    "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
   772
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   773
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   774
!DoubleArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   775
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   776
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   777
    ^DoubleArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   778
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   779
    "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
   780
    "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
   781
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   782
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   783
!DoubleArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   784
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   785
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   786
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   787
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   788
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   789
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   790
!DoubleArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   791
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   792
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   793
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   794
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   795
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   796
    "Created: / 20-12-2010 / 22:47:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   797
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   798
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   799
!DoubleArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   800
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   801
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   802
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   803
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   804
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   805
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   806
    "Created: / 20-12-2010 / 22:30:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   807
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   808
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   809
!DoubleArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   810
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
   811
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
   812
    ^ 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
   813
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   814
    "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
   815
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   816
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
!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
   818
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   819
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   820
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   821
    ^Float
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   822
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   823
    "Created: / 20-12-2010 / 22:06:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   824
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   825
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   826
!DoubleArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   827
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   828
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   829
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   830
    ^'[D'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   831
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   832
    "Modified: / 25-02-2011 / 19:03:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   833
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   834
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
   835
!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
   836
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   837
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
   838
    ^ 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
   839
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   840
    "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
   841
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   842
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   843
!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
   844
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   845
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
   846
    "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
   847
    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
   848
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   849
    ^ 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
   850
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   851
    "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
   852
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   853
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   854
!Float class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   855
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   856
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   857
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   858
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   859
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   860
    "Created: / 06-02-2011 / 17:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   861
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   862
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   863
!Float class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   864
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   865
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   866
    ^ DoubleArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   867
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   868
    "Created: / 11-02-2011 / 10:50:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   869
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   870
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   871
!Float class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   872
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
   873
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   874
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   875
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
   876
    wrapper := (JavaVM classForName: 'java.lang.Double') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   877
    wrapper perform: #'<init>(D)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
   878
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   879
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   880
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   881
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   882
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   883
!Float class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   884
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   885
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   886
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   887
    ^'double'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   888
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   889
    "Modified: / 25-02-2011 / 18:59:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   890
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   891
2442
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   892
!Float class methodsFor:'autoboxing support'!
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   893
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   894
javaUnbox: object onError: errorBlock
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   895
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   896
    | value |
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   897
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   898
    (object class name = 'java/lang/Double') ifFalse:[
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   899
        errorBlock value.
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   900
    ].
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   901
    value := object instVarNamed: #value.
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   902
    ^value
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   903
! !
037e8713d1a2 added Float >> javaUnbox:onError:
Claus Gittinger <cg@exept.de>
parents: 2353
diff changeset
   904
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
   905
!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
   906
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   907
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
   908
    ^(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
   909
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   910
    "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
   911
    "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
   912
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   913
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   914
!FloatArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   915
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   916
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   917
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   918
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   919
    "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
   920
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   921
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   922
!FloatArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   923
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   924
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   925
    ^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
   926
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   927
    "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
   928
    "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
   929
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   930
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   931
!FloatArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   932
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   933
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   934
    ^FloatArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   935
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   936
    "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
   937
    "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
   938
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
   939
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   940
!FloatArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   941
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   942
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   943
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   944
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   945
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   946
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   947
!FloatArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   948
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   949
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   950
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   951
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   952
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   953
    "Created: / 20-12-2010 / 22:47:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   954
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   955
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   956
!FloatArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   957
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   958
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   959
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   960
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   961
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   962
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   963
    "Created: / 20-12-2010 / 22:30:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   964
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   965
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   966
!FloatArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   967
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
   968
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
   969
    ^ 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
   970
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
    "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
   972
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
   973
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
!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
   975
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   976
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   977
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   978
    ^ShortFloat
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   979
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   980
    "Created: / 20-12-2010 / 22:06:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   981
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   982
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   983
!FloatArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   984
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   985
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   986
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   987
    ^'[F'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   988
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   989
    "Modified: / 25-02-2011 / 19:03:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   990
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
   991
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   992
!Integer class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   993
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   994
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   995
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   996
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   997
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   998
    "Created: / 11-02-2011 / 11:12:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   999
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1000
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1001
!Integer class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1002
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1003
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1004
    ^ SignedIntegerArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1005
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1006
    "Created: / 11-02-2011 / 10:51:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1007
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1008
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1009
!Integer class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1010
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
  1011
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1012
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1013
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
  1014
    wrapper := (JavaVM classForName: 'java.lang.Integer') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1015
    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
  1016
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1017
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1018
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1019
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1020
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1021
!Integer class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1022
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1023
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1024
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1025
    ^'int'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1026
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1027
    "Modified: / 25-02-2011 / 18:59:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1028
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1029
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
  1030
!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
  1031
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
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
  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
    ^self 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
  1035
          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
  1036
          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
  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
    "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
  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
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1041
!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
  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
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
  1044
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
    | 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
  1046
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/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
  1048
        '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
  1049
        'java/lang/Integer'
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
        "'java/lang/Long'" ) includes: object class name) 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
  1051
        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
  1052
    ].
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
    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
  1055
    (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
  1056
        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
  1057
    ].
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
    ^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
  1059
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
    "Created: / 22-11-2011 / 11:43:17 / 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
  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
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
!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
  1064
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
javaWrapperClass
2588
58b1e0fd20e7 Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2578
diff changeset
  1066
    ^(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
  1067
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
    "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
  1069
    "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
  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
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1072
!LargeInteger class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1073
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1074
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1075
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1076
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1077
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1078
    "Created: / 04-02-2011 / 11:55:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1079
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1080
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1081
!LargeInteger class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1082
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1083
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1084
    ^ SignedLongIntegerArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1085
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1086
    "Created: / 11-02-2011 / 10:51:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1087
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1088
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1089
!LargeInteger class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1090
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
  1091
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1092
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1093
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
  1094
    wrapper := (JavaVM classForName: 'java.lang.Long') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1095
    wrapper perform: #'<init>(J)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
  1096
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1097
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1098
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1099
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1100
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1101
!LargeInteger class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1102
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1103
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1104
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1105
    ^'long'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1106
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1107
    "Modified: / 25-02-2011 / 18:59:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1108
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1109
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
!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
  1111
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
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
  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
    | 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
  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
    (object class name = 'java/lang/Long') 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
  1117
        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
  1118
    ].
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
    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
  1121
    (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
  1122
        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
  1123
    ].
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
    ^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
  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
    "Created: / 22-11-2011 / 11:45: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
  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
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
!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
  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
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
  1132
    ^(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
  1133
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
    "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
  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
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
!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
  1138
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1139
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
  1140
    "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
  1141
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1142
    ^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
  1143
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1144
    "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
  1145
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1146
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1147
!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
  1148
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1149
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
  1150
    "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
  1151
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
    ^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
  1153
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1154
    "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
  1155
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1156
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1157
!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
  1158
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1159
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
  1160
    "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
  1161
    ^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
  1162
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1163
    "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
  1164
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1165
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1166
!Object methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1167
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1168
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1169
    ^JavaVM _ARRAYLENGTH: self
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1170
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1171
    "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
  1172
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1173
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1174
!Object methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1175
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1176
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1177
    ^JavaVM _CHECKCAST: self _: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1178
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1179
    "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
  1180
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1181
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1182
!Object methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1183
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1184
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1185
    ^JavaVM _INSTANCEOF: self _: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1186
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1187
    "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
  1188
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1189
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
  1190
!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
  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
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
  1193
    "Returns a Java lock word for given object. The returned
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
     value is 
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
        - 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
  1196
        - 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
  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
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
    "/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
  1200
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1201
    ^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
  1202
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1203
    "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
  1204
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1205
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1206
!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
  1207
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1208
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
  1209
    "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
  1210
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1211
    ^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
  1212
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
    "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
  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
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
!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
  1217
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
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
  1219
    ^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
  1220
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
    "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
  1222
! !
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
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1224
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1225
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1226
isJavaArray
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1227
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1228
    ^self class isJavaArrayClass
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1229
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1230
    "Created: / 19-12-2010 / 17:05:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1231
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1232
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1233
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1234
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1235
isJavaNameAndType
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1236
    "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
  1237
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1238
    ^ false.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1239
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1240
    "Created: / 10-05-2011 / 12:21:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1241
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1242
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1243
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1244
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1245
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
  1246
    "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
  1247
     False is returned here - the method is only redefined in JavaPackage."
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1248
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1249
    ^ false
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1250
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1251
    "Created: / 09-08-2011 / 09:35:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1252
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1253
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1254
!Object methodsFor:'testing'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1255
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1256
isJavaRef
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1257
"return true, if given object represents reference in java constant pool"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1258
^ false.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1259
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1260
    "Created: / 08-04-2011 / 16:12:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1261
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1262
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
  1263
!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
  1264
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
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
  1266
    "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
  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
    ^ 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
  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
    "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
  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
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1273
!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
  1274
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1275
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
  1276
    "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
  1277
     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
  1278
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1279
    ^ 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
  1280
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1281
    "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
  1282
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1283
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1284
!Object methodsFor:'autoboxing support'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1285
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1286
javaBox: anObject
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1287
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1288
    ^anObject
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1289
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1290
    "Created: / 15-08-2011 / 10:52:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1291
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1292
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1293
!Object methodsFor:'autoboxing support'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1294
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
  1295
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
  1296
    "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
  1297
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1298
    ^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
  1299
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1300
    "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
  1301
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1302
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1303
!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
  1304
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1305
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
  1306
    ^ 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
  1307
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1308
    "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
  1309
    "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
  1310
! !
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
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
!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
  1313
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
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
  1315
    "Wraps the receiver into corresponding Java object"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1316
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1317
    ^anObject
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1318
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
  1319
    "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
  1320
! !
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
!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
  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
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
  1325
    "Returns true, if a #javaWrap: has to be called
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
     prior an instance of Smalltalk object is passed 
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
     as an argument to Java method, whoose formal tyoe
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
     is 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
  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
     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
  1331
     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
  1332
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
     publid void setCount(int 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
  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
     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
  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
     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
  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
     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
  1340
     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
  1341
     (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
  1342
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
     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
  1344
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
     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
  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
     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
  1348
     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
  1349
     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
  1350
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
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
    ^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
  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
    "Created: / 05-11-2012 / 00:29:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1356
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1357
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1358
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1359
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1360
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1361
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1362
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1363
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1364
    "Created: / 19-12-2010 / 17:05:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1365
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1366
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1367
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1368
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1369
isJavaClassType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1370
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1371
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1372
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1373
    "Created: / 11-02-2011 / 08:08:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1374
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1375
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1376
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1377
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1378
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1379
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1380
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1381
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1382
    "Created: / 20-12-2010 / 21:52:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1383
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1384
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1385
!Object class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1386
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1387
isJavaType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1388
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1389
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1390
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1391
    "Created: / 20-12-2010 / 21:52:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1392
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1393
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
  1394
!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
  1395
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
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
  1397
    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
  1398
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
    "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
  1400
    "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
  1401
! !
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
!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
  1404
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
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
  1406
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
    ^ 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
  1408
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
    "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
  1410
    "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
  1411
! !
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
!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
  1414
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
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
  1416
    "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
  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
    ^ (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
  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
    "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
  1421
! !
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
!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
  1424
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
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
  1426
    "return true, iff the receiver is sleeping on Delay"
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
    
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
    ^ (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
  1429
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
    "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
  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
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
!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
  1434
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
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
  1436
    "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
  1437
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
    ^ (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
  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
    "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
  1441
! !
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
!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
  1444
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
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
  1446
    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
  1447
        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
  1448
            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
  1449
            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
  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
        ^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
  1452
    ].
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
    self isSleeping 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
  1455
        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
  1456
            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
  1457
            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
  1458
        ].
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
        ^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
  1460
    ].
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
    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
  1463
        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
  1464
        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
  1465
        ^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
  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
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
    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
  1469
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
    "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
  1471
    "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
  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
!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
  1475
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
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
  1477
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
    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
  1479
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
    "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
  1481
    "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
  1482
! !
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
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
!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
  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
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
  1487
    "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
  1488
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
    ^ 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
  1490
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
    "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
  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
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
!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
  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
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
  1497
    "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
  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
    ^ 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
  1500
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
    "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
  1502
! !
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
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
!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
  1505
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
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
  1507
    "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
  1508
     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
  1509
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
    ^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
  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
    "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
  1513
! !
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
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
!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
  1516
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
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
  1518
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
    "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
  1520
     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
  1521
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
    ^#()
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
    "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
  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
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
!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
  1528
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1529
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
  1530
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
    "Defines paths to Java source files (for packages that
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
     contains Java code"    
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
    ^#()
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: / 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
  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
!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
  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
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
  1541
    "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
  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
     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
  1544
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1545
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1546
    |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
  1547
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1548
    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
  1549
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1550
    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
  1551
        "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
  1552
        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
  1553
            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
  1554
            ^ 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
  1555
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1556
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1557
        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
  1558
        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
  1559
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1560
        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
  1561
            "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
  1562
            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
  1563
            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
  1564
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1565
            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
  1566
            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
  1567
        ].
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
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1569
        "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1570
         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
  1571
         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
  1572
         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
  1573
         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
  1574
        "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1575
        [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1576
            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
  1577
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1578
            "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1579
             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
  1580
             ... 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
  1581
            "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1582
            [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1583
                "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
  1584
                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
  1585
            ] 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
  1586
                "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
  1587
                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
  1588
                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
  1589
                    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
  1590
                    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
  1591
                ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1592
                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
  1593
                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
  1594
            ].
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
            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
  1597
            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
  1598
                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
  1599
                ^ 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
  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
        ] 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
  1602
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1603
        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
  1604
            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
  1605
            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
  1606
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1607
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1608
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1609
    "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
  1610
    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
  1611
    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
  1612
        lastOwner := 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
  1613
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1614
    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
  1615
    ^ 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
  1616
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1617
    "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
  1618
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1619
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1620
!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
  1621
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1622
java__contains: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
  1623
         ^ self contains: [:el | anObject = el ] 
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1624
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1625
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1626
!ShortFloat class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1627
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1628
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1629
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1630
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1631
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1632
    "Created: / 06-02-2011 / 17:21:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
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
!ShortFloat class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1636
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1637
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1638
    ^ FloatArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1639
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1640
    "Created: / 11-02-2011 / 10:50:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1641
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1642
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1643
!ShortFloat class methodsFor:'autoboxing support'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1644
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
  1645
javaBox: anObject
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1646
    | wrapper |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1647
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
  1648
    wrapper := (JavaVM classForName: 'java.lang.Float') new.
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1649
    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
  1650
    ^ wrapper
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1651
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1652
    "Created: / 16-08-2011 / 09:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1653
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1654
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1655
!ShortFloat class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1656
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1657
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1658
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1659
    ^'float'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1660
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1661
    "Modified: / 25-02-2011 / 18:59:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1662
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1663
2450
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1664
!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
  1665
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1666
javaUnbox: object onError: errorBlock
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1667
    (object class name = 'java/lang/Float') ifFalse:[
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1668
        errorBlock value.
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1669
    ].
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1670
    ^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
  1671
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1672
    "Created: / 22-11-2011 / 11:52:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1673
    "Modified: / 09-03-2013 / 12:13:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1674
! !
1d34ee4362f4 Fixes for reflection - added box/unbox support to Float/ShortFloat.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2380
diff changeset
  1675
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
  1676
!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
  1677
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1678
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
  1679
    ^(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
  1680
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1681
    "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
  1682
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1683
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1684
!SignedIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1685
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1686
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1687
    ^self basicSize
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
    "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
  1690
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1691
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1692
!SignedIntegerArray methodsFor:'vm support'!
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
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1695
    ^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
  1696
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1697
    "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
  1698
    "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
  1699
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1700
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1701
!SignedIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1702
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1703
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1704
    ^SignedIntegerArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1705
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1706
    "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
  1707
    "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
  1708
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1709
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1710
!SignedIntegerArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1711
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1712
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1713
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1714
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1715
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1716
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1717
!SignedIntegerArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1718
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1719
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1720
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1721
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1722
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1723
    "Created: / 06-02-2011 / 15:16:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1724
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1725
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1726
!SignedIntegerArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1727
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1728
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1729
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1730
    ^JavaArray javaArrayClassFor: SignedIntegerArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1731
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1732
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1733
    "Modified: / 10-08-2011 / 22:47:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1734
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1735
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1736
!SignedIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1737
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1738
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1739
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1740
    ^ Integer
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1741
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1742
    "Created: / 25-06-2011 / 08:38:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1743
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1744
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1745
!SignedIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1746
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1747
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1748
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1749
    ^'[I'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1750
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1751
    "Modified: / 25-02-2011 / 19:03:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1752
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1753
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1754
!SignedLongIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1755
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1756
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1757
    ^self basicSize
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
    "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
  1760
! !
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
!SignedLongIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1763
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1764
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1765
    ^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
  1766
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1767
    "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
  1768
    "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
  1769
! !
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
!SignedLongIntegerArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1772
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1773
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1774
    ^SignedLongIntegerArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1775
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1776
    "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
  1777
    "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
  1778
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1779
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1780
!SignedLongIntegerArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1781
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1782
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1783
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1784
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1785
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1786
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1787
!SignedLongIntegerArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1788
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1789
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1790
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1791
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1792
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1793
    "Created: / 20-12-2010 / 22:47:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1794
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1795
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1796
!SignedLongIntegerArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1797
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1798
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1799
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1800
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1801
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1802
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1803
    "Created: / 20-12-2010 / 22:30:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1804
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1805
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
  1806
!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
  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
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
  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
    ^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
  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: / 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
  1813
    "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
  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
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1816
!SignedLongIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1817
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1818
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1819
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1820
    ^LargeInteger
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1821
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1822
    "Modified: / 25-06-2011 / 08:38:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1823
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1824
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1825
!SignedLongIntegerArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1826
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1827
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1828
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1829
    ^'[J'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1830
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1831
    "Modified: / 25-02-2011 / 19:03:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1832
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1833
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1834
!SignedWordArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1835
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1836
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1837
    ^self basicSize
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1838
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1839
    "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
  1840
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1841
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1842
!SignedWordArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1843
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1844
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1845
    ^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
  1846
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1847
    "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
  1848
    "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
  1849
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1850
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1851
!SignedWordArray methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1852
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1853
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1854
    ^SignedWordArray == cls ifTrue:[1] ifFalse:[0]
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1855
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1856
    "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
  1857
    "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
  1858
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1859
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
  1860
!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
  1861
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
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
  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
    ^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
  1865
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
    "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
  1867
! !
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
!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
  1870
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1871
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
  1872
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1873
    "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
  1874
    ^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
  1875
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1876
    "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
  1877
! !
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
!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
  1880
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
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
  1882
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
    ^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
  1884
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1885
    "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
  1886
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1887
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1888
!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
  1889
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1890
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
  1891
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1892
    ^'[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
  1893
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1894
    "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
  1895
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1896
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1897
!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
  1898
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1899
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
  1900
    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
  1901
        ^ 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
  1902
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1903
    ^ 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
  1904
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1905
    "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
  1906
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1907
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1908
!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
  1909
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1910
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
  1911
    ^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
  1912
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1913
    "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
  1914
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1915
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1916
!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
  1917
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1918
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
  1919
    "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
  1920
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1921
    | pno |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1922
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1923
    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
  1924
    pno := port.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1925
    [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1926
        self domain: domain type: socketType protocol: protocol reuseAddress: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
  1927
        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
  1928
        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
  1929
    ] on: OpenError do:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1930
        "Notning, socket could not be reopened"
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
    ].
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
    "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
  1934
! !
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
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1936
!String methodsFor:'converting'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1937
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
  1938
asArrayOfSubstringsSeparatedBy:aSeparator
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1939
    "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
  1940
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1941
    |substrings start end|
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1942
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1943
    substrings := OrderedCollection new.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1944
    start := 1.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1945
    [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
  1946
	(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
  1947
	    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
  1948
	    [
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
		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
  1950
	    ] 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
  1951
	    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
  1952
	    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
  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
	start := start + 1
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1955
    ].
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1956
    ^ substrings asArray
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1957
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1958
    "Created: / 07-02-2011 / 11:18:03 / Marcel Hlopko <hlopik@gmail.com>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1959
    "Modified: / 08-02-2011 / 01:08:15 / Marcel Hlopko <hlopik@gmail.com>"
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1960
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  1961
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
  1962
!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
  1963
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
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
  1965
    ^ '[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
  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
    "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
  1968
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  1969
2595
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1970
!UndefinedObject methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1971
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1972
_ARRAYLENGTH: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1973
    ^JavaVM throwNullPointerException
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1974
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1975
    "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
  1976
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1977
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1978
!UndefinedObject methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1979
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1980
_CHECKCAST: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1981
    ^nil
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1982
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1983
    "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
  1984
    "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
  1985
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1986
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1987
!UndefinedObject methodsFor:'vm support'!
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1988
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1989
_INSTANCEOF: cls
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1990
    ^0
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1991
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1992
    "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
  1993
    "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
  1994
! !
77ab6e032c7f CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2588
diff changeset
  1995
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1996
!UndefinedObject class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1997
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1998
isJavaPrimitiveType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1999
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2000
    "void"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2001
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2002
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2003
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2004
    "Created: / 21-12-2010 / 22:52:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2005
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2006
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2007
!UndefinedObject class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2008
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2009
javaName
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2010
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2011
    ^'void'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2012
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2013
    "Modified: / 25-02-2011 / 18:59:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2014
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2015
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
  2016
!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
  2017
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2018
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
  2019
    ^ '[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
  2020
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2021
    "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
  2022
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2023
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2024
!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
  2025
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2026
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
  2027
    "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
  2028
     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
  2029
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2030
    | 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
  2031
    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
  2032
    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
  2033
        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
  2034
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2035
    ^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
  2036
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2037
    "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
  2038
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2039
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2040
!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
  2041
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2042
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
  2043
    ^ self at:#javaReleaseSelector ifAbsent:[nil].
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2044
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2045
    "
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
  2046
        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
  2047
        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
  2048
        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
  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
        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
  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
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
    "Created: / 27-07-2012 / 10:02:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2054
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2055
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
  2056
!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
  2057
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
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
  2059
    "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
  2060
     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
  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
    self at:#javaReleaseSelector put: 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
  2063
    Java 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
  2064
        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
  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
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
    "
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
        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
  2070
        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
  2071
        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
  2072
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2073
        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
  2074
        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
  2075
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2076
        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
  2077
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2078
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2079
    "Created: / 27-07-2012 / 10:02:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2080
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2081
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2082
!WordArray class methodsFor:'testing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2083
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2084
isInterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2085
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2086
    ^false
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2087
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2088
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2089
!WordArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2090
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2091
isJavaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2092
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2093
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2094
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2095
    "Created: / 20-12-2010 / 22:47:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2096
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2097
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2098
!WordArray class methodsFor:'queries'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2099
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2100
isJavaReferenceType
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2101
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2102
    "Java arrays are reference types"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2103
    ^true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2104
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2105
    "Created: / 20-12-2010 / 22:30:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2106
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2107
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2108
!WordArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2109
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2110
javaArrayClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2111
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2112
    ^JavaArray javaArrayClassFor: WordArray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2113
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2114
    "Created: / 11-06-2011 / 23:42:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2115
    "Modified: / 10-08-2011 / 22:46:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2116
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2117
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2118
!WordArray class methodsFor:'accessing-java'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2119
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2120
javaComponentClass
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2121
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2122
    ^JavaShort
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2123
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2124
    "Created: / 20-12-2010 / 22:13:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2125
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2126
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2127
!WordArray class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2128
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2129
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
  2130
    ^ '[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
  2131
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2132
    "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
  2133
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2134
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2135
!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
  2136
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2137
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
  2138
    "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
  2139
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2140
    | 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
  2141
    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
  2142
    ^(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
  2143
        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
  2144
    ] 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
  2145
        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
  2146
    ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2147
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2148
    "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
  2149
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2150
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2151
!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
  2152
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2153
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
  2154
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2155
    ^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
  2156
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2339
diff changeset
  2157
    "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
  2158
! !
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2159
2604
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2160
!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
  2161
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2162
isValidFile: path
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2163
    "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
  2164
    "
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2165
    ^zipMembersByName includesKey: path
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2166
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2167
    "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
  2168
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2169
! !
b9cb81e47766 Lost changes meant to be commited in 7af1671fc73f.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2595
diff changeset
  2170
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2171
!ZipArchive methodsFor:'reading - java support'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2172
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2173
nextBytes: bytesToRead of: zmember startingAt: pos into: b startingAt: off
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2174
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
  2175
    file position0Based: (self dataStartOf: zmember) + startOfArchive + pos.
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2176
    ^ file nextBytes: bytesToRead into: b startingAt: off.
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2177
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2178
    "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
  2179
    "Modified: / 10-12-2012 / 05:41:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2339
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2180
! !
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2181
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2182
!stx_libjava class methodsFor:'documentation'!
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2183
2578
fc6186a4961f Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2566
diff changeset
  2184
extensionsVersion_HG
fc6186a4961f Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2566
diff changeset
  2185
fc6186a4961f Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2566
diff changeset
  2186
    ^ '$Changeset: <not expanded> $'
2476
d24ce8174195 JavaClass can now keep it's classfile bytes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2450
diff changeset
  2187
! !