Uses of Class
org.ek9lang.compiler.CompilableProgram
Packages that use CompilableProgram
Package
Description
B - For the EK9 compiler itself.
C - For the Suppliers of the 'compilation phases' as mentioned in the
org.ek9lang.compiler
package.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 phase1 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.
L - Template Generation.
M - Intermediate Representation Analysis and Optimization.
This is the main source of EK9 Symbols used within the compiler.
A-2 - Start here for tooling entry point specifically 'language server' implementation.
-
Uses of CompilableProgram in org.ek9lang.compiler
Classes in org.ek9lang.compiler that implement interfaces with type arguments of type CompilableProgramModifier and TypeClassDescriptionclass
De-Serializes a byte array back to compilable program.class
Loads the language basics into a Compilable Program.class
Serializes a compilable program to a byte array, so it can be saved/reused as required.Fields in org.ek9lang.compiler with type parameters of type CompilableProgramModifier and TypeFieldDescriptionprotected final SharedThreadContext
<CompilableProgram> CompilerPhase.compilableProgramAccess
Methods in org.ek9lang.compiler that return types with arguments of type CompilableProgramModifier and TypeMethodDescriptionDeSerializer.apply
(byte[] bytes) Ek9LanguageBootStrap.get()
Provide the access to a compilable program, this is preconfigured with all the ek9 built in symbols, in the appropriate modules.Method parameters in org.ek9lang.compiler with type arguments of type CompilableProgramModifier and TypeMethodDescriptionbyte[]
Serializer.apply
(SharedThreadContext<CompilableProgram> program) Constructor parameters in org.ek9lang.compiler with type arguments of type CompilableProgramModifierConstructorDescriptionprotected
CompilerPhase
(CompilationPhase phase, SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) ParsedModule
(CompilableSource source, SharedThreadContext<CompilableProgram> compilableProgram) We may hold Nodes in here - but not sure yet. -
Uses of CompilableProgram in org.ek9lang.compiler.config
Fields in org.ek9lang.compiler.config with type parameters of type CompilableProgramModifier and TypeFieldDescriptionprotected final SharedThreadContext
<CompilableProgram> PhaseSupplier.compilableProgramAccess
Constructor parameters in org.ek9lang.compiler.config with type arguments of type CompilableProgramModifierConstructorDescriptionBackEndSupplier
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, CompilationPhaseListener listener, CompilerReporter reporter) Create a new supplier of back-end compiler phases.FrontEndSupplier
(SharedThreadContext<CompilableProgram> compilableProgramAccess, CompilationPhaseListener listener, CompilerReporter reporter, boolean notBootStrapping) Create a new supplier of front end only compiler phases.FullPhaseSupplier
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, CompilationPhaseListener listener, CompilerReporter reporter) Create a new supplier of a full set of compiler phases.MiddleEndSupplier
(SharedThreadContext<CompilableProgram> compilableProgramAccess, CompilationPhaseListener listener, CompilerReporter reporter) Create a new supplier of a middle-end set of compiler phases.protected
PhaseSupplier
(SharedThreadContext<CompilableProgram> compilableProgramAccess, CompilationPhaseListener listener, CompilerReporter reporter) Create a new supplier of a full set of compiler phases. -
Uses of CompilableProgram in org.ek9lang.compiler.phase1
Constructors in org.ek9lang.compiler.phase1 with parameters of type CompilableProgramModifierConstructorDescription(package private)
ReferencesPhase1Listener
(CompilableProgram compilableProgram, ParsedModule parsedModule) Next phase after symbol definition, now check for explicit references.Constructor parameters in org.ek9lang.compiler.phase1 with type arguments of type CompilableProgramModifierConstructorDescriptionModuleDuplicateSymbolChecks
(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 CompilableProgram in org.ek9lang.compiler.phase10
Constructor parameters in org.ek9lang.compiler.phase10 with type arguments of type CompilableProgramModifierConstructorDescriptionCodeGenerationAggregates
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) CodeGenerationConstants
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) CodeGenerationPreparation
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.phase11
Constructor parameters in org.ek9lang.compiler.phase11 with type arguments of type CompilableProgramModifierConstructorDescriptionCodeOptimisation
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.phase12
Constructor parameters in org.ek9lang.compiler.phase12 with type arguments of type CompilableProgramModifierConstructorDescriptionPackaging
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) PackagingPostProcessing
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) PluginLinkage
(SharedThreadContext<CompilableProgram> compilableProgramAccess, FileHandling fileHandling, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.phase2
Constructor parameters in org.ek9lang.compiler.phase2 with type arguments of type CompilableProgramModifierConstructorDescriptionNonInferredTypeDefinition
(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 CompilableProgram in org.ek9lang.compiler.phase3
Constructor parameters in org.ek9lang.compiler.phase3 with type arguments of type CompilableProgramModifierConstructorDescriptionSymbolResolution
(boolean multiThread, SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create new instance to finally resolve all symbols, even inferred ones. -
Uses of CompilableProgram in org.ek9lang.compiler.phase4
Constructor parameters in org.ek9lang.compiler.phase4 with type arguments of type CompilableProgramModifierConstructorDescriptionPostSymbolResolutionChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create new instance to check everything is logical and cohesive. -
Uses of CompilableProgram in org.ek9lang.compiler.phase5
Constructor parameters in org.ek9lang.compiler.phase5 with type arguments of type CompilableProgramModifierConstructorDescriptionPreIntermediateRepresentationChecks
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.phase6
Constructor parameters in org.ek9lang.compiler.phase6 with type arguments of type CompilableProgramModifierConstructorDescriptionPluginResolution
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) Create new instance to resolve plugins for extern packages. -
Uses of CompilableProgram in org.ek9lang.compiler.phase7
Constructor parameters in org.ek9lang.compiler.phase7 with type arguments of type CompilableProgramModifierConstructorDescriptionIRDefinitionVisitor
(SharedThreadContext<CompilableProgram> compilableProgramAccess, CompilableSource source, IRModule irModule) IRGeneration
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) ProgramWithIR
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.phase8
Constructor parameters in org.ek9lang.compiler.phase8 with type arguments of type CompilableProgramModifierConstructorDescriptionTemplateGeneration
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.phase9
Constructor parameters in org.ek9lang.compiler.phase9 with type arguments of type CompilableProgramModifierConstructorDescriptionIRAnalysis
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) IROptimisation
(SharedThreadContext<CompilableProgram> compilableProgramAccess, Consumer<CompilationEvent> listener, CompilerReporter reporter) -
Uses of CompilableProgram in org.ek9lang.compiler.symbols
Method parameters in org.ek9lang.compiler.symbols with type arguments of type CompilableProgramModifier and TypeMethodDescriptionModuleScope.clone
(SharedThreadContext<CompilableProgram> newContext) Create a clone of this ModuleScope.Constructor parameters in org.ek9lang.compiler.symbols with type arguments of type CompilableProgramModifierConstructorDescriptionModuleScope
(String scopeName, SharedThreadContext<CompilableProgram> program) Create a new ModuleScope with a specific name and reference to the compilable program it is part of. -
Uses of CompilableProgram in org.ek9lang.lsp
Classes in org.ek9lang.lsp that implement interfaces with type arguments of type CompilableProgramModifier and TypeClassDescription(package private) final class
Uses various components to load the Ek9 builtin types into a CompilableProgram.Methods in org.ek9lang.lsp that return types with arguments of type CompilableProgram