Uses of Class
org.ek9lang.compiler.symbols.AggregateSymbol
Package
Description
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.
Contains critical general components used in the
Ek9Compiler
listeners.
This is the main source of EK9 Symbols used within the compiler.
-
Uses of AggregateSymbol in org.ek9lang.compiler.phase2
Modifier and TypeMethodDescriptionvoid
PopulateConstrainedTypeOrError.accept
(AggregateSymbol newType, ISymbol constrainedType) -
Uses of AggregateSymbol in org.ek9lang.compiler.phase3
Modifier and TypeMethodDescriptionvoid
AllTextBodiesPresentOrError.accept
(AggregateSymbol aggregateSymbol) void
DefaultOperatorsOrError.accept
(AggregateSymbol aggregateSymbol) void
MethodOverridesOrError.accept
(AggregateSymbol aggregateSymbol) void
NoDuplicatedPropertyNamesOrError.accept
(AggregateSymbol aggregateSymbol) void
TypeConstraintOrError.accept
(AggregateSymbol aggregateSymbol, EK9Parser.ConstrainDeclarationContext ctx) boolean
CheckConflictingMethods.test
(AggregateSymbol symbol) -
Uses of AggregateSymbol in org.ek9lang.compiler.support
Modifier and TypeMethodDescriptionAggregateFactory.createGenericT
(String name, IScope scope) Create a generic parameter of specific name.SymbolFactory.newApplication
(EK9Parser.ApplicationDeclarationContext ctx) Create a new aggregate that represents an EK9 application.SymbolFactory.newPackage
(EK9Parser.PackageBlockContext ctx) Create a new EK9 package aggregate.SymbolFactory.newProgram
(EK9Parser.MethodDeclarationContext ctx) Create a new aggregate that represents an EK9 program.SymbolFactory.newRecord
(EK9Parser.RecordDeclarationContext ctx) Create a new aggregate that represents an EK9 record.SymbolFactory.newService
(EK9Parser.ServiceDeclarationContext ctx) Create a new aggregate that represents an EK9 service.SymbolFactory.newText
(EK9Parser.TextDeclarationContext ctx, String forLanguage) Create a new aggregate that represents EK9 text construct.SymbolFactory.newType
(EK9Parser.TypeDeclarationContext ctx) Create a new aggregate that represents an EK9 type, constrained or enumeration.Modifier and TypeMethodDescriptionvoid
CheckForInvalidServiceDefinition.accept
(AggregateSymbol serviceSymbol) AggregateFactory.addConstructor
(AggregateSymbol t, Optional<ISymbol> s) Add another constructor to type t, but passing in an s as the value in the construction.AggregateFactory.addConstructor
(AggregateSymbol t, ISymbol s) Add a constructor to the type aggregate with a particular parameter.void
AggregateFactory.addEnumerationMethods
(AggregateSymbol enumerationSymbol) Adds all the appropriate methods for a type that is an 'Enumeration'.(package private) void
OperatorFactory.addEnumerationMethods
(AggregateSymbol enumerationSymbol) AggregateFactory.addPublicMethod
(AggregateSymbol aggregate, String methodName, List<ISymbol> methodParameters, Optional<ISymbol> returnType) Just add a method to an aggregate with the name and parameters and return type.void
SymbolFactory.populateEnumeration
(AggregateSymbol enumerationSymbol, List<org.antlr.v4.runtime.tree.TerminalNode> identifiers) Populates the enumeration with each of the values supplied in the identifiers. -
Uses of AggregateSymbol in org.ek9lang.compiler.symbols
Modifier and TypeClassDescriptionclass
An aggregate, but one that can have zero or more traits (like interfaces).Modifier and TypeMethodDescriptionprotected AggregateSymbol
AggregateSymbol.cloneIntoAggregateSymbol
(AggregateSymbol newCopy) Modifier and TypeMethodDescriptionprotected AggregateSymbol
AggregateSymbol.cloneIntoAggregateSymbol
(AggregateSymbol newCopy) ModifierConstructorDescriptionFunctionSymbol
(String name, IScope enclosingScope, List<AggregateSymbol> typeParameterOrArguments) A function that can be parameterised, i.e.