Defined in: packages/core/src/transformers/TableSourceCollector.ts:36
A visitor that collects all table source names from a SQL query structure.
When selectableOnly is true (default behavior):
- Includes only table sources from FROM and JOIN clauses
- Excludes inline queries, subqueries, and CTEs
When selectableOnly is false:
- Scans all parts of the query including WITH clauses, subqueries, etc.
- Collects all table sources from the entire query
- Excludes tables that are managed by CTEs
When dedupe is true (default behavior), repeated table sources are collapsed by their qualified name; pass dedupe=false to retain duplicates.
For UNION-like queries, it scans both the left and right parts.
Implements
SqlComponentVisitor<void>
Constructors
Constructor
new TableSourceCollector(
selectableOnly,dedupe):TableSourceCollector
Defined in: packages/core/src/transformers/TableSourceCollector.ts:46
Parameters
selectableOnly
boolean = true
dedupe
boolean = true
Returns
TableSourceCollector
Methods
getTableSources()
getTableSources():
TableSource[]
Defined in: packages/core/src/transformers/TableSourceCollector.ts:116
Gets all collected table sources
Returns
collect()
collect(
query):TableSource[]
Defined in: packages/core/src/transformers/TableSourceCollector.ts:142
Parameters
query
Returns
visit()
visit(
arg):void
Defined in: packages/core/src/transformers/TableSourceCollector.ts:152
Main entry point for the visitor pattern. Implements the shallow visit pattern to distinguish between root and recursive visits.
Parameters
arg
Returns
void