BeeSourceWriter.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 31 May 2018 10:52:50 +0100
branchjv
changeset 4330 998eb03f0736
parent 4162 e96794cd9edd
child 4365 edfc925ae6b1
permissions -rw-r--r--
Copyright updates
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
4330
998eb03f0736 Copyright updates
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4162
diff changeset
     2
 COPYRIGHT (c) 2015-2016 Jan Vrany
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
              All Rights Reserved
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
 hereby transferred.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
"{ Package: 'stx:libbasic3' }"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
"{ NameSpace: Smalltalk }"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
SmalltalkChunkFileSourceWriter subclass:#BeeSourceWriter
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
	instanceVariableNames:'timestamp'
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
	classVariableNames:''
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	poolDictionaries:''
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
	category:'Kernel-Classes-Support'
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!BeeSourceWriter class methodsFor:'documentation'!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
copyright
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
"
4330
998eb03f0736 Copyright updates
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4162
diff changeset
    27
 COPYRIGHT (c) 2015-2016 Jan Vrany
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
              All Rights Reserved
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
 This software is furnished under a license and may be used
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
 only in accordance with the terms of that license and with the
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
 be provided or otherwise made available to, or used by, any
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
 other person.  No title to or ownership of the software is
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
 hereby transferred.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
! !
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
!BeeSourceWriter class methodsFor:'simple API'!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
fileOut:aClass on:aStream
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    self fileOut:aClass on:aStream withTimeStamp:false
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
        withInitialize:true withDefinition:true
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
        methodFilter:nil encoder:nil
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
    "Created: / 14-04-2015 / 13:12:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
! !
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
!BeeSourceWriter methodsFor:'source writing'!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
fileOut:aClass on:outStreamArg withTimeStamp:stampIt withInitialize:initIt withDefinition:withDefinition methodFilter:methodFilter encoder:encoderOrNil
4162
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    52
    timestamp := Timestamp now printStringIso8601.
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    super fileOut:aClass on:outStreamArg withTimeStamp:stampIt withInitialize:initIt withDefinition:withDefinition methodFilter:methodFilter encoder:encoderOrNil
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    "Created: / 14-04-2015 / 12:26:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4162
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    56
    "Modified: / 07-09-2016 / 15:17:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    57
!
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    58
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    59
fileOutAllDefinitionsOf:aNonMetaClass on:aStream
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    60
    self fileOutAllDefinitionsOf:aNonMetaClass on:aStream withNameSpace: false.
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    61
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
    62
    "Created: / 07-09-2016 / 15:38:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
