V - what a key names: a routine model, its definition, a package, a set of function resultspublic final class RoutineAliasRegistry<V> extends Object
RoutineAliasKeys, with the legacy index's precedence.
Entries keep insertion order, and re-putting a key replaces its value in place, as the legacy
LinkedHashMap did, so the scans below meet candidates in the same order as the legacy ones.
lookup(gudusoft.gsqlparser.dlineage.routine.RoutineAliasKey, gudusoft.gsqlparser.dlineage.routine.RoutineAliasKey) is the legacy routine lookup:
( in a level as written ([P(]; the legacy chose this branch by a
( anywhere in its text): the first entry whose name is the same and whose suffix begins with the lookup's
(any suffix, when the lookup has none), or, when exactly one of the two names is qualified, whose routine level is
the same and whose suffix is the same stored text (or neither has one)."Qualified" means more than one level. The legacy looked for a . anywhere in the text, including the
suffix's argument types and quoted names; this index asks the levels.
| Constructor and Description |
|---|
RoutineAliasRegistry() |
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
boolean |
containsKey(RoutineAliasKey key) |
V |
get(RoutineAliasKey key)
The value under exactly this key, or null.
|
V |
lookup(RoutineAliasKey key,
RoutineAliasKey enclosingPackage)
The legacy routine lookup,
enclosingPackage being the current package's name, or null. |
V |
lookupName(RoutineAliasKey key)
The legacy function-result lookup: the exact name, else the first entry whose routine level is the same when
exactly one of the two names is qualified.
|
void |
put(RoutineAliasKey key,
V value) |
int |
size() |
Collection<V> |
values() |
public RoutineAliasRegistry()
public void put(RoutineAliasKey key, V value)
public V get(RoutineAliasKey key)
public boolean containsKey(RoutineAliasKey key)
public V lookup(RoutineAliasKey key, RoutineAliasKey enclosingPackage)
enclosingPackage being the current package's name, or null.public V lookupName(RoutineAliasKey key)
public Collection<V> values()
public int size()
public void clear()