26 allDefinedVarNames := anRBBlockNode allDefinedVariables. |
26 allDefinedVarNames := anRBBlockNode allDefinedVariables. |
27 allInstVarNames := Set new. |
27 allInstVarNames := Set new. |
28 allClassVarNames := Set new. |
28 allClassVarNames := Set new. |
29 cls := aClaas. |
29 cls := aClaas. |
30 [ cls notNil ] whileTrue:[ |
30 [ cls notNil ] whileTrue:[ |
31 | instanceVariables classVariables | |
31 | instanceVariables classVariables | |
32 |
32 |
33 instanceVariables := cls instanceVariables. |
33 instanceVariables := cls instanceVariables. |
34 classVariables := cls classVariables. |
34 classVariables := cls classVariables. |
35 instanceVariables notNil ifTrue:[ |
35 instanceVariables notNil ifTrue:[ |
36 allInstVarNames addAll: instanceVariables. |
36 allInstVarNames addAll: instanceVariables. |
37 ]. |
37 ]. |
38 classVariables notNil ifTrue:[ |
38 classVariables notNil ifTrue:[ |
39 allClassVarNames addAll: classVariables. |
39 allClassVarNames addAll: classVariables. |
40 ]. |
40 ]. |
41 cls := cls superclass. |
41 cls := cls superclass. |
42 ]. |
42 ]. |
43 |
43 |
44 self withAllVariableNodesOf: anRBBlockNode do: [ :node | |
44 self withAllVariableNodesOf: anRBBlockNode do: [ :node | |
45 (allDefinedVarNames includes: node name) ifFalse:[ |
45 (allDefinedVarNames includes: node name) ifFalse:[ |
46 (allInstVarNames includes: node name) ifTrue:[ |
46 (allInstVarNames includes: node name) ifTrue:[ |