Fixed lots of compiler bugs. Added more primitives. Reworked interpreter
[panda.git] / st / BlockContext.st
blob9874457f2cd42aa2b14042330da79fb465142984
2 "evaluation"
4 BlockContext method!
5 value
6         <primitive: 'BlockContext_value'>
7         self primitiveFailed!
9 BlockContext method!
10 value: argument
11         <primitive: 'BlockContext_valueColon'>
12         self primitiveFailed!
14 BlockContext method!
15 value: firstArgument value: secondArgument
16         <primitive: 'BlockContext_value_value'>
17         self primitiveFailed!
19 BlockContext method!
20 value: firstArgument value: secondArgument value: thirdArgument
21         <primitive: 'BlockContext_value_value_value'>
22         self primitiveFailed!
24 BlockContext method!
25 valueWithArguments: anArray
26         <primitive: 'BlockContext_valueWithArguments'>
27         self primitiveFailed!
29 BlockContext method!
30 valueWithArguments: anArray
31         <primitive: 'BlockContext_valueWithArguments'>
32         self primitiveFailed!
35 "controlling"
37 BlockContext method!
38 whileTrue
39         ^ [self value] whileTrue: [nil]!
41 BlockContext method!
42 whileFalse
43         ^ [self value] whileFalse: [nil]!
45 BlockContext method!
46 whileTrue: aBlock
47         ^ [self value] whileTrue: [aBlock value]!
49 BlockContext method!
50 whileFalse: aBlock
51         ^ [self value] whileFalse: [aBlock value]!