Class PostPassSites
java.lang.Object
org.ek9lang.compiler.phase2.PostPassSites
What the bare-default and sameness post-passes at the end of EXPLICIT_TYPE_SYMBOL_DEFINITION act on, gathered in
ONE walk per source rather than one walk each.
Gathering first is safe: it reads only the parse tree, the symbols phase 1 recorded, fully qualified names and the EXTERN squirrel, none of which completing an operator changes (it only defines method symbols). The passes still run in the same order over the same nodes - every bare default, in walk order, then every sameness.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final recordA bare 'default operator' and the class, record, component or dynamic class that declares it. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) Map<IAggregateSymbol, IToken> The 'default' token of an aggregate's bare 'default operator' (the last one, if it has several).(package private) List<PostPassSites.DefaultOperatorSite> Every bare 'default operator', in walk order.(package private) static PostPassSitesof(List<ParsedModule> parsedModules) Gather the sites of every source, in source order.(package private) Map<IAggregateSymbol, ParsedModule> The aggregates whose sameness is completed (not built-in, not Java-backed), in walk order, with their module.
-
Constructor Details
-
PostPassSites
PostPassSites()
-
-
Method Details
-
of
Gather the sites of every source, in source order. -
defaultOperators
List<PostPassSites.DefaultOperatorSite> defaultOperators()Every bare 'default operator', in walk order. -
samenessDeclaredIn
Map<IAggregateSymbol, ParsedModule> samenessDeclaredIn()The aggregates whose sameness is completed (not built-in, not Java-backed), in walk order, with their module. -
bareDefaultTokens
Map<IAggregateSymbol, IToken> bareDefaultTokens()The 'default' token of an aggregate's bare 'default operator' (the last one, if it has several).
-