DoWhatIMeanSupport.st
changeset 5609 8a30b1f720d7
parent 5608 585c8f740aea
child 5612 e77a2fa2031f
equal deleted inserted replaced
5608:585c8f740aea 5609:8a30b1f720d7
  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)"