Class VisibilityOfOperationsOrError

java.lang.Object
org.ek9lang.compiler.common.RuleSupport
org.ek9lang.compiler.phase2.VisibilityOfOperationsOrError
All Implemented Interfaces:
Consumer<IAggregateSymbol>

final class VisibilityOfOperationsOrError extends RuleSupport implements 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.