compiler/PPCUniversalConfiguration.st
changeset 532 132d7898a2a1
parent 531 dc3d13c2837d
child 534 a949c4fe44df
equal deleted inserted replaced
531:dc3d13c2837d 532:132d7898a2a1
    47     "Modified: / 25-08-2015 / 00:04:08 / Jan Vrany <jan.vrany@fit."
    47     "Modified: / 25-08-2015 / 00:04:08 / Jan Vrany <jan.vrany@fit."
    48     "Modified: / 26-08-2015 / 20:01:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    48     "Modified: / 26-08-2015 / 20:01:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    49 !
    49 !
    50 
    50 
    51 generate
    51 generate
    52     | rootMethod  compiledParser |
    52     | compiledParser |
    53 
    53 
    54     context options generate ifFalse:[
    54     context options generate ifFalse:[
    55         ^ self
    55         ^ self
    56     ].
    56     ].
    57     rootMethod := (self codeGenerator)
    57     self runPass: PPCUniversalCodeGenerator.
    58             options:context options;
    58 
    59             clazz:context parserClass;
       
    60             visit:ir.
       
    61     compiledParser := self buildClass.
    59     compiledParser := self buildClass.
    62     compiledParser startSymbol:rootMethod methodName.
    60     compiledParser startSymbol:(context parserClass propertyAt:#rootMethod) methodName.
    63     compiledParser := compiledParser new.
    61     compiledParser := compiledParser new.
    64     ir := compiledParser.
    62     ir := compiledParser.
    65 
    63 
    66     "Modified: / 25-08-2015 / 00:03:46 / Jan Vrany <jan.vr"
    64     "Modified: / 25-08-2015 / 00:03:46 / Jan Vrany <jan.vr"
    67     "Modified: / 26-08-2015 / 20:00:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    65     "Modified: / 26-08-2015 / 22:50:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    68 ! !
       
    69 
       
    70 !PPCUniversalConfiguration methodsFor:'hooks'!
       
    71 
       
    72 codeGenerator
       
    73     ^ PPCUniversalCodeGenerator new options:context options
       
    74 ! !
    66 ! !
    75 
    67 
    76 !PPCUniversalConfiguration class methodsFor:'documentation'!
    68 !PPCUniversalConfiguration class methodsFor:'documentation'!
    77 
    69 
    78 version
    70 version