MCStXSnapshotPreWriteTransformation.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 31 May 2013 02:05:53 +0200
changeset 873 8c7a9dcb9a69
parent 863 310347ceb9df
child 875 cc0588b2a9db
permissions -rw-r--r--
class: MCStXSnapshotPreWriteTransformation changed: #visitClassDefinition:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/monticello' }"
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
MCStXSnapshotTransformation subclass:#MCStXSnapshotPreWriteTransformation
863
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
     4
	instanceVariableNames:'extensionMethodCategoryMap'
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
	classVariableNames:''
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	poolDictionaries:''
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	category:'SCM-Monticello-St/X Storing'
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
!
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!MCStXSnapshotPreWriteTransformation class methodsFor:'documentation'!
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
documentation
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
"
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
    documentation to be added.
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
    [author:]
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
        Jan Vrany <jan.vrany@fit.cvut.cz>
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    [instance variables:]
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
    [class variables:]
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
    [see also:]
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
"
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
! !
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
863
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    28
!MCStXSnapshotPreWriteTransformation methodsFor:'accessing'!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    29
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    30
monticelloName  
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    31
    | def |
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    32
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    33
    def := self projectDefinition.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    34
    ^def notNil ifTrue:[def monticelloName] ifFalse:[nil]
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    35
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    36
    "Created: / 31-05-2013 / 00:12:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    37
!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    38
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    39
projectDefinition
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    40
    transformed definitions reverseDo:[:d|
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    41
        | c |    
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    42
        (d isClassDefinition 
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    43
            and:[(c := d actualClass) notNil
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    44
                and:[c isProjectDefinition]])
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    45
                    ifTrue:[ ^ c  ]
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    46
    ].
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    47
    ^nil
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    48
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    49
    "Created: / 31-05-2013 / 00:23:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    50
! !
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    51
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    52
!MCStXSnapshotPreWriteTransformation methodsFor:'accessing - templates'!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    53
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    54
monticelloSmalltalkXExtensionMethodCategories_Code
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    55
^
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    56
'monticelloSmalltalkXExtensionMethodCategor
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    57
    "Returns an array of triples (class name, selector , St/X category)
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    58
     This information is used by Smalltalk/X when reading back Monticello package
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    59
     to patch methods category as in Monticello extensions must have funny name
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    60
     to be recognized by Monticello as extensions."
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    61
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    62
    ^#(
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    63
%1
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    64
    )
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    65
'
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    66
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    67
    "Created: / 31-05-2013 / 00:20:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    68
!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    69
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    70
monticelloSmalltalkXProjectType_Code
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    71
^
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    72
'monticelloSmalltalkXProjectType
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    73
    "Returns either #library or #application.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    74
     This information is used by Smalltalk/X when reading back Monticello package
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    75
     to patch my superclass as neither LibraryDefinition nor ApplicationDefinition classes
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    76
     are present in Squeak/Pharo images."
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    77
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    78
    ^%1
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    79
'
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    80
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    81
    "Created: / 30-05-2013 / 12:42:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    82
! !
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    83
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    84
!MCStXSnapshotPreWriteTransformation methodsFor:'testing'!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    85
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    86
isExtensionMethodDefinition: definition
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    87
    ^transformed includesClassNamed: definition className
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    88
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    89
    "Created: / 30-05-2013 / 22:48:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    90
    "Modified: / 31-05-2013 / 00:04:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    91
! !
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    92
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    93
!MCStXSnapshotPreWriteTransformation methodsFor:'transforming'!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    94
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    95
transform: anMCSnapshot
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    96
    "Returns a transformed **copy** of the original snapshot"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    97
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    98
    | projectDefinition |
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
    99
    extensionMethodCategoryMap := OrderedCollection new.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   100
    super transform: anMCSnapshot.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   101
    projectDefinition := self projectDefinition.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   102
    (projectDefinition notNil and:[extensionMethodCategoryMap notEmpty]) ifTrue:[
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   103
        | source |
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   104
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   105
        source := 
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   106
            self monticelloSmalltalkXExtensionMethodCategories_Code bindWith:
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   107
                (String streamContents:[:s|
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   108
                    extensionMethodCategoryMap do:[:entry|
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   109
                        s tab; tab; nextPutLine:  entry storeString
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   110
                    ].
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   111
                ]).
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   112
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   113
         transformed definitions addFirst:
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   114
            (MCMethodDefinition
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   115
                className:  projectDefinition name
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   116
                classIsMeta: true
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   117
                selector: 'monticelloSmalltalkXExtensionMethodCategories'
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   118
                category: 'accessing - monticello'
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   119
                timeStamp: 'Generated by ', self class name , ' at ' , Timestamp now printString
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   120
                source: source)
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   121
    ].
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   122
    ^transformed.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   123
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   124
    "Created: / 31-05-2013 / 00:05:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   125
! !
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   126
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
!MCStXSnapshotPreWriteTransformation methodsFor:'visiting'!
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
visitClassDefinition: definition
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    | class |
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
    class := definition actualClass.
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
    class isProjectDefinition ifTrue:[
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
        definition
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
            superclassName: 'Object';
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
            category: class monticelloName.
873
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   137
        transformed definitions addFirst:
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   138
            (MCMethodDefinition
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   139
                className: definition className
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   140
                classIsMeta: true
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   141
                selector: 'monticelloProjectDefinitionTypeName'
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   142
                category: 'accessing - monticello'
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   143
                timeStamp: 'Generated by ', self class name , ' at ' , Timestamp now printString
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   144
                source: 
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   145
                    (self monticelloSmalltalkXProjectType_Code bindWith: (class isApplicationDefinition ifTrue:[#application] ifFalse:[#library]) storeString))
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   146
    ]
863
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   147
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
    "Created: / 29-05-2013 / 12:19:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
873
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   149
    "Modified: / 31-05-2013 / 00:56:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
863
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   150
!
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   151
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   152
visitMethodDefinition: definition
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   153
    (self isExtensionMethodDefinition: definition) ifTrue:[
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   154
        extensionMethodCategoryMap add:
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   155
            (Array 
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   156
                with: definition className , (definition classIsMeta ifTrue:[' class'] ifFalse:[''])
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   157
                with: definition selector
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   158
                with: definition category).
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   159
        definition category: '*' , self monticelloName.
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   160
    ].
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   161
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   162
    "Created: / 30-05-2013 / 22:48:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
310347ceb9df More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 842
diff changeset
   163
    "Modified: / 31-05-2013 / 00:18:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
! !
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
!MCStXSnapshotPreWriteTransformation class methodsFor:'documentation'!
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
version
873
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   169
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCStXSnapshotPreWriteTransformation.st,v 1.3 2013-05-31 00:05:53 vrany Exp $'
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
!
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
version_CVS
873
8c7a9dcb9a69 class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 863
diff changeset
   173
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCStXSnapshotPreWriteTransformation.st,v 1.3 2013-05-31 00:05:53 vrany Exp $'
842
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
! !
5d2a3cd1bb44 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175