jv_cface.st
changeset 34 834ca32d06b2
parent 33 f87d54770abe
child 40 7d1e77b6115e
equal deleted inserted replaced
33:f87d54770abe 34:834ca32d06b2
     7 	category:'* Projects & Packages *'
     7 	category:'* Projects & Packages *'
     8 !
     8 !
     9 
     9 
    10 
    10 
    11 !jv_cface class methodsFor:'description'!
    11 !jv_cface class methodsFor:'description'!
       
    12 
       
    13 mandatoryPreRequisites
       
    14     "list packages which are mandatory as a prerequisite.
       
    15      This are packages containing superclasses of my classes and classes which
       
    16      are extended by myself.
       
    17      They are mandatory, because we need these packages as a prerequisite for loading and compiling.
       
    18      This method is generated automatically,
       
    19      by searching along the inheritance chain of all of my classes."
       
    20 
       
    21     ^ #(
       
    22         #'stx:goodies/smaCC'    "SmaCC::SmaCCParser - superclass of Cface::CDefinitionParser"
       
    23         #'stx:libbasic'    "LibraryDefinition - superclass of jv_cface"
       
    24     )
       
    25 !
    12 
    26 
    13 preRequisites
    27 preRequisites
    14     "list all required packages.
    28     "list all required packages.
    15      This list can be maintained manually or (better) generated and
    29      This list can be maintained manually or (better) generated and
    16      updated by scanning the superclass hierarchies and looking for
    30      updated by scanning the superclass hierarchies and looking for
    20 
    34 
    21     ^ #(
    35     ^ #(
    22         #'stx:goodies/smaCC'    "SmaCC::SmaCCScanner - superclass of Cface::CDefinitionScanner "
    36         #'stx:goodies/smaCC'    "SmaCC::SmaCCScanner - superclass of Cface::CDefinitionScanner "
    23         #'stx:libbasic'    "Object - superclass of Cface::CDerivedTypeNode "
    37         #'stx:libbasic'    "Object - superclass of Cface::CDerivedTypeNode "
    24         #'stx:libbasic3'    "Change - superclass of extended ClassChange "
    38         #'stx:libbasic3'    "Change - superclass of extended ClassChange "
       
    39     )
       
    40 !
       
    41 
       
    42 referencedPreRequisites
       
    43     "list packages which are a prerequisite, because they contain
       
    44      classes which are referenced by my classes.
       
    45      We do not need these packages as a prerequisite for loading or compiling.
       
    46      This method is generated automatically,
       
    47      by searching all classes (and their packages) which are referenced by my classes."
       
    48 
       
    49     ^ #(
       
    50         #'stx:libbasic3'    "ChangeSet - referenced by Cface::Generator>>initialize"
       
    51     )
       
    52 !
       
    53 
       
    54 subProjects
       
    55     "list packages which are known as subprojects.
       
    56      The generated makefile will enter those and make there as well.
       
    57      However: they are not forced to be loaded when a package is loaded;
       
    58      for those, redefine requiredPrerequisites."
       
    59 
       
    60     ^ #(
    25     )
    61     )
    26 ! !
    62 ! !
    27 
    63 
    28 !jv_cface class methodsFor:'description - contents'!
    64 !jv_cface class methodsFor:'description - contents'!
    29 
    65 
    47         #'Cface::CModifierNode'
    83         #'Cface::CModifierNode'
    48         #'Cface::CNoNode'
    84         #'Cface::CNoNode'
    49         #'Cface::CairoMapping'
    85         #'Cface::CairoMapping'
    50         #'Cface::GTKMapping'
    86         #'Cface::GTKMapping'
    51         #'Cface::Generator'
    87         #'Cface::Generator'
       
    88         #'Cface::Libgit2Mapping'
    52         #'Cface::SVNMapping'
    89         #'Cface::SVNMapping'
    53         #'Cface::SmalltalkX'
    90         #'Cface::SmalltalkX'
    54         #'Cface::TypeCollector'
    91         #'Cface::TypeCollector'
    55         #'Cface::TypeMapper'
    92         #'Cface::TypeMapper'
    56         #'Cface::TypeResolver'
    93         #'Cface::TypeResolver'
    80         #'Cface::CStructuredNode'
   117         #'Cface::CStructuredNode'
    81         #'Cface::CVoidNode'
   118         #'Cface::CVoidNode'
    82         #'Cface::CWCharNode'
   119         #'Cface::CWCharNode'
    83         #'Cface::CStructNode'
   120         #'Cface::CStructNode'
    84         #'Cface::CUnionNode'
   121         #'Cface::CUnionNode'
    85         #'Cface::Libgit2Mapping'
       
    86     )
   122     )
    87 !
   123 !
    88 
   124 
    89 extensionMethodNames
   125 extensionMethodNames
    90     "lists the extension methods which are to be included in the project.
   126     "list class/selector pairs of extensions.
    91      Entries are 2-element array literals, consisting of class-name and selector."
   127      A correponding method with real names must be present in my concrete subclasses"
    92 
   128 
    93     ^ #(
   129     ^ #(
    94         ClassDefinitionChange nameSpaceName:
       
    95         Stream tab4
   130         Stream tab4
    96     )
   131     )
    97 ! !
   132 ! !
    98 
   133 
    99 !jv_cface class methodsFor:'description - project information'!
   134 !jv_cface class methodsFor:'description - project information'!