[View] [Edit] [Lock] [References] [Attachments] [History] [Home] [Changes] [Search] [Help]
BlockClosure
Important
Instance methods
argumentCount:VSES8Compatible
argumentCountVSES8Compatible
asActionSecuenceVSES8Compatible
ensure:VSES8Compatible
evaluateVSES8Compatible
evaluateFor:VSES8Compatible
evaluateWithArguments:VSES8Compatible
isBlockClosureVSE
RECOMENDATION: Add this instance method to BlockClosure and Object in S8.
! Object methodsFor: #testing-VSECompat !
isBlockClosure
^false! !
! BlockClosure methodsFor: #testing-VSECompat !
isBlockClosure
^true! !
numberOfArgumentsVSES8Compatible
numArgsVSE
RECOMENDATION: Same behavior of #numberOfArguments. Add #numArgs method delegating in #numberOfArguments.
! BlockClosure methodsFor: #testing-VSECompat !
numArgs
^self numberOfArguments! !
on:do:VSES8Compatible
Argument 'exception' in VSE sometimes is an instance of ExceptionSet allowing the following use:
aBlock on: FileError, BindError do: ["something"]
to overcome this situation it is posible redefine #on:do: in conjunction of VSE ExceptionSet class (for more detailed information see Exception, Error) as follows:
! BlockClosure methodsFor: #error-VSECompat !
on: exception do: aBlock
" Return the result of evaluating the receiver catching exceptions. "
^self try: self catch: [:error |
(exception handles: error)
ifTrue: [ aBlock value: error ]
ifFalse: [ error signal ]
]! !
valueVSES8Compatible
value:VSES8Compatible
value:value:VSES8Compatible
value:value:value:VSES8Compatible
valueWithArguments:VSE(2)
RECOMENDATION: This method should be considered private because its proximity to VM. In order to compatibilize it is possible to use #valueWithArguments: as foolowing:
! BlockClosure methodsFor: #evaluating-VSECompat !
valueWithArguments: anArray
^self valueWithPossibleArguments: anArray ! !
whileFalse:VSES8Compatible
whileFalseVSE
RECOMENDATION: Add an instance method using #whileFalse: on S8 side.
! BlockClosure methodsFor: #iterating-VSECompat!
whileFalse
^[ self value ] whileFalse: [ ]! !
whileTrue:VSES8Compatible
whileTrueVSE
RECOMENDATION: Add an instance method using #whileTrue: on S8 side.
! BlockClosure methodsFor: #iterating-VSECompat!
whileTrue
^[ self value ] whileTrue: [ ]! !
Secondary
Instance Methods
evaluateWithoutInterruptsVSE
forkVSE
forkAt:VSE
hashVSE
ifCurtailed:VSE
methodVSE
method:VSE
methodEnvironmentVSE
methodEnvironment:VSE
partMirrorCopy:VSE
printOn:VSE
receiver:VSE
receiverVSE
repeatVSE
Class Methods
initializeVSE
initStandardTemplatesVSE
isActivationVisibleForInstanceSelector:VSE
Instance Methods
blockNumber, blockNumber:, initFromArray:, invalidArgumentCount:, invisibleEnsure:, return:, returnTo:with:,setUnwind:, validateNumberOfArguments:, valueMarked,
Class Methods
fromArray:, standardTemplates
(2) TODO: Chequear con Ale esto