| Package | Description |
|---|---|
| gudusoft.gsqlparser.ir.bound | |
| gudusoft.gsqlparser.ir.builder.common | |
| gudusoft.gsqlparser.ir.builder.postgresql |
| Modifier and Type | Method and Description |
|---|---|
BoundRoutineSymbol |
BoundRoutineRef.getResolvedRoutine() |
BoundRoutineSymbol |
BoundProgram.lookupRoutine(String routineId)
Looks up a routine by its ID.
|
| Modifier and Type | Method and Description |
|---|---|
List<BoundRoutineSymbol> |
BoundRoutineRef.getOverloadCandidates() |
Map<String,BoundRoutineSymbol> |
BoundProgram.getRoutineIndex() |
Map<String,List<BoundRoutineSymbol>> |
BoundProgram.getRoutinesByName() |
| Modifier and Type | Method and Description |
|---|---|
void |
BoundProgram.registerRoutine(BoundRoutineSymbol routine) |
BoundRoutineRef |
BoundRoutineRef.withResolvedRoutine(BoundRoutineSymbol resolved)
Creates a copy of this ref with a resolved routine, updating binding status to EXACT.
|
BoundRoutineRef |
BoundRoutineRef.withResolvedRoutine(BoundRoutineSymbol resolved,
EBindingStatus status,
List<BoundRoutineSymbol> candidates,
Evidence newEvidence)
Creates a copy of this ref with the given binding status, resolved routine,
optional overload candidates, and optional evidence.
|
| Modifier and Type | Method and Description |
|---|---|
BoundRoutineRef |
BoundRoutineRef.withResolvedRoutine(BoundRoutineSymbol resolved,
EBindingStatus status,
List<BoundRoutineSymbol> candidates,
Evidence newEvidence)
Creates a copy of this ref with the given binding status, resolved routine,
optional overload candidates, and optional evidence.
|
| Constructor and Description |
|---|
BoundRoutineRef(String originalText,
List<String> nameParts,
EBindingStatus bindingStatus,
BoundRoutineSymbol resolvedRoutine,
List<BoundRoutineSymbol> overloadCandidates,
List<BoundArgument> arguments,
Evidence evidence,
Confidence confidence) |
| Constructor and Description |
|---|
BoundProgram(List<BoundScope> scopes,
Map<String,BoundRoutineSymbol> routineIndex,
List<BoundObjectRef> allObjectRefs,
List<BoundColumnRef> allColumnRefs,
List<BoundRoutineRef> allRoutineRefs) |
BoundRoutineRef(String originalText,
List<String> nameParts,
EBindingStatus bindingStatus,
BoundRoutineSymbol resolvedRoutine,
List<BoundRoutineSymbol> overloadCandidates,
List<BoundArgument> arguments,
Evidence evidence,
Confidence confidence) |
| Modifier and Type | Method and Description |
|---|---|
protected static BoundRoutineSymbol |
AbstractRoutineRefResolver.findBestDefaultParamMatch(Map<String,List<BoundRoutineSymbol>> nameIndex,
String upperName,
int argCount)
Finds the best default-parameter match (smallest paramCount > argCount).
|
protected static BoundRoutineSymbol |
AbstractRoutineRefResolver.tryKindVariants(Map<String,BoundRoutineSymbol> ciIndex,
String baseName,
int argCount,
String[] kindCodes)
Tries all KIND code variants for a given base name and argCount.
|
| Modifier and Type | Method and Description |
|---|---|
protected Map<String,List<BoundRoutineSymbol>> |
AbstractRoutineRefResolver.buildNameIndex(BoundProgram program)
Builds a case-insensitive name → list of symbols index.
|
protected Map<String,BoundRoutineSymbol> |
AbstractRoutineRefResolver.buildUpperCaseIndex(BoundProgram program)
Builds a case-insensitive routineId → symbol index.
|
protected static List<BoundRoutineSymbol> |
AbstractRoutineRefResolver.findByNameAndArgCount(Map<String,List<BoundRoutineSymbol>> nameIndex,
String upperName,
int argCount)
Finds candidates matching a name and exact arg count from the name index.
|
| Modifier and Type | Method and Description |
|---|---|
protected static BoundRoutineSymbol |
AbstractRoutineRefResolver.findBestDefaultParamMatch(Map<String,List<BoundRoutineSymbol>> nameIndex,
String upperName,
int argCount)
Finds the best default-parameter match (smallest paramCount > argCount).
|
protected static List<BoundRoutineSymbol> |
AbstractRoutineRefResolver.findByNameAndArgCount(Map<String,List<BoundRoutineSymbol>> nameIndex,
String upperName,
int argCount)
Finds candidates matching a name and exact arg count from the name index.
|
protected static BoundRoutineSymbol |
AbstractRoutineRefResolver.tryKindVariants(Map<String,BoundRoutineSymbol> ciIndex,
String baseName,
int argCount,
String[] kindCodes)
Tries all KIND code variants for a given base name and argCount.
|
protected abstract BoundRoutineRef |
AbstractRoutineRefResolver.tryResolve(BoundRoutineRef ref,
BoundProgram program,
Map<String,BoundRoutineSymbol> upperIndex,
Map<String,List<BoundRoutineSymbol>> nameIndex)
Attempts to resolve a single routine ref against the known routines.
|
protected abstract BoundRoutineRef |
AbstractRoutineRefResolver.tryResolve(BoundRoutineRef ref,
BoundProgram program,
Map<String,BoundRoutineSymbol> upperIndex,
Map<String,List<BoundRoutineSymbol>> nameIndex)
Attempts to resolve a single routine ref against the known routines.
|
| Modifier and Type | Method and Description |
|---|---|
protected BoundRoutineRef |
PostgresqlRoutineRefResolver.tryResolve(BoundRoutineRef ref,
BoundProgram program,
Map<String,BoundRoutineSymbol> upperIndex,
Map<String,List<BoundRoutineSymbol>> nameIndex) |
protected BoundRoutineRef |
PostgresqlRoutineRefResolver.tryResolve(BoundRoutineRef ref,
BoundProgram program,
Map<String,BoundRoutineSymbol> upperIndex,
Map<String,List<BoundRoutineSymbol>> nameIndex) |