equal
deleted
inserted
replaced
2943 |recVal argValues allArgsConstant| |
2943 |recVal argValues allArgsConstant| |
2944 |
2944 |
2945 (receiver withConstantValueDo:[:val | recVal := val]) ifTrue:[ |
2945 (receiver withConstantValueDo:[:val | recVal := val]) ifTrue:[ |
2946 argValues := Array new:argArray size. |
2946 argValues := Array new:argArray size. |
2947 allArgsConstant := true. |
2947 allArgsConstant := true. |
2948 argArray doWithIndex:[:arg :index | |
2948 argArray notNil ifTrue:[ |
2949 allArgsConstant := allArgsConstant |
2949 argArray doWithIndex:[:arg :index | |
|
2950 allArgsConstant := allArgsConstant |
2950 and:[ arg withConstantValueDo:[:val | argValues at:index put:val] ] |
2951 and:[ arg withConstantValueDo:[:val | argValues at:index put:val] ] |
|
2952 ]. |
2951 ]. |
2953 ]. |
2952 allArgsConstant ifTrue:[ |
2954 allArgsConstant ifTrue:[ |
2953 "/ only a few messages are checked: |
2955 "/ only a few messages are checked: |
2954 recVal isNumber ifTrue:[ |
2956 recVal isNumber ifTrue:[ |
2955 (#(positive negative abs negated + - * == = ~= ~~) includes:selector) ifFalse:[ |
2957 (#(positive negative abs negated + - * == = ~= ~~) includes:selector) ifFalse:[ |
2969 ! ! |
2971 ! ! |
2970 |
2972 |
2971 !MessageNode class methodsFor:'documentation'! |
2973 !MessageNode class methodsFor:'documentation'! |
2972 |
2974 |
2973 version |
2975 version |
2974 ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.166 2009-11-06 18:15:32 cg Exp $' |
2976 ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.167 2009-11-06 19:29:24 cg Exp $' |
2975 ! |
2977 ! |
2976 |
2978 |
2977 version_CVS |
2979 version_CVS |
2978 ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.166 2009-11-06 18:15:32 cg Exp $' |
2980 ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.167 2009-11-06 19:29:24 cg Exp $' |
2979 ! ! |
2981 ! ! |