AbstractSourceFileWriter.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sat, 22 Aug 2009 09:34:50 +0100
branchjv
changeset 17729 4187f74d2df8
parent 17727 3945dfe4659c
child 17732 a1892eeca6c0
permissions -rw-r--r--
- small improvements in multi-language support - overidden methods now keep their source code locally - fixed generation of Make.spec
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17727
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:libbasic' }"
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
Object subclass:#AbstractSourceFileWriter
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
	instanceVariableNames:''
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
	classVariableNames:''
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	poolDictionaries:''
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	category:'Kernel-Classes'
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
!
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
17729
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    11
!AbstractSourceFileWriter methodsFor:'fileout'!
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    12
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    13
fileOut:aClass on:outStreamArg 
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    14
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    15
    self 
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    16
        fileOut:aClass on:outStreamArg 
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    17
        withTimeStamp:true withInitialize:true 
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    18
        withDefinition:true 
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    19
        methodFilter:nil encoder:nil
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    20
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    21
    "Created: / 15-08-2009 / 13:11:31 / Jan Vrany <vranyj1@fel.cvut.cz>"
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    22
! !
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    23
17727
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
!AbstractSourceFileWriter methodsFor:'source writing'!
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
fileOut: class on:stream withTimeStamp: stampIt withInitialize: initIt withDefinition: withDefinition methodFilter:methodFilter encoder:encoderOrNil
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
    "raise an error: must be redefined in concrete subclass(es)"
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
    ^ self subclassResponsibility
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
    "Modified: / 16-08-2009 / 09:59:49 / Jan Vrany <vranyj1@fel.cvut.cz>"
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
! !
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
17729
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    34
!AbstractSourceFileWriter methodsFor:'source writing - comments'!
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    35
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    36
fileOutComment: aStringOrStringCollection on: aStream
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    37
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    38
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    39
        Writes a comment to a stream
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    40
        using proper syntax
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    41
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    42
    self fileOutCommentStartOn: aStream.
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    43
    aStringOrStringCollection isStringCollection
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    44
        ifTrue:
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    45
            [aStringOrStringCollection 
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    46
                do:[:line|self fileOutCommentLine: line on: aStream]
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    47
                separatedBy: [aStream cr]]
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    48
        ifFalse:
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    49
            [(aStringOrStringCollection includes: Character cr)
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    50
                ifTrue:"/hmm...multiline comment as string
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    51
                    [aStringOrStringCollection asStringCollection
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    52
                        do:[:line|self fileOutCommentLine: line on: aStream]
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    53
                        separatedBy: [aStream cr]]
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    54
                ifFalse:
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    55
                    [self fileOutCommentLine: aStringOrStringCollection on: aStream]].
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    56
    self fileOutCommentEndOn: aStream.
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    57
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    58
    "Created: / 21-08-2009 / 09:36:03 / Jan Vrany <vranyj1@fel.cvut.cz>"
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    59
!
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    60
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    61
fileOutCommentEndOn: aStream
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    62
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    63
        Writes a comment end mark on aStream.
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    64
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    65
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    66
    ^self subclassResponsibility
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    67
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    68
    "Created: / 21-08-2009 / 09:40:42 / Jan Vrany <vranyj1@fel.cvut.cz>"
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    69
!
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    70
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    71
fileOutCommentLine: aString on: aStream
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    72
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    73
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    74
        Writes a single line of comment on a comment to a stream.
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    75
        Should not put an cr to the stream!!
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    76
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    77
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    78
    ^self subclassResponsibility
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    79
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    80
    "Created: / 21-08-2009 / 09:42:23 / Jan Vrany <vranyj1@fel.cvut.cz>"
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    81
!
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    82
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    83
fileOutCommentStartOn: aStream
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    84
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    85
        Writes a comment start mark on aStream.
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    86
    "
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    87
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    88
    ^self subclassResponsibility
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    89
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    90
    "Created: / 21-08-2009 / 09:40:28 / Jan Vrany <vranyj1@fel.cvut.cz>"
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    91
! !
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    92
17727
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
!AbstractSourceFileWriter class methodsFor:'documentation'!
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
version
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
17729
4187f74d2df8 - small improvements in multi-language support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17727
diff changeset
    97
    ^'$Id: AbstractSourceFileWriter.st 10468 2009-08-22 08:34:50Z vranyj1 $'
17727
3945dfe4659c multilanguage improvements mainly for loading projects with
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
! !