SmallSense__SmalltalkInferencer.st
changeset 263 df89d5b4dfe0
parent 262 1eb48733dac1
child 286 dc60bdb2fa92
--- a/SmallSense__SmalltalkInferencer.st	Tue Aug 05 14:11:06 2014 +0100
+++ b/SmallSense__SmalltalkInferencer.st	Tue Aug 05 14:11:29 2014 +0100
@@ -585,6 +585,25 @@
 
 !SmalltalkInferencer::Phase2 methodsFor:'visiting'!
 
+visitMessageNode:aMessageNode
+
+    super visitMessageNode: aMessageNode.  
+
+    "/ Some selectors are known / expected  to return boolean
+    (#( #== #~~ #= #~= #< #<= #=> #> #contains: includes: includesKey: #anySatisfy: #allSatisfy:) includes: aMessageNode selector) ifTrue:[
+        aMessageNode inferedType: (Type withClass: Boolean).
+        ^ self.
+    ].
+
+    "/ Some selectors are known / expected  to return some numerical values
+    (#( #+ #- #* #/ #// #\\ ) includes: aMessageNode selector) ifTrue:[
+        aMessageNode inferedType: (Type withClass: Number).
+        ^ self.
+    ].
+
+    "Created: / 05-08-2014 / 14:03:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 visitUnaryNode:anObject
 
     | type sel rec classes |