TraitDefinitionChange.st
author Claus Gittinger <cg@exept.de>
Tue, 02 Apr 2013 21:18:40 +0200
changeset 3177 194142c6df84
parent 2999 9bae264a5296
child 3435 d15ba356cc58
child 3452 281e887a36c9
permissions -rw-r--r--
class: TraitDefinitionChange class definition added: #printOn: #source

"{ Package: 'stx:libbasic3' }"

ClassChange subclass:#TraitDefinitionChange
	instanceVariableNames:'baseTrait traitComposition category'
	classVariableNames:''
	poolDictionaries:''
	category:'System-Changes'
!

!TraitDefinitionChange 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.
"
! !

!TraitDefinitionChange methodsFor:'accessing'!

baseTrait
    ^ baseTrait
!

baseTrait:something
    baseTrait := something.
!

category
    ^ category
!

category:something
    category := something.
!

source
    ^ String streamContents:[:s |
        s 
            nextPutAll: 'Trait named: ';
            nextPutAll: className; cr;
            nextPutAll: '    uses: '. 
        traitComposition isEmptyOrNil ifTrue:[
            s nextPutAll: '{}'. 
        ] ifFalse:[
            s nextPutAll: traitComposition. 
        ].
        s 
            cr; 
            nextPutAll: '    category: '.
        category asString storeOn:s.    
    ]
!

traitComposition
    ^ traitComposition
!

traitComposition:something
    traitComposition := something.
! !

!TraitDefinitionChange methodsFor:'printing & storing'!

printOn:aStream
    aStream nextPutAll:className; nextPutAll:' {trait definition}'

    "Modified: / 12-10-2006 / 17:48:28 / cg"
! !

!TraitDefinitionChange class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/libbasic3/TraitDefinitionChange.st,v 1.2 2013-04-02 19:18:40 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/libbasic3/TraitDefinitionChange.st,v 1.2 2013-04-02 19:18:40 cg Exp $'
! !