equal
deleted
inserted
replaced
15 | builder | |
15 | builder | |
16 self assert: (clazz isKindOf: PPCClass). |
16 self assert: (clazz isKindOf: PPCClass). |
17 |
17 |
18 builder := PPCClassBuilder new. |
18 builder := PPCClassBuilder new. |
19 |
19 |
20 builder compiledClassName: arguments parserName. |
20 builder compiledClassName: options parserName. |
21 builder compiledSuperclass: PPCompiledParser. |
21 builder compiledSuperclass: PPCompiledParser. |
22 builder methodDictionary: clazz methodDictionary. |
22 builder methodDictionary: clazz methodDictionary. |
23 builder constants: clazz constants. |
23 builder constants: clazz constants. |
24 |
24 |
25 ^ builder compileClass. |
25 ^ builder compileClass. |
46 |
46 |
47 !PPCUniversalConfiguration methodsFor:'hooks'! |
47 !PPCUniversalConfiguration methodsFor:'hooks'! |
48 |
48 |
49 codeGenerator |
49 codeGenerator |
50 ^ PPCUniversalCodeGenerator new |
50 ^ PPCUniversalCodeGenerator new |
51 arguments: arguments |
51 options: options |
52 ! ! |
52 ! ! |
53 |
53 |
54 !PPCUniversalConfiguration methodsFor:'phases'! |
54 !PPCUniversalConfiguration methodsFor:'phases'! |
55 |
55 |
56 generate |
56 generate |
57 | rootMethod compiledParser | |
57 | rootMethod compiledParser | |
58 arguments generate ifFalse: [ ^ self ]. |
58 options generate ifFalse: [ ^ self ]. |
59 |
59 |
60 rootMethod := self codeGenerator |
60 rootMethod := self codeGenerator |
61 arguments: arguments; |
61 options: options; |
62 clazz: clazz; |
62 clazz: clazz; |
63 visit: ir. |
63 visit: ir. |
64 |
64 |
65 compiledParser := self buildClass. |
65 compiledParser := self buildClass. |
66 compiledParser startSymbol: rootMethod methodName. |
66 compiledParser startSymbol: rootMethod methodName. |