Class NearestSamenessAbove
java.lang.Object
org.ek9lang.compiler.support.sameness.NearestSamenessAbove
- All Implemented Interfaces:
BiFunction<IAggregateSymbol, ISymbol, Optional<MethodSymbol>>
public final class NearestSamenessAbove
extends Object
implements BiFunction<IAggregateSymbol, ISymbol, Optional<MethodSymbol>>
THE sameness a type would inherit through its super CLASS chain (D24 follow-up Q5, Steve 2026-10-20): the nearest
concrete
<=> comparing its owner with itself (NearestSelfComparisonAbove) - the super is ORDERED -
else the nearest such == - the super is EQUATABLE only. Empty when nothing above (but Any) declares
sameness. Read by E07238 (a type adding fields that would inherit it) and by the bare default operator,
which gives a type the same KIND of sameness as the super it builds on. Once PRE_IR_CHECKS has run, a <=>
that does not survive is passed over: NearestSurvivingSamenessAbove. Hold one and apply it with the
Any type (which never contributes).-
Constructor Details
-
NearestSamenessAbove
public NearestSamenessAbove()
-
-
Method Details
-
apply
- Specified by:
applyin interfaceBiFunction<IAggregateSymbol, ISymbol, Optional<MethodSymbol>>
-