compiler/PPCUniversalConfiguration.st
changeset 535 a8feb0f47574
parent 534 a949c4fe44df
child 536 548996aca274
equal deleted inserted replaced
534:a949c4fe44df 535:a8feb0f47574
     1 "{ Package: 'stx:goodies/petitparser/compiler' }"
       
     2 
       
     3 "{ NameSpace: Smalltalk }"
       
     4 
       
     5 PPCConfiguration subclass:#PPCUniversalConfiguration
       
     6 	instanceVariableNames:''
       
     7 	classVariableNames:''
       
     8 	poolDictionaries:''
       
     9 	category:'PetitCompiler-Core'
       
    10 !
       
    11 
       
    12 
       
    13 !PPCUniversalConfiguration methodsFor:'accessing - defaults'!
       
    14 
       
    15 defaultParserSuperclass
       
    16     ^ PPCompiledParser
       
    17 
       
    18     "Modified: / 01-09-2015 / 08:47:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
    19 ! !
       
    20 
       
    21 !PPCUniversalConfiguration methodsFor:'compiling'!
       
    22 
       
    23 invokePhases
       
    24 
       
    25     self runPass: PPCTokenDetector.
       
    26 
       
    27     context options cacheFirstFollow ifTrue:[
       
    28         self runPass: PPCCacheFirstFollowPass  
       
    29     ].  
       
    30     context options specialize ifTrue:[
       
    31         self runPass: PPCSpecializingVisitor
       
    32     ].  
       
    33 
       
    34     self runPass: PPCRecognizerComponentDetector .
       
    35 
       
    36     context options specialize ifTrue:[
       
    37         self runPass: PPCSpecializingVisitor
       
    38     ].
       
    39     context options inline ifTrue:[
       
    40         self runPass: PPCInliningVisitor     
       
    41     ].
       
    42 
       
    43     self runPass: PPCMergingVisitor.
       
    44 
       
    45     self runPass: PPCCheckingVisitor.
       
    46 
       
    47     self runPass: PPCUniversalCodeGenerator. 
       
    48 
       
    49     self generateParser.
       
    50 
       
    51     "Modified: / 04-09-2015 / 10:25:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
    52 ! !
       
    53 
       
    54 !PPCUniversalConfiguration class methodsFor:'documentation'!
       
    55 
       
    56 version
       
    57     ^ 'Path: stx/goodies/petitparser/compiler/PPCUniversalConfiguration.st, Version: 1.0, User: jv, Time: 2015-08-26T20:03:52.218+01'
       
    58 !
       
    59 
       
    60 version_HG
       
    61     ^ 'Path: stx/goodies/petitparser/compiler/PPCUniversalConfiguration.st, Version: 1.0, User: jv, Time: 2015-08-26T20:03:52.218+01'
       
    62 ! !
       
    63