public final class RoutineLookupResult extends Object
RoutineLookupResult.Status.RESOLVED only for exactly one candidate matched on every named level, with no level
one side names and the other omits. A match that needs caller context to fill an omitted level
(f against s.f, db..p against db.dbo.p) is RoutineLookupResult.Status.REQUIRES_CONTEXT,
and more than one candidate is RoutineLookupResult.Status.AMBIGUOUS: an ambiguous callee binds nothing (the
RoutineCallBinder contract).
| Modifier and Type | Class and Description |
|---|---|
static class |
RoutineLookupResult.Branch |
static class |
RoutineLookupResult.Status |
| Modifier and Type | Method and Description |
|---|---|
RoutineLookupResult.Branch |
getBranch() |
List<RoutineDeclaration> |
getCandidates() |
Object |
getLegacyWinner()
What the legacy registry answered at the same lookup, when recorded: compatibility evidence, never a winner.
|
RoutineDeclaration |
getResolved()
The one declaration found, only when
getStatus() is RESOLVED. |
RoutineLookupResult.Status |
getStatus() |
String |
toString() |
RoutineLookupResult |
withLegacyWinner(Object legacy)
This result with the routine the legacy registry answered at the same lookup (measurement only).
|
public RoutineLookupResult withLegacyWinner(Object legacy)
public Object getLegacyWinner()
public RoutineLookupResult.Status getStatus()
public RoutineLookupResult.Branch getBranch()
public List<RoutineDeclaration> getCandidates()
public RoutineDeclaration getResolved()
getStatus() is RESOLVED.