public class BoundProgram extends Object
Contains all scopes, symbols, and references produced by the bound IR builder.
| Constructor and Description |
|---|
BoundProgram() |
BoundProgram(List<BoundScope> scopes,
Map<String,BoundRoutineSymbol> routineIndex,
List<BoundObjectRef> allObjectRefs,
List<BoundColumnRef> allColumnRefs,
List<BoundRoutineRef> allRoutineRefs) |
| Modifier and Type | Method and Description |
|---|---|
void |
addColumnRef(BoundColumnRef ref) |
void |
addObjectRef(BoundObjectRef ref) |
void |
addRoutineRef(BoundRoutineRef ref) |
void |
addScope(BoundScope scope) |
List<BoundColumnRef> |
getAllColumnRefs() |
List<BoundObjectRef> |
getAllObjectRefs() |
List<BoundRoutineRef> |
getAllRoutineRefs() |
Map<String,BoundRoutineSymbol> |
getRoutineIndex() |
Map<String,List<BoundRoutineSymbol>> |
getRoutinesByName() |
List<BoundScope> |
getScopes() |
BoundRoutineSymbol |
lookupRoutine(String routineId)
Looks up a routine by its ID.
|
void |
registerRoutine(BoundRoutineSymbol routine) |
void |
replaceRoutineRefs(List<BoundRoutineRef> resolved)
Replaces the entire routine ref list (used after post-resolution pass).
|
String |
toString() |
public BoundProgram()
public BoundProgram(List<BoundScope> scopes, Map<String,BoundRoutineSymbol> routineIndex, List<BoundObjectRef> allObjectRefs, List<BoundColumnRef> allColumnRefs, List<BoundRoutineRef> allRoutineRefs)
public List<BoundScope> getScopes()
public Map<String,BoundRoutineSymbol> getRoutineIndex()
public Map<String,List<BoundRoutineSymbol>> getRoutinesByName()
public List<BoundObjectRef> getAllObjectRefs()
public List<BoundColumnRef> getAllColumnRefs()
public List<BoundRoutineRef> getAllRoutineRefs()
public void addScope(BoundScope scope)
public void registerRoutine(BoundRoutineSymbol routine)
public void addObjectRef(BoundObjectRef ref)
public void addColumnRef(BoundColumnRef ref)
public void addRoutineRef(BoundRoutineRef ref)
public BoundRoutineSymbol lookupRoutine(String routineId)
public void replaceRoutineRefs(List<BoundRoutineRef> resolved)