--- a/compiler/ctu_dart_compiler.st Thu Oct 30 21:22:38 2014 +0000
+++ b/compiler/ctu_dart_compiler.st Tue Nov 04 00:17:12 2014 +0000
@@ -1,4 +1,4 @@
-"{ Package: 'jv:dart/compiler' }"
+"{ Package: 'ctu:dart/compiler' }"
LibraryDefinition subclass:#ctu_dart_compiler
instanceVariableNames:''
@@ -18,6 +18,20 @@
)
!
+mandatoryPreRequisites
+ "list packages which are mandatory as a prerequisite.
+ This are packages containing superclasses of my classes and classes which
+ are extended by myself.
+ They are mandatory, because we need these packages as a prerequisite for loading and compiling.
+ This method is generated automatically,
+ by searching along the inheritance chain of all of my classes."
+
+ ^ #(
+ #'stx:goodies/petitparser' "PPCompositeParser - superclass of Dart::Parser"
+ #'stx:libbasic' "Error - superclass of Dart::ParserError"
+ )
+!
+
preRequisites
"list all required packages.
This list can be maintained manually or (better) generated and
@@ -29,6 +43,29 @@
^ #(
#'stx:libbasic' "LibraryDefinition - superclass of jv_dart "
)
+!
+
+referencedPreRequisites
+ "list packages which are a prerequisite, because they contain
+ classes which are referenced by my classes.
+ We do not need these packages as a prerequisite for loading or compiling.
+ This method is generated automatically,
+ by searching all classes (and their packages) which are referenced by my classes."
+
+ ^ #(
+ #'stx:libcomp' "ParserFlags - referenced by Dart::ScannerBase>>initialize"
+ )
+!
+
+subProjects
+ "list packages which are known as subprojects.
+ The generated makefile will enter those and make there as well.
+ However: they are not forced to be loaded when a package is loaded;
+ for those, redefine requiredPrerequisites."
+
+ ^ #(
+ #'ctu:dart/compiler/tests'
+ )
! !
!ctu_dart_compiler class methodsFor:'description - contents'!
@@ -41,21 +78,19 @@
^ #(
"<className> or (<className> attributes...) in load order"
- #'ctu_dart_compiler'
+ #'Dart::Parser'
+ #'Dart::ParserError'
#'Dart::ScannerBase'
- #'Dart::Parser'
+ #'ctu_dart_compiler'
#'Dart::Scanner'
- #'Dart::ScannerTests'
- #'Dart::ParserError'
+ #'Dart::ScannerError'
#'Dart::SyntaxError'
- #'Dart::ScannerError'
- (#'Dart::ParserTests' autoload)
)
!
extensionMethodNames
- "lists the extension methods which are to be included in the project.
- Entries are 2-element array literals, consisting of class-name and selector."
+ "list class/selector pairs of extensions.
+ A correponding method with real names must be present in my concrete subclasses"
^ #(
)
@@ -107,3 +142,4 @@
^ '$Changeset: <not expanded> $'
! !
+