author | Jan Vrany <jan.vrany@labware.com> |
Tue, 11 Jul 2023 12:13:27 +0100 | |
branch | jv |
changeset 1173 | e3dd2050492e |
parent 1164 | b2f0322f5c53 |
permissions | -rw-r--r-- |
1131
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
1 |
" |
1173
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
2 |
COPYRIGHT (c) 2020-2023 LabWare |
1131
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
3 |
" |
842 | 4 |
"{ Package: 'stx:goodies/monticello' }" |
5 |
||
977
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
6 |
"{ NameSpace: Smalltalk }" |
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
7 |
|
842 | 8 |
MCStXSnapshotTransformation subclass:#MCStXSnapshotPreWriteTransformation |
987
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
9 |
instanceVariableNames:'extensionMethodCategoryMap projectDefinition includeExtrasForSTX' |
842 | 10 |
classVariableNames:'' |
11 |
poolDictionaries:'' |
|
12 |
category:'SCM-Monticello-St/X Storing' |
|
13 |
! |
|
14 |
||
15 |
!MCStXSnapshotPreWriteTransformation class methodsFor:'documentation'! |
|
16 |
||
1131
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
17 |
copyright |
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
18 |
" |
1173
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
19 |
COPYRIGHT (c) 2020-2023 LabWare |
1131
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
20 |
|
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
21 |
|
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
22 |
" |
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
23 |
! |
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
24 |
|
842 | 25 |
documentation |
26 |
" |
|
27 |
documentation to be added. |
|
28 |
||
29 |
[author:] |
|
30 |
Jan Vrany <jan.vrany@fit.cvut.cz> |
|
31 |
||
32 |
[instance variables:] |
|
33 |
||
34 |
[class variables:] |
|
35 |
||
36 |
[see also:] |
|
37 |
||
38 |
" |
|
39 |
! ! |
|
40 |
||
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
41 |
!MCStXSnapshotPreWriteTransformation methodsFor:'accessing'! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
42 |
|
938
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
43 |
monticelloName |
1154
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
44 |
| def code package | |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
45 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
46 |
def := self projectDefinition. |
1147
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
47 |
def notNil ifTrue:[^ def monticelloName]. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
48 |
|
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
49 |
"/ No project definition - the package is proably |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
50 |
"/ pure Monticello / Tonel package with no St/X extras. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
51 |
"/ |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
52 |
"/ Since all we have now is just a snapshot, we have to look |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
53 |
"/ at any class or method definition and get the package name |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
54 |
"/ from there. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
55 |
code := original definitions detect: [:e | e isClassDefinition ] ifNone: [ nil ]. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
56 |
code notNil ifTrue: [ |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
57 |
package := code actualClass package. |
1154
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
58 |
] ifFalse: [ |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
59 |
"/ Look for some method definition |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
60 |
code := original definitions detect: [:e | e isMethodDefinition ] ifNone: [ nil ]. |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
61 |
code notNil ifTrue: [ |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
62 |
package := (code actualClass compiledMethodAt: code selector) package. |
1147
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
63 |
]. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
64 |
]. |
1154
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
65 |
|
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
66 |
"/ If package DOES NOT look like Smalltalk/X package name, |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
67 |
"/ return it... |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
68 |
(package notNil and:[ package includesAny:':/']) ifFalse: [ |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
69 |
^ package |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
70 |
]. |
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
71 |
|
1147
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
72 |
"/ ...otherwise, we cannot make a guess. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
73 |
self error: 'Cannot guess (monticello) package name!!' |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
74 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
75 |
"Created: / 31-05-2013 / 00:12:27 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1154
e6c2ad3972c9
Fix writing packages consisting of extension methods only
Jan Vrany <jan.vrany@labware.com>
parents:
1151
diff
changeset
|
76 |
"Modified (format): / 28-10-2021 / 15:52:39 / Jan Vrany <jan.vrany@labware.com>" |
863
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 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
79 |
projectDefinition |
877
493a70407896
class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
875
diff
changeset
|
80 |
original definitions reverseDo:[:d| |
938
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
81 |
| c | |
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
82 |
(d isClassDefinition |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
83 |
and:[(c := d actualClass) notNil |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
84 |
and:[c isProjectDefinition]]) |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
85 |
ifTrue:[ ^ c ] |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
86 |
]. |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
87 |
^nil |
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: / 31-05-2013 / 00:23:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
877
493a70407896
class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
875
diff
changeset
|
90 |
"Modified: / 31-05-2013 / 10:45:08 / 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
|
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:'accessing - templates'! |
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 |
monticelloSmalltalkXExtensionMethodCategories_Code |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
96 |
^ |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
97 |
'monticelloSmalltalkXExtensionMethodCategor |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
98 |
"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
|
99 |
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
|
100 |
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
|
101 |
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
|
102 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
103 |
^#( |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
104 |
%1 |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
105 |
) |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
106 |
' |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
107 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
108 |
"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
|
109 |
! |
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 |
monticelloSmalltalkXProjectType_Code |
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 |
'monticelloSmalltalkXProjectType |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
114 |
"Returns either #library or #application. |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
115 |
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
|
116 |
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
|
117 |
are present in Squeak/Pharo images." |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
118 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
119 |
^%1 |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
120 |
' |
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 |
"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
|
123 |
! ! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
124 |
|
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
125 |
!MCStXSnapshotPreWriteTransformation methodsFor:'private'! |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
126 |
|
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
127 |
withoutNamespacePrefix: className |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
128 |
"Strip Smalltalk/X-style namespace from given `className` (if any)" |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
129 |
|
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
130 |
| lastColonIndex | |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
131 |
|
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
132 |
lastColonIndex := className lastIndexOf: $:. |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
133 |
lastColonIndex ~~ 0 ifTrue: [ |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
134 |
^ className copyFrom: lastColonIndex + 1 |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
135 |
]. |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
136 |
^ className |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
137 |
|
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
138 |
"Created: / 20-09-2022 / 11:09:33 / Jan Vrany <jan.vrany@labware.com>" |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
139 |
! ! |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
140 |
|
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
141 |
!MCStXSnapshotPreWriteTransformation methodsFor:'testing'! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
142 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
143 |
isExtensionMethodDefinition: definition |
875
cc0588b2a9db
class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
873
diff
changeset
|
144 |
^(transformed includesClassNamed: definition className) not |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
145 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
146 |
"Created: / 30-05-2013 / 22:48:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
875
cc0588b2a9db
class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
873
diff
changeset
|
147 |
"Modified: / 31-05-2013 / 01:16:20 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
886
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
148 |
! |
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
149 |
|
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
150 |
isSmalltalkXPackage |
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
151 |
^ projectDefinition notNil |
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
152 |
|
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
153 |
"Created: / 12-06-2013 / 09:22:03 / 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
|
154 |
! ! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
155 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
156 |
!MCStXSnapshotPreWriteTransformation methodsFor:'transforming'! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
157 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
158 |
transform: anMCSnapshot |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
159 |
"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
|
160 |
|
1002
54b4906215ca
Introduced MCSnapshotOptions for more fine-graned control over contents of .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1001
diff
changeset
|
161 |
includeExtrasForSTX := anMCSnapshot options includeExtrasForSTX. |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
162 |
extensionMethodCategoryMap := OrderedCollection new. |
938
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
163 |
original := anMCSnapshot. |
886
850e6b54a054
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
877
diff
changeset
|
164 |
projectDefinition := self projectDefinition. |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
165 |
super transform: anMCSnapshot. |
1000
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
166 |
includeExtrasForSTX ifTrue:[ |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
167 |
(projectDefinition notNil and:[projectDefinition isPackageManifest not and:[extensionMethodCategoryMap notEmpty]]) ifTrue:[ |
1000
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
168 |
| source | |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
169 |
|
1000
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
170 |
source := |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
171 |
self monticelloSmalltalkXExtensionMethodCategories_Code bindWith: |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
172 |
(String streamContents:[:s| |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
173 |
extensionMethodCategoryMap do:[:entry| |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
174 |
s tab; tab; nextPutLine: entry storeString |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
175 |
]. |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
176 |
]). |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
177 |
|
1000
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
178 |
transformed definitions addFirst: |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
179 |
(MCMethodDefinition |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
180 |
className: projectDefinition name |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
181 |
classIsMeta: true |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
182 |
selector: 'monticelloSmalltalkXExtensionMethodCategories' |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
183 |
category: 'accessing - monticello' |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
184 |
timeStamp: 'Generated by ', self class name , ' at ' , Timestamp now printString |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
185 |
source: source) |
dbc3a47007d6
Do not include #monticelloSmalltalkXExtensionMethodCategories method when St/X extras are NOT included
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
998
diff
changeset
|
186 |
]. |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
187 |
]. |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
188 |
^transformed. |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
189 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
190 |
"Created: / 31-05-2013 / 00:05:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1002
54b4906215ca
Introduced MCSnapshotOptions for more fine-graned control over contents of .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1001
diff
changeset
|
191 |
"Modified: / 07-09-2015 / 15:28:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
192 |
"Modified: / 29-11-2021 / 14:46:02 / Jan Vrany <jan.vrany@labware.com>" |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
193 |
! ! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
194 |
|
842 | 195 |
!MCStXSnapshotPreWriteTransformation methodsFor:'visiting'! |
196 |
||
1150
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
197 |
visitClassComment: definition |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
198 |
| comment source | |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
199 |
|
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
200 |
comment := definition comment asStringWithNativeLineEndings."/ Make sure comment has native line endings |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
201 |
comment := comment spacesToTabs. "/ Make sure there are only tabs (norm on Squeak / Pharo) |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
202 |
comment := comment asStringWithSqueakLineEndings. "/ Make sure comment has Squeak line endings |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
203 |
comment := comment asSingleByteStringIfPossible. "/ Convert to single byte string |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
204 |
definition comment: comment. |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
205 |
|
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
206 |
source := definition source asStringWithNativeLineEndings. "/ Make sure source has native line endings |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
207 |
source := source spacesToTabs. "/ Make sure there are only tabs (norm on Squeak / Pharo) |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
208 |
source := source asStringWithSqueakLineEndings. "/ Make sure source has Squeak line endings |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
209 |
source := source asSingleByteStringIfPossible. "/ Convert to single byte string |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
210 |
definition source: source. |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
211 |
|
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
212 |
"Created: / 17-09-2021 / 12:12:39 / Jan Vrany <jan.vrany@labware.com>" |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
213 |
"Modified: / 17-09-2021 / 15:18:37 / Jan Vrany <jan.vrany@labware.com>" |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
214 |
! |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
215 |
|
842 | 216 |
visitClassDefinition: definition |
977
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
217 |
" |
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
218 |
save ProjectDefinition classes with Object as superclass |
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
219 |
(because ProjectDefinition is not present in Pharo/Squeak). |
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
220 |
When reading back into ST/X, the PostReadTransformation undoes this |
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
221 |
" |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
222 |
| comment exporter class | |
1150
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
223 |
|
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
224 |
comment := definition commentOrNil. |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
225 |
comment notNil ifTrue: [ |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
226 |
comment := definition comment asStringWithNativeLineEndings."/ Make sure comment has native line endings |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
227 |
comment := comment spacesToTabs. "/ Make sure there are only tabs (norm on Squeak / Pharo) |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
228 |
comment := comment asStringWithSqueakLineEndings. "/ Make sure comment has Squeak line endings |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
229 |
comment := comment asSingleByteStringIfPossible. "/ Convert to single byte string |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
230 |
definition comment: comment. |
167bfe697a5d
Convert line ends and tabs also in class comments
Jan Vrany <jan.vrany@labware.com>
parents:
1147
diff
changeset
|
231 |
]. |
842 | 232 |
|
1163
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
233 |
includeExtrasForSTX ifFalse: [ |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
234 |
definition className: (self withoutNamespacePrefix: definition className). |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
235 |
definition superclassName: (self withoutNamespacePrefix: definition superclassName) |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
236 |
]. |
1163
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
237 |
|
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
238 |
exporter := original options exporter. |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
239 |
exporter notNil ifTrue: [ definition accept: exporter]. |
1163
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
240 |
|
842 | 241 |
class := definition actualClass. |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
242 |
(class isProjectDefinition) ifTrue:[ |
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
243 |
includeExtrasForSTX ifTrue:[ |
987
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
244 |
definition |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
245 |
"/ className:(definition className capitalized); |
1001
ab90b7b78d2a
Transform project definition classes as subclasses of PackageManifest
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1000
diff
changeset
|
246 |
superclassName: #PackageManifest; |
987
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
247 |
category: class monticelloName. |
877
493a70407896
class: MCStXSnapshotPreWriteTransformation
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
875
diff
changeset
|
248 |
|
987
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
249 |
transformed definitions addFirst: |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
250 |
(MCMethodDefinition |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
251 |
className: definition className |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
252 |
classIsMeta: true |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
253 |
selector: 'monticelloProjectDefinitionTypeName' |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
254 |
category: 'accessing - monticello' |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
255 |
timeStamp: 'Generated by ', self class name , ' at ' , Timestamp now printString |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
256 |
source: |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
257 |
(self monticelloSmalltalkXProjectType_Code bindWith: (class isApplicationDefinition ifTrue:[#application] ifFalse:[#library]) storeString)) |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
258 |
] ifFalse:[ |
1173
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
259 |
definition superclassName ~= 'PackageManifest' ifTrue: [ |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
260 |
transformed definitions remove: definition. |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
261 |
^ self. |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
262 |
] |
998
85a0b8dca6aa
Oops, do not filter out project definition class when St/X extras should be kept...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
997
diff
changeset
|
263 |
]. |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
264 |
]. |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
265 |
|
1173
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
266 |
(definition category startsWith: self monticelloName) ifFalse: [ |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
267 |
| defaultName | |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
268 |
|
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
269 |
"FIXME: following is really nasty hack how to call super implementation" |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
270 |
defaultName := (ProjectDefinition class >> #monticelloName) valueWithReceiver: projectDefinition. |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
271 |
(definition category startsWith: defaultName) ifTrue: [ |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
272 |
definition category: self monticelloName , (definition category copyFrom: defaultName size + 1) |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
273 |
]. |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
274 |
]. |
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
275 |
|
842 | 276 |
"Created: / 29-05-2013 / 12:19:44 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1001
ab90b7b78d2a
Transform project definition classes as subclasses of PackageManifest
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1000
diff
changeset
|
277 |
"Modified: / 31-07-2015 / 09:22:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1173
e3dd2050492e
Update class category to match package name if it does not
Jan Vrany <jan.vrany@labware.com>
parents:
1164
diff
changeset
|
278 |
"Modified: / 11-07-2023 / 11:13:54 / Jan Vrany <jan.vrany@labware.com>" |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
279 |
! |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
280 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
281 |
visitMethodDefinition: definition |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
282 |
| class source exporter | |
987
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
283 |
|
1151
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
284 |
class := definition actualClass. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
285 |
|
1163
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
286 |
includeExtrasForSTX ifFalse:[ |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
287 |
"/ Remove all version_XX methods |
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
288 |
(AbstractSourceCodeManager isVersionMethodSelector: definition selector) ifTrue:[ |
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
289 |
transformed definitions remove: definition. |
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
290 |
]. |
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
291 |
|
988
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
292 |
"/ If St/X extras should not be included, then remove all methods |
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
293 |
"/ that belong to project definition class. |
1155
d8c45f2af03f
Always include `PackageManifest`s even if not including St/X extras
Jan Vrany <jan.vrany@labware.com>
parents:
1154
diff
changeset
|
294 |
(class theNonMetaclass == projectDefinition and:[projectDefinition isPackageManifest not]) ifTrue:[ |
1160
1539e58bab91
Add utility method `MCRepository >> storePackage:`
Jan Vrany <jan.vrany@labware.com>
parents:
1155
diff
changeset
|
295 |
transformed definitions remove: definition ifAbsent: [ "Might have been removed in previous step" ]. |
987
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
296 |
^ self. |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
297 |
]. |
7dbc6348209e
mcz writing: do not include project definition class when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
977
diff
changeset
|
298 |
]. |
938
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
299 |
|
1131
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
300 |
"/ Use source porter to perform automagic porting. |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
301 |
"/ See MCSnapshotOptions >> exporter. |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
302 |
exporter := original options exporter. |
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
303 |
exporter notNil ifTrue: [ definition accept: exporter]. |
1131
79318af3b3c4
Use (specified) source code porter when writing .mcz
Jan Vrany <jan.vrany@labware.com>
parents:
1002
diff
changeset
|
304 |
|
1163
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
305 |
includeExtrasForSTX ifFalse: [ |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
306 |
definition className: (self withoutNamespacePrefix: definition className) |
1163
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
307 |
]. |
61b803d8324e
Strip Smalltalk/X C++ style namespace prefix when writing package
Jan Vrany <jan.vrany@labware.com>
parents:
1160
diff
changeset
|
308 |
|
1151
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
309 |
"/ Now a horrible hack - do not read the chunk below. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
310 |
"/ In Squeak / Pharo world, the method source does not |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
311 |
"/ (shall not?) contain trailing new lines. St/X browser, |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
312 |
"/ OTOH, puts a trailing new line in methods' source. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
313 |
"/ |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
314 |
"/ So, when code is loaded into St/X and modified then saved |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
315 |
"/ back, it adds an spurious extra trailing line. This creates |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
316 |
"/ a noise, especially when using Tonel. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
317 |
"/ |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
318 |
"/ It gets worse. I (JV) did not pay attention to this problem |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
319 |
"/ before and start hacking, already adding a spurious new lines |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
320 |
"/ to considerable codebase - too bad. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
321 |
"/ |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
322 |
"/ To fix while avoiding noise in diffs, we remove trailing newlines |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
323 |
"/ for modified methods. However, we have to save back source without |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
324 |
"/ trailing new lines to the method itself so that when the package is |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
325 |
"/ saved again from the same image, it won't add the new line (because |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
326 |
"/ second time the method is no longer 'modified'). |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
327 |
"/ |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
328 |
"/ Complicated, isn't it? Stupid, isn't it? |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
329 |
source := definition source. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
330 |
(source last == Character lf or: [ source last == Character return ]) ifTrue: [ |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
331 |
(ChangeSet current includesChangeForClass: class selector: definition selector) ifTrue: [ |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
332 |
| method | |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
333 |
|
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
334 |
source := source withoutTrailingSeparators. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
335 |
method := class compiledMethodAt: definition selector. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
336 |
method source: source. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
337 |
]. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
338 |
]. |
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
339 |
|
6959d29b6409
Remove trailing new line in methods source
Jan Vrany <jan.vrany@labware.com>
parents:
1150
diff
changeset
|
340 |
source := source asStringWithNativeLineEndings. "/ Make sure source has native line endings |
1145
ee708f06f612
Use (newer) `#spacesToTabs` and `#tabsToSpaces` in St/X transformation
Jan Vrany <jan.vrany@labware.com>
parents:
1131
diff
changeset
|
341 |
source := source spacesToTabs. "/ Make sure there are only tabs (norm on Squeak / Pharo) |
992
f46203ad6470
.mcz reading/writing: change indentation of method source to respect platform's convention
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
988
diff
changeset
|
342 |
source := source asStringWithSqueakLineEndings. "/ Make sure source has Squeak line endings |
f46203ad6470
.mcz reading/writing: change indentation of method source to respect platform's convention
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
988
diff
changeset
|
343 |
source := source asSingleByteStringIfPossible. "/ Convert to single byte string |
938
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
344 |
definition source: source. |
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
345 |
|
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
346 |
(self isExtensionMethodDefinition: definition) ifTrue:[ |
936
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
347 |
| prefix | |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
348 |
|
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
349 |
prefix := '*' , self monticelloName asLowercase. |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
350 |
(definition category asLowercase startsWith: prefix) ifFalse:[ |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
351 |
extensionMethodCategoryMap add: |
938
f544f968df1d
Expand tabs before writing .mcz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
936
diff
changeset
|
352 |
(Array |
936
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
353 |
with: definition className , (definition classIsMeta ifTrue:[' class'] ifFalse:['']) |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
354 |
with: definition selector |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
355 |
with: definition category). |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
356 |
definition category: '*' , self monticelloName. |
c4564a0396b9
Fix in MCStXSnapshotPreWriteTransformation: do not fix extension cstegory if the prefix in OK.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
932
diff
changeset
|
357 |
] |
863
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
358 |
]. |
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
359 |
|
310347ceb9df
More improvements in pre-write transformations.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
842
diff
changeset
|
360 |
"Created: / 30-05-2013 / 22:48:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
997
c9b7bdd4088a
Oops, do not include methods for removed project definition class!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
992
diff
changeset
|
361 |
"Modified: / 10-05-2015 / 15:08:26 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1164
b2f0322f5c53
Use separate porters when writing out / reading in snapshots
Jan Vrany <jan.vrany@labware.com>
parents:
1163
diff
changeset
|
362 |
"Modified: / 20-09-2022 / 16:56:55 / Jan Vrany <jan.vrany@labware.com>" |
932
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
363 |
! |
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
364 |
|
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
365 |
visitOrganizationDefinition: defintion |
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
366 |
"Add a category in which project definition class is..." |
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
367 |
|
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
368 |
| categories | |
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
369 |
|
1147
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
370 |
projectDefinition notNil ifTrue: [ |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
371 |
categories := defintion categories. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
372 |
(categories includes: projectDefinition monticelloName) ifFalse:[ |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
373 |
categories := categories copyWith: projectDefinition monticelloName asSymbol. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
374 |
defintion categories: categories. |
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
375 |
]. |
932
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
376 |
]. |
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
377 |
|
b74cf6420afc
Fix in MCStXSnapshotPreWriteTransformation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
898
diff
changeset
|
378 |
"Created: / 05-10-2014 / 00:59:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1147
d9ff96becc42
tonel: use snapshot transformation when reading / writing packages
Jan Vrany <jan.vrany@labware.com>
parents:
1145
diff
changeset
|
379 |
"Modified: / 04-05-2021 / 11:42:08 / Jan Vrany <jan.vrany@labware.com>" |
842 | 380 |
! ! |
381 |
||
382 |
!MCStXSnapshotPreWriteTransformation class methodsFor:'documentation'! |
|
383 |
||
384 |
version |
|
977
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
385 |
^ '$Header: /cvs/stx/stx/goodies/monticello/MCStXSnapshotPreWriteTransformation.st,v 1.11 2015-03-30 19:54:21 cg Exp $' |
842 | 386 |
! |
387 |
||
388 |
version_CVS |
|
977
f95b01954348
class: MCStXSnapshotPreWriteTransformation
Claus Gittinger <cg@exept.de>
parents:
938
diff
changeset
|
389 |
^ '$Header: /cvs/stx/stx/goodies/monticello/MCStXSnapshotPreWriteTransformation.st,v 1.11 2015-03-30 19:54:21 cg Exp $' |
988
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
390 |
! |
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
391 |
|
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
392 |
version_HG |
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
393 |
|
536fd853efeb
mcz writing: do not include version_XX methods when include St/X extras is not wanted
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
987
diff
changeset
|
394 |
^ '$Changeset: <not expanded> $' |
842 | 395 |
! ! |
396 |