ClassInstVarDefinitionChange.st
branchjv
changeset 3415 73c1cd43ae66
parent 3128 87750af738dc
child 3838 474d8ec95b33
--- a/ClassInstVarDefinitionChange.st	Wed Nov 13 17:49:39 2013 +0000
+++ b/ClassInstVarDefinitionChange.st	Wed Nov 13 18:33:43 2013 +0000
@@ -43,6 +43,23 @@
 
 classInstVarNames:something
     classInstVarNames := something.
+!
+
+delta
+    | ns changeClass |
+
+    "/ Must enforce current namespace because caller (such as Workspace!!!!!!) enforces
+    "/ the namespace wia NameSpaceQuerySignal. Therefore for classes not in Smalltalk.
+    "/ `self changeClass` will always return nil, sigh.
+    ns := nameSpaceName notNil ifTrue:[(NameSpace name: nameSpaceName)] ifFalse:[nil].
+    Class nameSpaceQuerySignal answer: nil do:[
+        changeClass := self changeClass.
+        changeClass isNil ifTrue:[^#+].
+    ].
+
+    ^ classInstVarNames = changeClass instanceVariableNames ifTrue:[#'='] ifFalse:[#'~']
+
+    "Created: / 13-11-2013 / 17:58:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ClassInstVarDefinitionChange methodsFor:'comparing'!