equal
deleted
inserted
replaced
6168 "/ the parent may be undefined (for example, if closing bracket of a block was not yet entered) |
6168 "/ the parent may be undefined (for example, if closing bracket of a block was not yet entered) |
6169 "/ then the parse stopped and we have the partial parent message in the rememberedNodes list. |
6169 "/ then the parse stopped and we have the partial parent message in the rememberedNodes list. |
6170 "/ try there; if found, continue there. If not, well, we might be really at the top. |
6170 "/ try there; if found, continue there. If not, well, we might be really at the top. |
6171 rememberedNodes notNil ifTrue:[ |
6171 rememberedNodes notNil ifTrue:[ |
6172 rememberedNodes do:[:eachPossibleParentNode | |
6172 rememberedNodes do:[:eachPossibleParentNode | |
6173 eachPossibleParentNode stop notNil ifTrue:[ |
6173 (eachPossibleParentNode stop notNil and:[ node start notNil ]) ifTrue:[ |
6174 eachPossibleParentNode stop <= node start ifTrue:[ |
6174 eachPossibleParentNode stop <= node start ifTrue:[ |
6175 (parentNode isNil or:[parentNode stop < eachPossibleParentNode stop]) ifTrue:[ |
6175 (parentNode isNil or:[parentNode stop < eachPossibleParentNode stop]) ifTrue:[ |
6176 parentNode := eachPossibleParentNode |
6176 parentNode := eachPossibleParentNode |
6177 ]. |
6177 ]. |
6178 ]. |
6178 ]. |
6211 node := parentNode. |
6211 node := parentNode. |
6212 ]. |
6212 ]. |
6213 ^ possibleClasses |
6213 ^ possibleClasses |
6214 |
6214 |
6215 "Created: / 15-09-2017 / 10:16:20 / cg" |
6215 "Created: / 15-09-2017 / 10:16:20 / cg" |
6216 "Modified: / 15-09-2017 / 14:31:55 / cg" |
6216 "Modified: / 22-09-2017 / 13:05:54 / cg" |
6217 ! |
6217 ! |
6218 |
6218 |
6219 isNonDestructive:aMessageNode whenSentTo:receiverValue |
6219 isNonDestructive:aMessageNode whenSentTo:receiverValue |
6220 "return true, if it is safe to send aSelector to receiverValue |
6220 "return true, if it is safe to send aSelector to receiverValue |
6221 (i.e. has no side effects)" |
6221 (i.e. has no side effects)" |