DoWhatIMeanSupport.st
changeset 3300 e0f4bf68e26a
parent 3299 1cd4b22434a6
child 3303 ea0075136d74
--- a/DoWhatIMeanSupport.st	Tue Dec 18 12:08:55 2007 +0100
+++ b/DoWhatIMeanSupport.st	Tue Dec 18 13:50:29 2007 +0100
@@ -589,6 +589,30 @@
     "Modified: / 16-11-2006 / 14:15:59 / cg"
 !
 
+findNodeForInterval:interval in:source
+    |tree node|
+
+    interval isEmpty ifTrue: [^ nil].
+    RBParser isNil ifTrue: [^ nil].
+
+    tree := RBParser
+                parseMethod:source
+                onError: [:str :err ":nodesSoFar" | ^ nil].
+
+    tree isNil ifTrue:[^ nil].
+
+    node := tree whichNodeIsContainedBy:interval.
+    node isNil ifTrue: [
+        node := tree bestNodeFor: interval
+    ].
+    node isNil ifTrue: [
+        node := DoWhatIMeanSupport findNodeIn:tree forInterval:interval
+    ].
+    ^ node
+
+    "Modified: / 16-11-2006 / 19:04:03 / cg"
+!
+
 findNodeForInterval:interval in:source allowErrors:allowErrors
     |tree node "errCount"|
 
@@ -1457,5 +1481,5 @@
 !DoWhatIMeanSupport class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/DoWhatIMeanSupport.st,v 1.23 2007-12-18 11:08:55 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/DoWhatIMeanSupport.st,v 1.24 2007-12-18 12:50:29 cg Exp $'
 ! !