CodeGenerator.st
author Claus Gittinger <cg@exept.de>
Fri, 01 Jul 2011 16:18:53 +0200
changeset 10020 8a61b43817e1
child 10047 5962c20bb7d8
permissions -rw-r--r--
initial checkin
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10020
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
	      All Rights Reserved
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
RBProgramNodeVisitor subclass:#CodeGenerator
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
	instanceVariableNames:'class protocol source change replacements'
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	classVariableNames:''
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	poolDictionaries:''
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	category:'Interface-Browsers'
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!CodeGenerator class methodsFor:'documentation'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
copyright
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
 COPYRIGHT (c) 2006 by eXept Software AG
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
	      All Rights Reserved
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
 This software is furnished under a license and may be used
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
 only in accordance with the terms of that license and with the
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
 be provided or otherwise made available to, or used by, any
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 other person.  No title to or ownership of the software is
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
 hereby transferred.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
! !
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
!CodeGenerator methodsFor:'accessing'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
category:aString
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
    self protocol: aString
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
    "Created: / 30-12-2008 / 17:41:44 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    "Modified: / 07-07-2009 / 18:46:20 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
change
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
   change ifNil:[self createChange].
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
   ^change
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
    "Created: / 30-12-2008 / 17:14:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
    "Modified: / 07-07-2009 / 18:45:07 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
class:aClass
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
    class := aClass
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
    "Created: / 30-12-2008 / 15:38:00 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
    "Modified: / 07-07-2009 / 18:46:34 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
protocol
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    ^ protocol
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
protocol:aString
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
    protocol := aString.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
replace: placeholder with: code
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    replacements 
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
        at: placeholder
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
        put: (code isSymbol 
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
                ifTrue:[code]
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
                ifFalse:[RBParser parseRewriteExpression: code])
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    "Created: / 07-07-2009 / 18:48:21 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
    "Modified: / 07-07-2009 / 19:58:51 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
replacementFor: placeholder
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
    ^replacements 
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
        at: placeholder
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
        ifAbsent:[self error:'No replacement for ', placeholder]
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    "Created: / 07-07-2009 / 19:13:18 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
source:aString
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
    source := aString.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    "Created: / 30-12-2008 / 17:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
! !
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
!CodeGenerator methodsFor:'compiling'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
compile
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
    ^self change apply
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
    "Created: / 07-07-2009 / 18:47:52 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
! !
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
!CodeGenerator methodsFor:'initialization'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
initialize
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
    "Invoked when a new instance is created."
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
    super initialize.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
    replacements := Dictionary new.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
    "Created: / 30-12-2008 / 15:29:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
    "Modified: / 07-07-2009 / 18:45:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
! !
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
!CodeGenerator methodsFor:'private'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
createChange
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
    | method |
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
    method := RBParser parseRewriteMethod: source.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
    method source: nil.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
    method acceptVisitor: self.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
    (change := InteractiveAddMethodChange new)
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
        class: class
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
        protocol: protocol
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
        source: method formattedCode.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
    "Created: / 07-07-2009 / 18:44:42 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
replacePlaceholdersInSelectorPartsOf:aMessageNode 
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
    aMessageNode selectorParts do:[:part | 
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
        part isPatternVariable ifTrue:[
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
            |replacement|
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
            replacement := self replacementFor:part value.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
            (replacement isSymbol or:[ replacement isVariable ]) ifFalse:[
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
                self error:'Replacement for selector parts must be a single selector'
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
            ].
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
            part value:replacement formattedCode
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
        ]
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
    ]
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
! !
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
!CodeGenerator methodsFor:'visitor-double dispatching'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
acceptMessageNode:aMessageNode 
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
    self replacePlaceholdersInSelectorPartsOf:aMessageNode.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
    super acceptMessageNode:aMessageNode.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    "Created: / 07-07-2009 / 19:23:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
acceptMethodNode: aMethodNode
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
    self replacePlaceholdersInSelectorPartsOf: aMethodNode.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
    super acceptMethodNode: aMethodNode.
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
    "Created: / 07-07-2009 / 19:09:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
acceptVariableNode: aVariableNode
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
    aVariableNode isPatternNode ifTrue:
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
        [aVariableNode replaceWith:
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
            (self replacementFor:aVariableNode name)]
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
    "Created: / 30-12-2008 / 17:13:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
    "Modified: / 07-07-2009 / 19:13:55 / Jan Vrany <vranyj1@fel.cvut.cz>"
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
! !
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
!CodeGenerator class methodsFor:'documentation'!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
version_CVS
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
    ^ '$Header: /cvs/stx/stx/libtool/CodeGenerator.st,v 1.1 2011-07-01 14:18:53 cg Exp $'
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
!
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
version_SVN
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
    ^ '§Id: CodeGenerator.st 7567 2010-04-17 10:59:53Z vranyj1 §'
8a61b43817e1 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
! !