Uses of Class
org.ek9lang.compiler.CompilerPhase
Packages that use CompilerPhase
Package
Description
E - Initial Symbol definition by traversing the 'ANTLR' - 'AST'.
N - Code Generation.
O - Code Optimisation.
P - Packaging.
F - Resolution of Explicitly Defined Type Symbols - at this point phase3 processing should have defined
most of the explicitly defined symbols, so they should be resolvable.
G - Full Symbol Resolution can now take place.
H - Generic/Parameterised types can have their methods checked when used in specific contexts.
I - PRE Intermediate Representation generation checks.
J - Plugin Resolution.
K - Intermediate Representation Generation.
M - Intermediate Representation Analysis and Optimization.
-
Uses of CompilerPhase in org.ek9lang.compiler.phase1
Subclasses of CompilerPhase in org.ek9lang.compiler.phase1Modifier and TypeClassDescriptionfinal classGoes through each module name and checks each of the parsedModules in that module name to check there is only a single copy of that symbol in the whole module name space.final classSINGLE THREADED - because we only want one reference shorthand for an item.final classCan be MULTI THREADED for developer source, but must be single threaded for bootstrapping. -
Uses of CompilerPhase in org.ek9lang.compiler.phase10
Subclasses of CompilerPhase in org.ek9lang.compiler.phase10Modifier and TypeClassDescriptionclassMULTI THREADED Generate all type of aggregates, typically classes, components, records, etc.classMULTI THREADED Generate all constants that have been defined.classMULTI THREADED Preparation to generate code. -
Uses of CompilerPhase in org.ek9lang.compiler.phase11
Subclasses of CompilerPhase in org.ek9lang.compiler.phase11Modifier and TypeClassDescriptionclassSINGLE THREADED Optimise the generated code. -
Uses of CompilerPhase in org.ek9lang.compiler.phase12
Subclasses of CompilerPhase in org.ek9lang.compiler.phase12Modifier and TypeClassDescriptionclassSINGLE THREADED Take the final optimised generated code and package it in to some type of release vessel.classSINGLE THREADED Complete any post-processing required.classSINGLE THREADED If the developer has employed any sort of 'native' plugin, then it will have been referenced and trusted at earlier phases. -
Uses of CompilerPhase in org.ek9lang.compiler.phase2
Subclasses of CompilerPhase in org.ek9lang.compiler.phase2Modifier and TypeClassDescriptionfinal classCan be MULTI THREADED for developer source, but single threaded for bootstrapping.final classSINGLE THREADED - Run across sources to check for types, functions and traits for 'super loops'. -
Uses of CompilerPhase in org.ek9lang.compiler.phase3
Subclasses of CompilerPhase in org.ek9lang.compiler.phase3Modifier and TypeClassDescriptionfinal classMULTI THREADED Now try and check that all symbols used have a type. -
Uses of CompilerPhase in org.ek9lang.compiler.phase4
Subclasses of CompilerPhase in org.ek9lang.compiler.phase4Modifier and TypeClassDescriptionclassSINGLE THREADED Once full resolution has completed, additional checks need to be made. -
Uses of CompilerPhase in org.ek9lang.compiler.phase5
Subclasses of CompilerPhase in org.ek9lang.compiler.phase5Modifier and TypeClassDescriptionclassAt this point all templates should be present and all symbols resolved. -
Uses of CompilerPhase in org.ek9lang.compiler.phase6
Subclasses of CompilerPhase in org.ek9lang.compiler.phase6 -
Uses of CompilerPhase in org.ek9lang.compiler.phase7
Subclasses of CompilerPhase in org.ek9lang.compiler.phase7Modifier and TypeClassDescriptionfinal classMULTI THREADED All symbols resolve and so should be able to create an intermediate representation. -
Uses of CompilerPhase in org.ek9lang.compiler.phase9
Subclasses of CompilerPhase in org.ek9lang.compiler.phase9Modifier and TypeClassDescriptionclassSINGLE THREADED.classSINGLE THREADED.