--- a/VSEPackageFileSourceWriter.st Tue Jan 27 21:29:28 2015 +0100
+++ b/VSEPackageFileSourceWriter.st Tue Jan 27 21:34:51 2015 +0100
@@ -13,7 +13,7 @@
"{ NameSpace: Smalltalk }"
-SmalltalkChunkFileSourceWriter subclass:#VSEPackageFileSourceWriter
+VSEFileSourceWriter subclass:#VSEPackageFileSourceWriter
instanceVariableNames:'packageName'
classVariableNames:''
poolDictionaries:''
@@ -75,13 +75,23 @@
!VSEPackageFileSourceWriter class methodsFor:'utilities'!
fileOutPackage:packageID on:aStream
- |classesToFileout writer|
+ |classesToFileout methodsToFileOut writer|
aStream lineEndCRLF.
classesToFileout := Smalltalk allClassesInPackage:packageID.
+ classesToFileout := classesToFileout reject:[:cls | cls isSubclassOf: ProjectDefinition ].
classesToFileout topologicalSort:[:a :b | b isSubclassOf:a].
+ methodsToFileOut := self extensionMethodsFor:packageID.
+
+ classesToFileout do:[:eachClass |
+ self ensureNoUnicodeInClass:eachClass
+ ].
+ methodsToFileOut do:[:eachClass |
+ self ensureNoUnicodeInMethod:eachClass
+ ].
+
writer := VSEPackageFileSourceWriter new.
writer packageName:packageID.
writer writeHeaderOn:aStream.
@@ -91,7 +101,7 @@
method := rewriteQuery method.
source := rewriteQuery source.
- source := VSEChunkFileSourceWriter vseSourceRewriter rewriteMethod:method.
+ source := self vseSourceRewriter rewriteMethod:method.
rewriteQuery proceedWith:source.
] do:[
classesToFileout do:[:eachClass |
@@ -99,18 +109,9 @@
].
"/ fileout extensions
- Smalltalk allClassesDo:[:eachClass |
- (classesToFileout includes:eachClass) ifFalse:[
- eachClass instAndClassSelectorsAndMethodsDo:[:sel :mthd |
- |mPckg|
-
- mPckg := mthd package.
- (mPckg = packageID and:[mPckg ~= eachClass package]) ifTrue:[
- writer fileOutMethod:mthd on:aStream.
- aStream cr.
- ]
- ]
- ].
+ methodsToFileOut do:[:eachMethod |
+ writer fileOutMethod:eachMethod on:aStream.
+ aStream cr.
].
].
! !
@@ -313,10 +314,10 @@
!VSEPackageFileSourceWriter class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic3/VSEPackageFileSourceWriter.st,v 1.2 2015-01-27 15:16:58 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic3/VSEPackageFileSourceWriter.st,v 1.3 2015-01-27 20:34:51 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libbasic3/VSEPackageFileSourceWriter.st,v 1.2 2015-01-27 15:16:58 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic3/VSEPackageFileSourceWriter.st,v 1.3 2015-01-27 20:34:51 cg Exp $'
! !