ClassPrimitiveVariablesChange.st
author Claus Gittinger <cg@exept.de>
Wed, 20 Apr 2011 12:20:48 +0200
changeset 2358 91620835b09c
parent 962 3821ab69b939
child 2372 e313165eb6cf
permissions -rw-r--r--
added: #apply

"
 COPYRIGHT (c) 1995 by Claus Gittinger
	      All Rights Reserved

 This software is furnished under a license and may be used
 only in accordance with the terms of that license and with the
 inclusion of the above copyright notice.   This software may not
 be provided or otherwise made available to, or used by, any
 other person.  No title to or ownership of the software is
 hereby transferred.
"
"{ Package: 'stx:libbasic3' }"

ClassPrimitiveChange subclass:#ClassPrimitiveVariablesChange
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'System-Changes'
!

!ClassPrimitiveVariablesChange class methodsFor:'documentation'!

copyright
"
 COPYRIGHT (c) 1995 by Claus Gittinger
	      All Rights Reserved

 This software is furnished under a license and may be used
 only in accordance with the terms of that license and with the
 inclusion of the above copyright notice.   This software may not
 be provided or otherwise made available to, or used by, any
 other person.  No title to or ownership of the software is
 hereby transferred.
"
!

documentation
"
    instances represent a classes primitive variables-changes. 
    They are typically held in a ChangeSet.

    [author:]
        Claus Gittinger
"
! !

!ClassPrimitiveVariablesChange methodsFor:'applying'!

apply
    "apply the change"

    |class|

    class := self changeClass.
    class isNil ifTrue:[
        self error:('Cannot apply change for missing class: ' , className) mayProceed:true.
        ^ self
    ].
    class autoload.         "Most changes cannot be applied to unloaded classes"
    Class nameSpaceQuerySignal answer:self nameSpace do:[
        class primitiveVariables:(self source)
    ].

    "Created: / 20-04-2011 / 11:52:47 / cg"
! !

!ClassPrimitiveVariablesChange methodsFor:'comparing'!

isForSameAs:changeB
    "return true, if the given change represents a change for the same
     thingy as the receiver (i.e. same method, same definition etc.)."

    changeB isPrimitiveVariablesChange ifFalse:[^ false].   

    ^ className = changeB className


! !

!ClassPrimitiveVariablesChange methodsFor:'printing & storing'!

printOn:aStream
    "append a user printed representation of the receiver to aStream.
     The format is suitable for a human - not meant to be read back."

    aStream nextPutAll:className; nextPutAll:' primitiveVariables:'
! !

!ClassPrimitiveVariablesChange methodsFor:'queries'!

isPrimitiveVariablesChange
    ^ true


! !

!ClassPrimitiveVariablesChange class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/libbasic3/ClassPrimitiveVariablesChange.st,v 1.10 2011-04-20 10:20:48 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/libbasic3/ClassPrimitiveVariablesChange.st,v 1.10 2011-04-20 10:20:48 cg Exp $'
! !