MessageNode.st
changeset 2270 3fbda756040e
parent 2268 adf79f6f4e06
child 2273 d952d08cf43c
equal deleted inserted replaced
2269:2f7433bdf66f 2270:3fbda756040e
  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 ! !