Uses of Class
org.ek9lang.compiler.symbols.ScopedSymbol
Packages that use ScopedSymbol
Package
Description
G - Full Symbol Resolution can now take place.
This is the main source of EK9 Symbols used within the compiler.
-
Uses of ScopedSymbol in org.ek9lang.compiler.phase3
Classes in org.ek9lang.compiler.phase3 that implement interfaces with type arguments of type ScopedSymbolModifier and TypeClassDescription(package private) final class
Used for resolving operation calls on aggregates, which can include properties that are delegates to functions.(package private) final class
Locate a possible call to an identifierReference, so some sort of call.Methods in org.ek9lang.compiler.phase3 that return ScopedSymbolModifier and TypeMethodDescriptionOperationCallOrError.apply
(EK9Parser.OperationCallContext ctx, IAggregateSymbol aggregate) ResolveIdentifierReferenceCallOrError.apply
(EK9Parser.CallContext ctx) -
Uses of ScopedSymbol in org.ek9lang.compiler.symbols
Subclasses of ScopedSymbol in org.ek9lang.compiler.symbolsModifier and TypeClassDescriptionclass
This is typically a 'class' or an interface type where it can include the definitions of new properties.class
An aggregate, but one that can have zero or more traits (like interfaces).class
Special type that is super of Aggregate and super of Function (if they don't have supers).class
Just re-uses the bulk of method symbol for when we want to make a symbol that is a call to an actual method.class
Just focuses on the ability to possible capture variables from an enclosing scope.class
EK9 switch/try control type symbol - this can effectively return a value if it is configured with returning part.class
EK9 'for' type symbol - we need a scope because we declare a new variable as the loop variable.class
Scope for functions that are part of a module.class
Represents some type of method that exists on an aggregate type scope.class
Added as a common symbol type for both Functions and Aggregates that could possibly be generic in nature and also be a parameterised type.class
Scope for callable methods (operations) that are part of a Service.class
Used when duplicate symbols are found, where we need to add a placeholder.class
Just re-uses the bulk of method symbol.class
EK9 switch statement - this can effectively return a value if it is configured with returning part.class
EK9 try statement - this can effectively return a value if it is configured with returning part.class
EK9 'while' or 'do/while' type symbol - we need a scope because we can declare new variables as part of the pre-flow semantics.Methods in org.ek9lang.compiler.symbols that return ScopedSymbolModifier and TypeMethodDescriptionprotected ScopedSymbol
ScopedSymbol.cloneIntoScopeSymbol
(ScopedSymbol newCopy) ScopedSymbol.copyScopedSymbolProperties
(ScopedSymbol newCopy) Just copies the properties over.CallSymbol.getResolvedSymbolToCall()
Methods in org.ek9lang.compiler.symbols that return types with arguments of type ScopedSymbolModifier and TypeMethodDescriptionLocalScope.findNearestDynamicBlockScopeInEnclosingScopes()
ScopedSymbol.findNearestDynamicBlockScopeInEnclosingScopes()
SymbolTable.findNearestDynamicBlockScopeInEnclosingScopes()
LocalScope.findNearestNonBlockScopeInEnclosingScopes()
Traverses up the scope tree of enclosing scopes to find the first scope type that is an aggregate.ScopedSymbol.findNearestNonBlockScopeInEnclosingScopes()
SymbolTable.findNearestNonBlockScopeInEnclosingScopes()
Methods in org.ek9lang.compiler.symbols with parameters of type ScopedSymbolModifier and TypeMethodDescriptionprotected ScopedSymbol
ScopedSymbol.cloneIntoScopeSymbol
(ScopedSymbol newCopy) ScopedSymbol.copyScopedSymbolProperties
(ScopedSymbol newCopy) Just copies the properties over.void
CallSymbol.setResolvedSymbolToCall
(ScopedSymbol symbol) Set the actual method/function that should be called.