|
Class: SimulatedSqueakBlock (in Comanche)
Object
|
+--Comanche::SimulatedSqueakBlock
- Package:
- stx:goodies/webServer/comanche
- Category:
- Net-Communication-HTTP-Comanche-Swiki-STX-Support
- Version:
- rev:
1.15
date: 2018/04/26 10:48:36
- user: cg
- file: SimulatedSqueakBlock.st directory: goodies/webServer/comanche
- module: stx stc-classLibrary: comanche
mimicri
-
wrapIfBlock: anObject
-
accessing
-
realBlock
-
return the value of the instance variable 'realBlock' (automatically generated)
-
realBlock: something
-
set the value of the instance variable 'realBlock' (automatically generated)
-
source
-
return the value of the instance variable 'source' (automatically generated)
-
source: something
-
set the value of the instance variable 'source' (automatically generated)
evaluation
-
value
-
(comment from inherited method)
return the receiver itself.
This allows every object to be used where blocks or valueHolders
are typically used, and allows for valueHolders and blocks to be
used interchangably in some situations.
Time will show, if this is a good idea or leads to sloppy programming
style ... (the idea was borrowed from the Self language).
WARNING: don't 'optimize' away ifXXX: blocks
(i.e. do NOT replace
foo ifTrue:[var1] ifFalse:[var2]
by:
foo ifTrue:var1 ifFalse:var2
)
- the compilers will only generate inline code for the if,
iff the argument(s) are blocks - otherwise, a true send is
generated.
This 'optimization' will work semantically correct,
but execute SLOWER instead.
Using constants (foo ifTrue:1 ifFalse:2) does not introduce a performance penalty.
-
value: arg1
-
-
value: arg1 value: arg2
-
-
value: arg1 value: arg2 value: arg3
-
-
value: arg1 value: arg2 value: arg3 value: arg4
-
-
valueWithArguments: args
-
mimicry
-
copy
-
-
fixTemps
-
-
isBlock
-
wrapping
-
wrapIfBlock: anObject
-
|