VarArgCheapBlock.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 15 Jun 2009 20:55:05 +0100
branchjv
changeset 17711 39faaaf888b4
parent 7589 2ac0ac814fc8
child 17761 b0e5971141bc
permissions -rw-r--r--
Added branch jv
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2247
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
	      All Rights Reserved
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
5351
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    15
"{ Package: 'stx:libbasic' }"
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    16
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    17
CheapBlock variableSubclass:#VarArgCheapBlock
2247
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	instanceVariableNames:''
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	classVariableNames:''
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	poolDictionaries:''
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
	category:'Kernel-Methods'
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
!VarArgCheapBlock class methodsFor:'documentation'!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
copyright
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
 COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	      All Rights Reserved
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
 This software is furnished under a license and may be used
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 only in accordance with the terms of that license and with the
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
 inclusion of the above copyright notice.   This software may not
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
 be provided or otherwise made available to, or used by, any
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
 other person.  No title to or ownership of the software is
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
 hereby transferred.
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
documentation
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    read the documentation in VarArgBlocks.
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
    [author:]
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
        Claus Gittinger
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
    [see also:]
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
        Block CheapBlock
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
! !
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
5351
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    55
!VarArgCheapBlock class methodsFor:'initialization'!
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    56
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    57
initialize
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    58
    "must clear the is-block flag bit in the class
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    59
     (otherwise, the VM might try to inline value-messages)"
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    60
5353
286dbcd4c605 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5351
diff changeset
    61
    |flags|
286dbcd4c605 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5351
diff changeset
    62
286dbcd4c605 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5351
diff changeset
    63
    flags := self flags.
5351
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    64
    flags := flags bitClear:(Behavior flagBlock).
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    65
    flags := flags bitOr:(Behavior flagBlockLike).
5353
286dbcd4c605 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5351
diff changeset
    66
    self flags:flags.
5351
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    67
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    68
    "
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    69
     self flags.       
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    70
     self initialize.
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    71
     self flags.      
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    72
    "
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    73
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    74
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    75
! !
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
    76
2247
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
!VarArgCheapBlock methodsFor:'evaluation'!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
value
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    "evaluate the receiver with no block args."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
    ^ super value:#()
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
    "Created: 23.1.1997 / 04:57:49 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
value:arg
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
    "evaluate the receiver with a single argument."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    ^ super value:(Array with:arg)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
    "Created: 23.1.1997 / 04:57:57 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
value:arg1 value:arg2
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    "evaluate the receiver with two arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
    ^ super value:(Array with:arg1 with:arg2)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
    "Created: 23.1.1997 / 04:58:03 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
value:arg1 value:arg2 value:arg3
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
    "evaluate the receiver with three arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
    ^ super value:(Array with:arg1 with:arg2 with:arg3)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
    "Created: 23.1.1997 / 04:58:09 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
value:arg1 value:arg2 value:arg3 value:arg4
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
    "evaluate the receiver with four arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
    ^ super value:(Array 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
		    with:arg1 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
		    with:arg2 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
		    with:arg3 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
		    with:arg4)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
    "Modified: 22.1.1997 / 19:41:22 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
    "Created: 23.1.1997 / 04:58:14 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
value:arg1 value:arg2 value:arg3 value:arg4 value:arg5
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
    "evaluate the receiver with five arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
    ^ super value:(Array 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
		    with:arg1 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
		    with:arg2 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
		    with:arg3 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
		    with:arg4
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
		    with:arg5)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
    "Modified: 22.1.1997 / 19:41:26 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
    "Created: 23.1.1997 / 04:58:18 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
value:arg1 value:arg2 value:arg3 value:arg4 value:arg5 value:arg6
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
    "evaluate the receiver with six arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
    ^ super value:(Array 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
		    with:arg1 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
		    with:arg2 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
		    with:arg3 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
		    with:arg4
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
		    with:arg5
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
		    with:arg6)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
    "Modified: 22.1.1997 / 19:41:29 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
    "Created: 23.1.1997 / 04:58:22 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
value:arg1 value:arg2 value:arg3 value:arg4 value:arg5 value:arg6 value:arg7
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
    "evaluate the receiver with seven arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    ^ super value:(Array 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
		    with:arg1 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
		    with:arg2 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
		    with:arg3 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
		    with:arg4
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
		    with:arg5
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
		    with:arg6
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
		    with:arg7)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
    "Modified: 22.1.1997 / 19:41:33 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
    "Created: 23.1.1997 / 04:58:26 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
value:arg1 value:arg2 value:arg3 value:arg4 value:arg5 value:arg6 value:arg7 value:arg8
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    "evaluate the receiver with eight arguments."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
    ^ super value:(Array 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
		    with:arg1 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
		    with:arg2 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
		    with:arg3 
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
		    with:arg4
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
		    with:arg5
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
		    with:arg6
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
		    with:arg7
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
		    with:arg8)
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
    "Created: 23.1.1997 / 04:58:30 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
valueWithArguments:argArray
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    "evaluate the receiver with all arguments in argArray."
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
    ^ super value:argArray
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    "Created: 23.1.1997 / 04:59:16 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
! !
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
!VarArgCheapBlock methodsFor:'testing'!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
isVarArgBlock
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
    "return true, if this block accepts a variable number of arguments"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
    ^ true
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    "Created: 23.1.1997 / 05:00:18 / cg"
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
! !
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
!VarArgCheapBlock class methodsFor:'documentation'!
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
version
17711
39faaaf888b4 Added branch jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7589
diff changeset
   206
    ^ '$Id: VarArgCheapBlock.st 10447 2009-06-14 13:09:55Z vranyj1 $'
2247
3e227e6ea1fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
! !
7589
2ac0ac814fc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5353
diff changeset
   208
5351
f9529bd6b6e4 oops - must setup the isBLOCK / isBLOCKLIKE flags correctly
Claus Gittinger <cg@exept.de>
parents: 2247
diff changeset
   209
VarArgCheapBlock initialize!