public interface INamespace
| Modifier and Type | Method and Description |
|---|---|
default boolean |
addInferredColumn(String columnName,
double confidence,
String evidence)
Add an inferred column to this namespace.
|
Map<String,ColumnSource> |
getAllColumnSources()
Get all column sources exposed by this namespace.
|
List<TTable> |
getAllFinalTables()
Get all final physical tables this namespace depends on.
|
String |
getDisplayName()
Get a display name for this namespace (for debugging/error messages)
|
TTable |
getFinalTable()
Get the final physical table this namespace represents.
|
default Set<String> |
getInferredColumns()
Get all columns that were inferred (not from SELECT list directly).
|
Object |
getNode()
Get the associated AST node (TTable, TSelectSqlStatement, etc.)
|
default TSelectSqlStatement |
getSelectStatement()
Get the underlying SELECT statement for this namespace.
|
default TTable |
getSourceTable()
Get the TTable that this namespace is associated with.
|
default TResultColumn |
getStarColumn()
Get the star column (SELECT *) from this namespace if one exists.
|
ColumnLevel |
hasColumn(String columnName)
Check if a column exists in this namespace.
|
default boolean |
hasStarColumn()
Check if this namespace contains a star column (SELECT *).
|
boolean |
isValidated()
Check if this namespace is validated/resolved.
|
ColumnSource |
resolveColumn(String columnName)
Resolve a column name to its source.
|
default ColumnSource |
resolveColumnPath(List<String> path)
Resolve a column path (column.field.subfield...) to its source.
|
default boolean |
supportsDynamicInference()
Check if this namespace supports dynamic column inference.
|
void |
validate()
Validate/resolve this namespace.
|
String getDisplayName()
ColumnLevel hasColumn(String columnName)
columnName - Column name to checkColumnSource resolveColumn(String columnName)
columnName - Column name to resolvedefault ColumnSource resolveColumnPath(List<String> path)
This method supports deep/record field access patterns like
customer.address.city where:
path - The column path segmentsMap<String,ColumnSource> getAllColumnSources()
TTable getFinalTable()
List<TTable> getAllFinalTables()
boolean isValidated()
void validate()
Object getNode()
default TSelectSqlStatement getSelectStatement()
default boolean hasStarColumn()
default boolean addInferredColumn(String columnName, double confidence, String evidence)
columnName - the column name to addconfidence - the confidence score (0.0 to 1.0)evidence - description of why this column was inferreddefault Set<String> getInferredColumns()
default boolean supportsDynamicInference()
default TResultColumn getStarColumn()
default TTable getSourceTable()