TraitClassTraitDefinitionChange.st
changeset 3178 422736174443
child 3435 d15ba356cc58
child 3451 1e2eb9104f15
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TraitClassTraitDefinitionChange.st	Tue Apr 02 21:18:58 2013 +0200
@@ -0,0 +1,68 @@
+"{ Package: 'stx:libbasic3' }"
+
+ClassChange subclass:#TraitClassTraitDefinitionChange
+	instanceVariableNames:'baseTrait traitComposition'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'System-Changes'
+!
+
+!TraitClassTraitDefinitionChange class methodsFor:'documentation'!
+
+documentation
+"
+    instances represent trait changes.
+    These are not present or supported (currently) in st/x, but may be encountered
+    when reading a monticello package containing traits.
+    Mostly experimental.
+"
+! !
+
+!TraitClassTraitDefinitionChange methodsFor:'accessing'!
+
+baseTrait
+    ^ baseTrait
+!
+
+baseTrait:something
+    baseTrait := something.
+!
+
+source
+    ^ String streamContents:[:s |
+        s 
+            nextPutAll: baseTrait;
+            nextPutAll: ' classTrait '; cr;
+            nextPutAll: '    uses: '. 
+        traitComposition isEmptyOrNil ifTrue:[
+            s nextPutAll: '{}'. 
+        ] ifFalse:[
+            s nextPutAll: traitComposition. 
+        ].
+    ]
+!
+
+traitComposition
+    ^ traitComposition
+!
+
+traitComposition:something
+    traitComposition := something.
+! !
+
+!TraitClassTraitDefinitionChange methodsFor:'printing & storing'!
+
+printOn:aStream
+    aStream nextPutAll:baseTrait; nextPutAll:' {class trait definition}'
+! !
+
+!TraitClassTraitDefinitionChange class methodsFor:'documentation'!
+
+version
+    ^ '$Header: /cvs/stx/stx/libbasic3/TraitClassTraitDefinitionChange.st,v 1.1 2013-04-02 19:18:58 cg Exp $'
+!
+
+version_CVS
+    ^ '$Header: /cvs/stx/stx/libbasic3/TraitClassTraitDefinitionChange.st,v 1.1 2013-04-02 19:18:58 cg Exp $'
+! !
+