Class NoteOrderingUse

java.lang.Object
org.ek9lang.compiler.support.conceptual.NoteOrderingUse

public final class NoteOrderingUse extends Object
THE note, where a resolved ordering operator (<=> < <= > >=) is used on a type that is built on a conceptual parameter without being one (DictEntry of (K, Integer)). Every route that resolves an operator goes through phase3/RequiredOperatorPresentOrError, which calls this: a comparator-less sort, <?, a range (ConceptualAccess.OrderingKind.NEEDS_ORDERING) or an operator written as a call (ConceptualAccess.OrderingKind.OPERATOR_CALL, the route that records the call). A bare T is NoteIfConceptual's. Judged where the parameters are replaced (OrderingUsesOf). Hold one.
  • Constructor Details

    • NoteOrderingUse

      public NoteOrderingUse()
  • Method Details

    • note

      public void note(IAggregateSymbol owner, MethodSymbol operator, boolean writtenAsAnOperatorCall)
      Note the ordering use, when the operator is an ordering operator.
      Parameters:
      owner - the type the operator was resolved on
      operator - the operator
      writtenAsAnOperatorCall - true when the use is an operator call the expression records (a binary operator or a case)