MetacelloValueHolderSpec.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 03 Sep 2012 13:10:51 +0000
changeset 3 504152ada1fc
parent 1 9e312de5f694
permissions -rw-r--r--
fixed stc-compilability
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     1
"{ Package: 'stx:goodies/metacello' }"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     2
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     3
MetacelloSpec subclass:#MetacelloValueHolderSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     4
	instanceVariableNames:'value'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     5
	classVariableNames:''
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     6
	poolDictionaries:''
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     7
	category:'Metacello-Core-Specs'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     8
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     9
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    10
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    11
!MetacelloValueHolderSpec methodsFor:'accessing'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    12
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    13
value: anObject
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    14
	value := anObject
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    15
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    16
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    17
!MetacelloValueHolderSpec methodsFor:'construction'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    18
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    19
value: anObject constructor: aVersionConstructor
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    20
    aVersionConstructor valueForValueHolder: anObject
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    21
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    22
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    23
!MetacelloValueHolderSpec methodsFor:'merging'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    24
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    25
mergeMap
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    26
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    27
	| map |
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    28
	map := super mergeMap.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    29
	map at: #value put: value.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    30
	^map
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    31
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    32
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    33
!MetacelloValueHolderSpec methodsFor:'printing'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    34
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    35
configMethodOn: aStream indent: indent
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    36
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    37
	aStream tab: indent; nextPutAll: 'spec value: ', self value printString
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    38
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    39
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    40
!MetacelloValueHolderSpec methodsFor:'private'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    41
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    42
setAuthorInMetacelloVersion: aMetacelloVersionSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    43
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    44
	aMetacelloVersionSpec setAuthor: self
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    45
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    46
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    47
setBlessingInMetacelloVersion: aMetacelloVersionSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    48
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    49
	aMetacelloVersionSpec setBlessing: self
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    50
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    51
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    52
setDescriptionInMetacelloVersion: aMetacelloVersionSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    53
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    54
	aMetacelloVersionSpec setDescription: self
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    55
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    56
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    57
setPostLoadDoItInMetacelloSpec: aMetacelloSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    58
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    59
	aMetacelloSpec setPostLoadDoIt: self
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    60
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    61
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    62
setPreLoadDoItInMetacelloSpec: aMetacelloSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    63
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    64
	aMetacelloSpec setPreLoadDoIt: self
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    65
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    66
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    67
setTimestampInMetacelloVersion: aMetacelloVersionSpec
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    68
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    69
	aMetacelloVersionSpec setTimestamp: self
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    70
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    71
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    72
!MetacelloValueHolderSpec methodsFor:'querying'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    73
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    74
value
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    75
	^ value
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    76
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    77
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    78
!MetacelloValueHolderSpec class methodsFor:'documentation'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    79
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    80
version_SVN
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    81
    ^ '$Id::                                                                                                                        $'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    82
! !