#REFACTORING by stefan
class: CascadeNode
changed:
#messages
#nodeDo:
Create correct (Unary- / Binary-)Nodes
--- a/CascadeNode.st Mon Mar 26 15:53:53 2018 +0200
+++ b/CascadeNode.st Mon Mar 26 15:54:34 2018 +0200
@@ -132,7 +132,7 @@
"/ sigh; ST/X encodes things differently ...
- |r nd msgs msg|
+ |r nd msgs|
msgs := OrderedCollection new.
@@ -144,18 +144,15 @@
nd := self.
[nd isCascade] whileTrue:[
- msg := MessageNode new.
- msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber.
- msgs addFirst:msg.
+ msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber).
nd := nd receiver.
].
- msg := MessageNode new.
- msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber.
- msgs addFirst:msg.
+ msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber).
^ msgs
"Created: / 12-09-2011 / 10:04:31 / cg"
+ "Modified: / 26-03-2018 / 15:36:30 / stefan"
!
nodeDo:anEnumerator
@@ -163,7 +160,7 @@
"/ sigh; ST/X encodes things differently ...
- |r nd msgs msg|
+ |r nd msgs|
msgs := OrderedCollection new.
@@ -175,19 +172,15 @@
nd := self.
[nd isCascade] whileTrue:[
- msg := MessageNode new.
- msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber.
- msgs addFirst:msg.
+ msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber).
nd := nd receiver.
].
- msg := MessageNode new.
- msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber.
- msgs addFirst:msg.
+ msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber).
^ anEnumerator doCascade:self receiver:r messages:msgs
- "Created: 19.6.1997 / 16:39:17 / cg"
- "Modified: 19.6.1997 / 17:32:47 / cg"
+ "Created: / 19-06-1997 / 16:39:17 / cg"
+ "Modified: / 26-03-2018 / 15:37:12 / stefan"
! !
!CascadeNode methodsFor:'evaluation'!