Uses of Interface
org.ek9lang.compiler.CompilationStep
Packages that use CompilationStep
Package
Description
B - For the EK9 compiler itself.
C - For the Suppliers of the 'compilation phases' as mentioned in the
org.ek9lang.compiler package.D - For the first of the compilation phases - it triggers source file Lexing and Parsing using 'ANTLR'.
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 CompilationStep in org.ek9lang.compiler
Classes in org.ek9lang.compiler that implement CompilationStepModifier and TypeClassDescriptionclassMarks the specific activity of a compiler phase. -
Uses of CompilationStep in org.ek9lang.compiler.config
Classes in org.ek9lang.compiler.config that implement interfaces with type arguments of type CompilationStepModifier and TypeClassDescriptionclassAbstract concept of a supplier of phases for a compilation.Methods in org.ek9lang.compiler.config that return types with arguments of type CompilationStep -
Uses of CompilationStep in org.ek9lang.compiler.phase0
Classes in org.ek9lang.compiler.phase0 that implement CompilationStepMethods in org.ek9lang.compiler.phase0 that return CompilationStepModifier and TypeMethodDescriptionParsing.reading()The READING step that comes before this PARSING step: each is ONE phase, so the driver records each as entered before it runs (Q11). -
Uses of CompilationStep in org.ek9lang.compiler.phase1
Classes in org.ek9lang.compiler.phase1 that implement CompilationStepModifier 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 classSINGLE THREADED. -
Uses of CompilationStep in org.ek9lang.compiler.phase10
Classes in org.ek9lang.compiler.phase10 that implement CompilationStepModifier and TypeClassDescriptionclassGenerate all type of aggregates, typically classes, components, records, etc.classSINGLE THREADED.classMULTI THREADED Generate all constants that have been defined.classSINGLE THREADED Preparation to generate code. -
Uses of CompilationStep in org.ek9lang.compiler.phase11
Classes in org.ek9lang.compiler.phase11 that implement CompilationStepModifier and TypeClassDescriptionclassSINGLE THREADED Optimise the generated code. -
Uses of CompilationStep in org.ek9lang.compiler.phase12
Classes in org.ek9lang.compiler.phase12 that implement CompilationStepModifier 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 CompilationStep in org.ek9lang.compiler.phase2
Classes in org.ek9lang.compiler.phase2 that implement CompilationStepModifier and TypeClassDescriptionfinal classSINGLE THREADED, for the same reason as SymbolDefinition: the parallel machinery was removed because definition serialises on the CompilableProgram lock.final classSINGLE THREADED - Run across sources to check for types, functions and traits for 'super loops'. -
Uses of CompilationStep in org.ek9lang.compiler.phase3
Classes in org.ek9lang.compiler.phase3 that implement CompilationStepModifier and TypeClassDescriptionfinal classMULTI THREADED Now try and check that all symbols used have a type. -
Uses of CompilationStep in org.ek9lang.compiler.phase4
Classes in org.ek9lang.compiler.phase4 that implement CompilationStepModifier and TypeClassDescriptionclassSINGLE THREADED Once full resolution has completed, additional checks need to be made. -
Uses of CompilationStep in org.ek9lang.compiler.phase5
Classes in org.ek9lang.compiler.phase5 that implement CompilationStepModifier and TypeClassDescriptionclassAt this point all templates should be present and all symbols resolved. -
Uses of CompilationStep in org.ek9lang.compiler.phase6
Classes in org.ek9lang.compiler.phase6 that implement CompilationStep -
Uses of CompilationStep in org.ek9lang.compiler.phase7
Classes in org.ek9lang.compiler.phase7 that implement CompilationStepModifier and TypeClassDescriptionfinal classMULTI THREADED All symbols resolve and so should be able to create an intermediate representation. -
Uses of CompilationStep in org.ek9lang.compiler.phase9
Classes in org.ek9lang.compiler.phase9 that implement CompilationStepModifier and TypeClassDescriptionclassMULTI THREADED over sources.classSINGLE THREADED. -
Uses of CompilationStep in org.ek9lang.compiler.symbolic
Classes in org.ek9lang.compiler.symbolic that implement CompilationStepModifier and TypeClassDescriptionclassSINGLE THREADED The Layer-2 symbolic/contract verification pass (docs/tooling/EK9_SYMBOLIC_SCANNER_IMPLEMENTATION_SPEC.md ยง4.4).