compiler/ctu_dart_compiler.st
changeset 8 c2de4aaa2670
parent 7 cccc239c8833
child 10 5df5a2f8e4b5
equal deleted inserted replaced
7:cccc239c8833 8:c2de4aaa2670
     1 "{ Package: 'jv:dart/compiler' }"
     1 "{ Package: 'ctu:dart/compiler' }"
     2 
     2 
     3 LibraryDefinition subclass:#ctu_dart_compiler
     3 LibraryDefinition subclass:#ctu_dart_compiler
     4 	instanceVariableNames:''
     4 	instanceVariableNames:''
     5 	classVariableNames:''
     5 	classVariableNames:''
     6 	poolDictionaries:''
     6 	poolDictionaries:''
    16 
    16 
    17     ^ #(
    17     ^ #(
    18     )
    18     )
    19 !
    19 !
    20 
    20 
       
    21 mandatoryPreRequisites
       
    22     "list packages which are mandatory as a prerequisite.
       
    23      This are packages containing superclasses of my classes and classes which
       
    24      are extended by myself.
       
    25      They are mandatory, because we need these packages as a prerequisite for loading and compiling.
       
    26      This method is generated automatically,
       
    27      by searching along the inheritance chain of all of my classes."
       
    28 
       
    29     ^ #(
       
    30         #'stx:goodies/petitparser'    "PPCompositeParser - superclass of Dart::Parser"
       
    31         #'stx:libbasic'    "Error - superclass of Dart::ParserError"
       
    32     )
       
    33 !
       
    34 
    21 preRequisites
    35 preRequisites
    22     "list all required packages.
    36     "list all required packages.
    23      This list can be maintained manually or (better) generated and
    37      This list can be maintained manually or (better) generated and
    24      updated by scanning the superclass hierarchies and looking for
    38      updated by scanning the superclass hierarchies and looking for
    25      global variable accesses. (the browser has a menu function for that)
    39      global variable accesses. (the browser has a menu function for that)
    26      Howevery, often too much is found, and you may want to explicitely
    40      Howevery, often too much is found, and you may want to explicitely
    27      exclude individual packages in the #excludedFromPrerequisites method."
    41      exclude individual packages in the #excludedFromPrerequisites method."
    28 
    42 
    29     ^ #(
    43     ^ #(
    30         #'stx:libbasic'    "LibraryDefinition - superclass of jv_dart "
    44         #'stx:libbasic'    "LibraryDefinition - superclass of jv_dart "
       
    45     )
       
    46 !
       
    47 
       
    48 referencedPreRequisites
       
    49     "list packages which are a prerequisite, because they contain
       
    50      classes which are referenced by my classes.
       
    51      We do not need these packages as a prerequisite for loading or compiling.
       
    52      This method is generated automatically,
       
    53      by searching all classes (and their packages) which are referenced by my classes."
       
    54 
       
    55     ^ #(
       
    56         #'stx:libcomp'    "ParserFlags - referenced by Dart::ScannerBase>>initialize"
       
    57     )
       
    58 !
       
    59 
       
    60 subProjects
       
    61     "list packages which are known as subprojects.
       
    62      The generated makefile will enter those and make there as well.
       
    63      However: they are not forced to be loaded when a package is loaded;
       
    64      for those, redefine requiredPrerequisites."
       
    65 
       
    66     ^ #(
       
    67         #'ctu:dart/compiler/tests'
    31     )
    68     )
    32 ! !
    69 ! !
    33 
    70 
    34 !ctu_dart_compiler class methodsFor:'description - contents'!
    71 !ctu_dart_compiler class methodsFor:'description - contents'!
    35 
    72 
    39      or an array-literal consisting of class name and attributes.
    76      or an array-literal consisting of class name and attributes.
    40      Attributes are: #autoload or #<os> where os is one of win32, unix,..."
    77      Attributes are: #autoload or #<os> where os is one of win32, unix,..."
    41 
    78 
    42     ^ #(
    79     ^ #(
    43         "<className> or (<className> attributes...) in load order"
    80         "<className> or (<className> attributes...) in load order"
       
    81         #'Dart::Parser'
       
    82         #'Dart::ParserError'
       
    83         #'Dart::ScannerBase'
    44         #'ctu_dart_compiler'
    84         #'ctu_dart_compiler'
    45         #'Dart::ScannerBase'
       
    46         #'Dart::Parser'
       
    47         #'Dart::Scanner'
    85         #'Dart::Scanner'
    48         #'Dart::ScannerTests'
    86         #'Dart::ScannerError'
    49         #'Dart::ParserError'
       
    50         #'Dart::SyntaxError'
    87         #'Dart::SyntaxError'
    51         #'Dart::ScannerError'
       
    52         (#'Dart::ParserTests' autoload)
       
    53     )
    88     )
    54 !
    89 !
    55 
    90 
    56 extensionMethodNames
    91 extensionMethodNames
    57     "lists the extension methods which are to be included in the project.
    92     "list class/selector pairs of extensions.
    58      Entries are 2-element array literals, consisting of class-name and selector."
    93      A correponding method with real names must be present in my concrete subclasses"
    59 
    94 
    60     ^ #(
    95     ^ #(
    61     )
    96     )
    62 ! !
    97 ! !
    63 
    98 
   105 
   140 
   106 version_HG
   141 version_HG
   107 
   142 
   108     ^ '$Changeset: <not expanded> $'
   143     ^ '$Changeset: <not expanded> $'
   109 ! !
   144 ! !
       
   145