cvut_stx_goodies_newcompiler.st
changeset 41 f3898a3b378d
parent 40 c99f058e2276
child 42 acdc3ec6d152
equal deleted inserted replaced
40:c99f058e2276 41:f3898a3b378d
     1 "{ Package: 'cvut:stx/goodies/newcompiler' }"
       
     2 
       
     3 LibraryDefinition subclass:#cvut_stx_goodies_newcompiler
       
     4 	instanceVariableNames:''
       
     5 	classVariableNames:''
       
     6 	poolDictionaries:''
       
     7 	category:'* Projects & Packages *'
       
     8 !
       
     9 
       
    10 
       
    11 !cvut_stx_goodies_newcompiler class methodsFor:'description'!
       
    12 
       
    13 preRequisites
       
    14     "list all required packages.
       
    15      This list can be maintained manually or (better) generated and
       
    16      updated by scanning the superclass hierarchies and looking for
       
    17      global variable accesses. (the browser has a menu function for that)
       
    18      Howevery, often too much is found, and you may want to explicitely
       
    19      exclude individual packages in the #excludedFromPrerequisites method."
       
    20 
       
    21     ^ #(
       
    22         #'stx:goodies/refactoryBrowser/parser'    "RBReturnNode - referenced by IRDecompiler>>addReturn:from: "
       
    23         #'stx:goodies/sunit'    "TestAsserter - superclass of IRTransformTest "
       
    24         #'stx:libbasic'    "Link - superclass of IRSend "
       
    25         #'stx:libbasic2'    "OrderedDictionary - referenced by IRBytecodeGenerator>>initialize "
       
    26         #'stx:libcomp'    "Parser - superclass of extended ByteCodeCompiler "
       
    27         #'stx:libcompat'    "Preferences - referenced by IRDecompiler>>removeClosureCreation: "
       
    28         #'stx:libtool'    "Tools::Inspector2Tab - referenced by IRFunction>>inspector2TabIRCode "
       
    29         #'stx:libwidg'    "TextView - referenced by IRFunction>>inspector2TabIRCode "
       
    30     )
       
    31 ! !
       
    32 
       
    33 !cvut_stx_goodies_newcompiler class methodsFor:'description - contents'!
       
    34 
       
    35 classNamesAndAttributes
       
    36     "lists the classes which are to be included in the project.
       
    37      Each entry in the list may be: a single class-name (symbol),
       
    38      or an array-literal consisting of class name and attributes.
       
    39      Attributes are: #autoload or #<os> where os is one of win32, unix,..."
       
    40 
       
    41     ^ #(
       
    42         "<className> or (<className> attributes...) in load order"
       
    43         IRBuilder
       
    44         (IRBuilderTest autoload)
       
    45         IRBytecodeGenerator
       
    46         IRFunction
       
    47         IRInstruction
       
    48         IRInterpreter
       
    49         IRSequence
       
    50         IRStackCount
       
    51         (IRTransformTest autoload)
       
    52         #'cvut_stx_goodies_newcompiler'
       
    53         IRAccess
       
    54         IRClosure
       
    55         IRConstant
       
    56         IRDecompiler
       
    57         IRDup
       
    58         IRJump
       
    59         IRLine
       
    60         IRMethod
       
    61         IRPop
       
    62         IRPrinter
       
    63         IRReturn
       
    64         IRSend
       
    65         IRTranslator
       
    66         IRBlockReturnTop
       
    67         IRInstVarAccess
       
    68         IRJumpIf
       
    69         IRJumpOverBlock
       
    70         IRLiteralVariableAccess
       
    71         IRTempAccess
       
    72         IRInstVarRead
       
    73         IRInstVarStore
       
    74         IRLiteralVariableRead
       
    75         IRLiteralVariableStore
       
    76         IRTempRead
       
    77         IRTempStore
       
    78     )
       
    79 !
       
    80 
       
    81 extensionMethodNames
       
    82     "lists the extension methods which are to be included in the project.
       
    83      Entries are 2-element array literals, consisting of class-name and selector."
       
    84 
       
    85     ^ #(
       
    86         ByteCodeCompiler literalArray:
       
    87         Class binding
       
    88         Class bindingOf:
       
    89     )
       
    90 ! !
       
    91 
       
    92 !cvut_stx_goodies_newcompiler class methodsFor:'description - project information'!
       
    93 
       
    94 companyName
       
    95     "Return a companyname which will appear in <lib>.rc"
       
    96 
       
    97     ^ 'CVUT FEI & Mathieu Suen'
       
    98 
       
    99     "Created: / 11-06-2008 / 16:50:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
       
   100 !
       
   101 
       
   102 description
       
   103     "Return a description string which will appear in vc.def / bc.def"
       
   104 
       
   105     ^ 'Smalltalk/X Bytecode generation library based on Squeak''s NewCompiler'
       
   106 
       
   107     "Created: / 11-06-2008 / 16:50:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
       
   108 !
       
   109 
       
   110 legalCopyright
       
   111     "Return a copyright string which will appear in <lib>.rc"
       
   112 
       
   113     ^ 'Copyright Jan Vrany & Mathieu Suen 2008'
       
   114 
       
   115     "Created: / 11-06-2008 / 16:50:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
       
   116 !
       
   117 
       
   118 productName
       
   119     "Return a product name which will appear in <lib>.rc"
       
   120 
       
   121     ^ 'NewCompiler'
       
   122 
       
   123     "Created: / 11-06-2008 / 16:50:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
       
   124 ! !
       
   125 
       
   126 !cvut_stx_goodies_newcompiler class methodsFor:'description - svn'!
       
   127 
       
   128 svnRepositoryUrlString
       
   129     "Return a SVN repository URL of myself.
       
   130      (Generated since 2011-04-08)
       
   131      Do not make the string shorter!!!!!! We have to use fixed-length keyword!!!!!!
       
   132     "        
       
   133 
       
   134     ^ '$URL::                                                                                                                        $'
       
   135 !
       
   136 
       
   137 svnRevisionNr
       
   138     "Return a SVN revision number of myself.
       
   139      This number is updated after a commit"
       
   140 
       
   141     ^ "$SVN-Revision:"'nil'"$"
       
   142 
       
   143     "Modified: / 29-10-2012 / 10:42:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   144 ! !
       
   145 
       
   146 !cvut_stx_goodies_newcompiler class methodsFor:'documentation'!
       
   147 
       
   148 version
       
   149     ^ '$Id$'
       
   150 !
       
   151 
       
   152 version_CVS
       
   153     ^ '§Header: /cvs/stx/cvut/stx/goodies/newcompiler/cvut_stx_goodies_newcompiler.st,v 1.4 2009/10/08 12:00:46 fm Exp §'
       
   154 !
       
   155 
       
   156 version_SVN
       
   157     ^ '$Id::                                                                                                                        $'
       
   158 ! !