VarArgCheapBlock.st
changeset 2247 3e227e6ea1fb
child 5351 f9529bd6b6e4
equal deleted inserted replaced
2246:57451418f10a 2247:3e227e6ea1fb
       
     1 "
       
     2  COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
       
     3 	      All Rights Reserved
       
     4 
       
     5  This software is furnished under a license and may be used
       
     6  only in accordance with the terms of that license and with the
       
     7  inclusion of the above copyright notice.   This software may not
       
     8  be provided or otherwise made available to, or used by, any
       
     9  other person.  No title to or ownership of the software is
       
    10  hereby transferred.
       
    11 "
       
    12 
       
    13 
       
    14 
       
    15 CheapBlock subclass:#VarArgCheapBlock
       
    16 	instanceVariableNames:''
       
    17 	classVariableNames:''
       
    18 	poolDictionaries:''
       
    19 	category:'Kernel-Methods'
       
    20 !
       
    21 
       
    22 !VarArgCheapBlock class methodsFor:'documentation'!
       
    23 
       
    24 copyright
       
    25 "
       
    26  COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
       
    27 	      All Rights Reserved
       
    28 
       
    29  This software is furnished under a license and may be used
       
    30  only in accordance with the terms of that license and with the
       
    31  inclusion of the above copyright notice.   This software may not
       
    32  be provided or otherwise made available to, or used by, any
       
    33  other person.  No title to or ownership of the software is
       
    34  hereby transferred.
       
    35 "
       
    36 
       
    37 
       
    38 !
       
    39 
       
    40 documentation
       
    41 "
       
    42     read the documentation in VarArgBlocks.
       
    43 
       
    44 
       
    45     [author:]
       
    46         Claus Gittinger
       
    47 
       
    48     [see also:]
       
    49         Block CheapBlock
       
    50 "
       
    51 ! !
       
    52 
       
    53 !VarArgCheapBlock methodsFor:'evaluation'!
       
    54 
       
    55 value
       
    56     "evaluate the receiver with no block args."
       
    57 
       
    58     ^ super value:#()
       
    59 
       
    60     "Created: 23.1.1997 / 04:57:49 / cg"
       
    61 !
       
    62 
       
    63 value:arg
       
    64     "evaluate the receiver with a single argument."
       
    65 
       
    66     ^ super value:(Array with:arg)
       
    67 
       
    68     "Created: 23.1.1997 / 04:57:57 / cg"
       
    69 !
       
    70 
       
    71 value:arg1 value:arg2
       
    72     "evaluate the receiver with two arguments."
       
    73 
       
    74     ^ super value:(Array with:arg1 with:arg2)
       
    75 
       
    76     "Created: 23.1.1997 / 04:58:03 / cg"
       
    77 !
       
    78 
       
    79 value:arg1 value:arg2 value:arg3
       
    80     "evaluate the receiver with three arguments."
       
    81 
       
    82     ^ super value:(Array with:arg1 with:arg2 with:arg3)
       
    83 
       
    84     "Created: 23.1.1997 / 04:58:09 / cg"
       
    85 !
       
    86 
       
    87 value:arg1 value:arg2 value:arg3 value:arg4
       
    88     "evaluate the receiver with four arguments."
       
    89 
       
    90     ^ super value:(Array 
       
    91 		    with:arg1 
       
    92 		    with:arg2 
       
    93 		    with:arg3 
       
    94 		    with:arg4)
       
    95 
       
    96     "Modified: 22.1.1997 / 19:41:22 / cg"
       
    97     "Created: 23.1.1997 / 04:58:14 / cg"
       
    98 !
       
    99 
       
   100 value:arg1 value:arg2 value:arg3 value:arg4 value:arg5
       
   101     "evaluate the receiver with five arguments."
       
   102 
       
   103     ^ super value:(Array 
       
   104 		    with:arg1 
       
   105 		    with:arg2 
       
   106 		    with:arg3 
       
   107 		    with:arg4
       
   108 		    with:arg5)
       
   109 
       
   110     "Modified: 22.1.1997 / 19:41:26 / cg"
       
   111     "Created: 23.1.1997 / 04:58:18 / cg"
       
   112 !
       
   113 
       
   114 value:arg1 value:arg2 value:arg3 value:arg4 value:arg5 value:arg6
       
   115     "evaluate the receiver with six arguments."
       
   116 
       
   117     ^ super value:(Array 
       
   118 		    with:arg1 
       
   119 		    with:arg2 
       
   120 		    with:arg3 
       
   121 		    with:arg4
       
   122 		    with:arg5
       
   123 		    with:arg6)
       
   124 
       
   125     "Modified: 22.1.1997 / 19:41:29 / cg"
       
   126     "Created: 23.1.1997 / 04:58:22 / cg"
       
   127 !
       
   128 
       
   129 value:arg1 value:arg2 value:arg3 value:arg4 value:arg5 value:arg6 value:arg7
       
   130     "evaluate the receiver with seven arguments."
       
   131 
       
   132     ^ super value:(Array 
       
   133 		    with:arg1 
       
   134 		    with:arg2 
       
   135 		    with:arg3 
       
   136 		    with:arg4
       
   137 		    with:arg5
       
   138 		    with:arg6
       
   139 		    with:arg7)
       
   140 
       
   141     "Modified: 22.1.1997 / 19:41:33 / cg"
       
   142     "Created: 23.1.1997 / 04:58:26 / cg"
       
   143 !
       
   144 
       
   145 value:arg1 value:arg2 value:arg3 value:arg4 value:arg5 value:arg6 value:arg7 value:arg8
       
   146     "evaluate the receiver with eight arguments."
       
   147 
       
   148     ^ super value:(Array 
       
   149 		    with:arg1 
       
   150 		    with:arg2 
       
   151 		    with:arg3 
       
   152 		    with:arg4
       
   153 		    with:arg5
       
   154 		    with:arg6
       
   155 		    with:arg7
       
   156 		    with:arg8)
       
   157 
       
   158     "Created: 23.1.1997 / 04:58:30 / cg"
       
   159 !
       
   160 
       
   161 valueWithArguments:argArray
       
   162     "evaluate the receiver with all arguments in argArray."
       
   163 
       
   164     ^ super value:argArray
       
   165 
       
   166     "Created: 23.1.1997 / 04:59:16 / cg"
       
   167 ! !
       
   168 
       
   169 !VarArgCheapBlock methodsFor:'testing'!
       
   170 
       
   171 isVarArgBlock
       
   172     "return true, if this block accepts a variable number of arguments"
       
   173 
       
   174     ^ true
       
   175 
       
   176     "Created: 23.1.1997 / 05:00:18 / cg"
       
   177 ! !
       
   178 
       
   179 !VarArgCheapBlock class methodsFor:'documentation'!
       
   180 
       
   181 version
       
   182     ^ '$Header: /cvs/stx/stx/libbasic/VarArgCheapBlock.st,v 1.1 1997-01-23 14:23:52 cg Exp $'
       
   183 ! !