|
Class: AbstractSourceFileWriter
Object
|
+--AbstractSourceFileWriter
|
+--JavaScriptSourceFileWriter
|
+--SmalltalkChunkFileSourceWriter
- Package:
- stx:libbasic
- Category:
- Kernel-Classes-Support
- Version:
- rev:
1.13
date: 2015/11/18 12:15:46
- user: cg
- file: AbstractSourceFileWriter.st directory: libbasic
- module: stx stc-classLibrary: libbasic
Abstract common superclass for source file writers
queries
-
isAbstract
-
signal constants
-
methodSourceRewriteQuery
-
hook to allow for just-in-time rewriting of a method's sourceCode while filing out
used when saving version_XXX methods in a non-XXX sourceCodeManager
(i.e. to rewrite all non-CVS version methods while saving into a CVS repository)
this is required because we cannot save an SVN version method (dollar-ID-...-dollar) into a
CVS repository without loosing the original string with the next checkout, because it also gets
expanded by CVS. The same is true vice-versa for CVS-Ids, which get clobbered by SVN.
see SmalltalkChunkFileSourceWriter fileOutMethod:on:
accessing
-
generatingSourceForOriginal: aBoolean
-
if false (the default), the source of the current (in image) code is generated.
That means, that any extension method which shadows some other original method,
that extension method's code is generated.
if true, the code of the original method is generated.
Use a true value, when generating code for a SCM checkin operation, as then we do not
want the extension to shadow the original
fileout
-
fileOut: aClass on: outStreamArg
-
source writing
-
fileOut: class on: stream withTimeStamp: stampIt withInitialize: initIt withDefinition: withDefinition methodFilter: methodFilter
-
-
fileOut: class on: stream withTimeStamp: stampIt withInitialize: initIt withDefinition: withDefinition methodFilter: methodFilter encoder: encoderOrNil
-
raise an error: must be redefined in concrete subclass(es)
** This method raises an error - it must be redefined in concrete classes **
-
fileOutMethods: methods on: stream
-
Files out a bunch of methods. This is used to file-out extension methods
** This method raises an error - it must be redefined in concrete classes **
-
fileOutPackageDefinition: packageId on: stream
-
Files out a package definition on the stream, so all subsequent
code entities will be placed in that package
** This method raises an error - it must be redefined in concrete classes **
source writing - comments
-
fileOutComment: aStringOrStringCollection on: aStream
-
Writes a comment to a stream using proper syntax
-
fileOutCommentEndOn: aStream
-
Writes a comment end mark on aStream.
** This method raises an error - it must be redefined in concrete classes **
-
fileOutCommentLine: aString on: aStream
-
Writes a single line of comment on a comment to a stream.
Should not put an cr to the stream!
** This method raises an error - it must be redefined in concrete classes **
-
fileOutCommentStartOn: aStream
-
Writes a comment start mark on aStream.
** This method raises an error - it must be redefined in concrete classes **
MethodSourceRewriteQuery
|