fileOutAllDefinitionsOf:aNonMetaClass on:aStream withNameSpace: withNameSpacePragma
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    "append expressions on aStream, which defines myself and all of my private classes."
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
    self fileOutDefinitionOf:aNonMetaClass on:aStream withNameSpace: withNameSpacePragma.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
    "/ self fileOutDefinitionOf:aNonMetaClass on:aStream.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    "/ aStream nextPutChunkSeparator. 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    aStream cr.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    "/
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    "/ optional classInstanceVariables
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    "/
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    aNonMetaClass class instanceVariableString isBlank ifFalse:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
        self fileOutClassInstVarDefinitionOf:aNonMetaClass on:aStream
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
    "/ here, the full nameSpace prefixes are output,
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
    "/ to avoid confusing stc 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
    "/ (which otherwise could not find the correct superclass)
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
    "/
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    Class fileOutNameSpaceQuerySignal answer:false do:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
        Class forceNoNameSpaceQuerySignal answer:true do:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
            aNonMetaClass privateClassesSorted do:[:aClass |
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
                 self fileOutAllDefinitionsOf:aClass on:aStream withNameSpace: false
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
            ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
        ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    "Created: / 14-04-2015 / 13:02:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
fileOutCategory:aCategory of:aClass except:skippedMethods only:savedMethods methodFilter:methodFilter on:aStream
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
    "file out all methods belonging to aCategory, aString onto aStream.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
     If skippedMethods is nonNil, those are not saved.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
     If savedMethods is nonNil, only those are saved.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
     If both are nil, all are saved. See version-method handling in
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
     fileOut for what this is needed."
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    |sortedSelectors interestingMethods prjDef|
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
    interestingMethods := OrderedCollection new.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
    aClass methodsDo:[:each |
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
        | wanted method shadowed |
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
        method := each.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
        (methodsAlreadySaved includes:method) ifFalse:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
            (aCategory = method category) ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
                wanted := methodFilter isNil or:[methodFilter value:method].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
                wanted ifFalse:[ 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
                    "/ care for methods which have been shadowed by an extension from another package!!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
                    "/ The problem is that we cannot easily introspect the filter, so we cannot know
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
                    "/ if the filter is for package or not. In most (all?) cases it is as this method
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
                    "/ is mostly used by source code management, so if the filter filters method out,
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
                    "/ try afain for possibly shadowed method.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
                    methodFilter notNil ifTrue:[ 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
                        shadowed := method shadowedMethod.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
                        shadowed notNil ifTrue:[ 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
                            wanted := methodFilter value: shadowed.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
                        ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
                    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
                ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
                wanted ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
                    skippedMethods notNil ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
                        wanted := (skippedMethods includesIdentical:method) not
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
                    ] ifFalse:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
                        wanted := savedMethods isNil or:[ savedMethods includesIdentical:method ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
                    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
                    wanted ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
                        (method selector isSymbol) ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
                            interestingMethods add:method
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
                        ] ifFalse:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
                            Transcript showCR:'skipping non-symbol method ', method selector printString.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
                        ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
                    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
                ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
            ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
        ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
    interestingMethods notEmpty ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
        "/
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
        "/ sort by selector
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
        "/
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
        sortedSelectors := interestingMethods collect:[:m | aClass selectorAtMethod:m].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
        sortedSelectors sortWith:interestingMethods.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
        generatingSourceForOriginal == true ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
            "/ care for methods which have been shadowed by an extension from another package!!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
            (prjDef := aClass theNonMetaclass projectDefinitionClass) notNil ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
                prjDef hasSavedOverwrittenMethods ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
                    interestingMethods := interestingMethods collect:[:m |
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
                                                |originalOrNil|
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
                                                
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
                                                (m package ~~ aClass package) ifTrue:[ 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
                                                    originalOrNil := prjDef savedOverwrittenMethodForClass:aClass selector:m selector.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
                                                    originalOrNil notNil ifTrue:[ 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
                                                        1.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
                                                        self breakPoint:#cg 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
                                                    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
                                                ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
                                                originalOrNil ? m
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
                                          ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
                ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
            ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
        ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
        interestingMethods do:[:eachMethod |
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
            self fileOutMethod:eachMethod on:aStream.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
            methodsAlreadySaved add:eachMethod.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
        ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
    "Created: / 14-04-2015 / 13:05:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
    "Modified: / 14-04-2015 / 14:31:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
fileOutDefinitionOf:aNonMetaClass on:aStream withNameSpace: withNameSpacePragma
4162
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   183
    | revinfo |
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   184
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   185
    revinfo := aNonMetaClass revisionInfo.
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   186
    aStream nextPutAll: '!!ClassDefinition timeStamp:'; nextPutAll: timestamp storeString; nextPutAll: ' author: '; nextPutAll: revinfo author asString storeString; nextPutAll:' className: '; nextPutAll: aNonMetaClass name asString storeString; nextPutAll: '!!'.
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
    aStream cr; cr.       
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
    aNonMetaClass basicFileOutDefinitionOn:aStream withNameSpace: false withPackage: false.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
    aStream nextPut: $!!; cr.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
    "Created: / 14-04-2015 / 12:39:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4162
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   192
    "Modified: / 07-09-2016 / 15:21:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
fileOutMethod:aMethod on:aStream
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
    "file a single method onto aStream."
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
    |source possiblyRewrittenSource rewriteQuery|
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
    source := aMethod source asSingleByteStringIfPossible.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
    source isNil ifTrue:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
        Class fileOutErrorSignal 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
            raiseRequestWith:aMethod mclass
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
            errorString:' - no source for method: ', (aMethod displayString)
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
    ] ifFalse:[
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
        "/ hook to allow for just-in-time rewriting of a method's sourceCode while filing out
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
        "/ used when saving version_XXX methods in a non-XXX sourceCodeManager
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
        "/ (i.e. to rewrite all non-CVS version methods while saving into a CVS repository)
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
        "/ this is required because we cannot save an SVN version method (dollar-ID-...-dollar) into a
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
        "/ CVS repository without loosing the original string with the next checkout, because it also gets  
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
        "/ expanded by CVS. The same is true vice-versa for CVS-Ids, which get clobbered by SVN.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
        "/ also used, when generating sourcecode for another Smalltalk system (VSE fileout)
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
        rewriteQuery := AbstractSourceFileWriter methodSourceRewriteQuery new.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
        rewriteQuery method:aMethod source:source.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
        possiblyRewrittenSource := (rewriteQuery query) ? source.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
        aStream nextPutAll: '!!MethodDefinition timeStamp:'; nextPutAll: timestamp storeString; 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
                nextPutAll: ' author: ';    nextPutAll: 'Unknown' storeString;
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
                nextPutAll: ' className: '; nextPutAll: aMethod mclass name storeString; 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
                nextPutAll: ' selector: ';  nextPutAll: aMethod selector storeString; 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
                nextPutAll: ' category: ';  nextPutAll: aMethod category storeString; 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
                nextPutAll: '!!'.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
        aStream cr.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
        aStream nextChunkPut:possiblyRewrittenSource.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
        aStream cr.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
    ].
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
    "Created: / 14-04-2015 / 12:41:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
    "Modified: / 14-04-2015 / 14:48:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
!
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
fileOutMethods: methods on: stream
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
    methods do:[:method| 
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
        self fileOutMethod: method on: stream.
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
    ]
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
    "Created: / 14-04-2015 / 12:41:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4162
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   240
!
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   241
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   242
generateHeaderWithCopyrightOn:outStream
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   243
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   244
    "/ No copyrights in Bee sources
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   245
e96794cd9edd Few improvements for Bee Smalltalk exporter
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3850
diff changeset
   246
    "Created: / 07-09-2016 / 15:37:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3850
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
! !
461c0b054a4f Added Bee source writer (both for inidividual classes and for project sources)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248