Uses of Record Class
org.ek9lang.compiler.common.CompilationEvent
Package
Description
B - For the EK9 compiler itself.
Common parts of processing that can be reused across various phases.
C - For the Suppliers of the 'compilation phases' as mentioned in the
org.ek9lang.compiler
package.
The directives are really aimed at helping the creation of the EK9 language, but they
maybe very useful in the early stages of adoption of ek9 (should there be any).
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'.
F - Resolution of Explicitly Defined Type Symbols at this point phase1 processing should have defined
most of the explicitly defined symbols, so they should be resolvable.
G - Full Symbol Resolution can now take place.
-
Uses of CompilationEvent in org.ek9lang.compiler
Modifier and TypeFieldDescriptionprotected final Consumer
<CompilationEvent> CompilerPhase.listener
ModifierConstructorDescriptionprotected
CompilerPhase
(CompilationPhase phase, SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.common
Modifier and TypeMethodDescriptionvoid
CompilationPhaseListener.accept
(CompilationEvent compilationEvent) Once the compiler has processed (or attempted to process) a source file it will issue this event. -
Uses of CompilationEvent in org.ek9lang.compiler.config
Modifier and TypeFieldDescriptionprotected final Consumer
<CompilationEvent> PhaseSupplier.listener
-
Uses of CompilationEvent in org.ek9lang.compiler.directives
Modifier and TypeMethodDescriptionvoid
ErrorDirectiveListener.accept
(CompilationEvent compilationEvent) void
GenusDirectiveListener.accept
(CompilationEvent compilationEvent) void
ImplementsDirectiveListener.accept
(CompilationEvent compilationEvent) void
NotResolvedDirectiveListener.accept
(CompilationEvent compilationEvent) void
ResolvedDirectiveListener.accept
(CompilationEvent compilationEvent) protected void
NotResolvedDirectiveListener.noSymbolMatch
(CompilationEvent compilationEvent, ResolutionDirective directive) protected abstract void
ResolutionDirectiveListener.noSymbolMatch
(CompilationEvent compilationEvent, ResolutionDirective directive) protected void
ResolvedDirectiveListener.noSymbolMatch
(CompilationEvent compilationEvent, ResolutionDirective directive) (package private) void
ResolutionDirectiveListener.processDirectives
(CompilationEvent compilationEvent, List<Directive> directives) Process each of the directives and check for resolution or otherwise and call the symbolMatch or noSymbolMatch methods.protected void
GenusDirectiveListener.symbolMatch
(CompilationEvent compilationEvent, ResolutionDirective resolutionDirective, ISymbol symbol) protected void
ImplementsDirectiveListener.symbolMatch
(CompilationEvent compilationEvent, ResolutionDirective resolutionDirective, ISymbol symbol) protected void
NotResolvedDirectiveListener.symbolMatch
(CompilationEvent compilationEvent, ResolutionDirective directive, ISymbol symbol) protected abstract void
ResolutionDirectiveListener.symbolMatch
(CompilationEvent compilationEvent, ResolutionDirective directive, ISymbol symbol) protected void
ResolvedDirectiveListener.symbolMatch
(CompilationEvent compilationEvent, ResolutionDirective directive, ISymbol symbol) -
Uses of CompilationEvent in org.ek9lang.compiler.phase0
ModifierConstructorDescriptionParsing
(Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase1
ModifierConstructorDescriptionModuleDuplicateSymbolChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create a new duplicate checker for modules contained in the compilable program.ReferenceChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create a new reference checker for modules contained in the compilable program.SymbolDefinition
(boolean notBootStrapping, SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create symbol definition instance with optional multi-threading.SymbolDefinition
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create a new phase 1 symbol definition instance, defaults to multithreading enabled. -
Uses of CompilationEvent in org.ek9lang.compiler.phase10
ModifierConstructorDescriptionCodeGenerationAggregates
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) CodeGenerationConstants
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) CodeGenerationFunctions
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) CodeGenerationPreparation
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase11
ModifierConstructorDescriptionCodeOptimisation
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase12
ModifierConstructorDescriptionPackaging
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) PackagingPostProcessing
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) PluginLinkage
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase2
ModifierConstructorDescriptionNonInferredTypeDefinition
(boolean multiThread, SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create a new phase 1 second pass template type symbol resolution definition instance.TypeHierarchyChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create a new instance for checking of type hierarchies. -
Uses of CompilationEvent in org.ek9lang.compiler.phase3
ModifierConstructorDescriptionSymbolResolution
(boolean multiThread, SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create new instance to finally resolve all symbols, even inferred ones. -
Uses of CompilationEvent in org.ek9lang.compiler.phase4
ModifierConstructorDescriptionPostSymbolResolutionChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create new instance to check everything is logical and cohesive. -
Uses of CompilationEvent in org.ek9lang.compiler.phase5
ModifierConstructorDescriptionPreIntermediateRepresentationChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase6
ModifierConstructorDescriptionPluginResolution
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create new instance to resolve plugins for extern packages. -
Uses of CompilationEvent in org.ek9lang.compiler.phase7
ModifierConstructorDescriptionIRGeneration
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) ProgramWithIR
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase8
ModifierConstructorDescriptionTemplateGeneration
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilationEvent in org.ek9lang.compiler.phase9
ModifierConstructorDescriptionIRAnalysis
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) IROptimisation
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter)