Package org.ek9lang.compiler.phase2
Class VisibilityOfOperationsOrError
java.lang.Object
org.ek9lang.compiler.common.RuleSupport
org.ek9lang.compiler.phase2.VisibilityOfOperationsOrError
- All Implemented Interfaces:
Consumer<IAggregateSymbol>
Does a simple check (excluding any inheritance) for visibility rules on methods/operators on
aggregates.
Also limits ability to add methods other than constructors and operators to records.
Classes are not missing, here they just support public, protected and private.
Whereas the other constructs support different variations.
Also note that there is no need to check service web methods or operators as there is now way
in the grammar to express an access modifier.
Note that class methods can be private, protected or public. But in the case of public we catch that superfluous "public" if the EK9 developer uses it in the symbol definition phase.
Note that class methods can be private, protected or public. But in the case of public we catch that superfluous "public" if the EK9 developer uses it in the symbol definition phase.
-
Field Summary
Fields inherited from class org.ek9lang.compiler.common.RuleSupport
errorListener, symbolsAndScopes
-
Constructor Summary
ConstructorDescriptionVisibilityOfOperationsOrError
(SymbolsAndScopes symbolsAndScopes, ErrorListener errorListener) Create a new operations checker an aggregates. -
Method Summary
-
Constructor Details
-
VisibilityOfOperationsOrError
VisibilityOfOperationsOrError(SymbolsAndScopes symbolsAndScopes, ErrorListener errorListener) Create a new operations checker an aggregates.
-
-
Method Details
-
accept
- Specified by:
accept
in interfaceConsumer<IAggregateSymbol>
-