public class DeleteScope extends AbstractScope
node, parent, scopeType| Constructor and Description |
|---|
DeleteScope(IScope parent,
TDeleteSqlStatement stmt) |
| Modifier and Type | Method and Description |
|---|---|
TDeleteSqlStatement |
getDeleteStatement() |
FromScope |
getFromScope() |
List<INamespace> |
getVisibleNamespaces()
The namespaces a name in this scope can see: the scope's own, then those of its lookup parent, as
AbstractScope.resolve(java.util.List<java.lang.String>, gudusoft.gsqlparser.resolver2.matcher.INameMatcher, boolean, gudusoft.gsqlparser.resolver2.scope.IResolved) walks them. |
IScope |
getWhereScope() |
void |
resolve(List<String> names,
INameMatcher matcher,
boolean deep,
IResolved resolved)
Resolve a name within this DELETE scope.
|
INamespace |
resolveTable(String tableName)
Default implementation: delegate to parent
|
void |
setFromScope(FromScope fromScope) |
void |
setWhereScope(IScope whereScope) |
String |
toString() |
addAllDistinct, addChild, addOwnNamespaces, fullyQualify, getChildren, getLookupParent, getNode, getParent, getScopeType, isWithin, setLookupParentpublic DeleteScope(IScope parent, TDeleteSqlStatement stmt)
public void setFromScope(FromScope fromScope)
public FromScope getFromScope()
public void setWhereScope(IScope whereScope)
public IScope getWhereScope()
public TDeleteSqlStatement getDeleteStatement()
public INamespace resolveTable(String tableName)
AbstractScoperesolveTable in interface IScoperesolveTable in class AbstractScopetableName - Table name or aliaspublic List<INamespace> getVisibleNamespaces()
AbstractScopeAbstractScope.resolve(java.util.List<java.lang.String>, gudusoft.gsqlparser.resolver2.matcher.INameMatcher, boolean, gudusoft.gsqlparser.resolver2.scope.IResolved) walks them. A non-lateral derived table or CTE body hides its owner's FROM scope by a
lookup parent (ScopeBuilder.setLookupParent), so the structural parent is not followed here either
(Mantis 4820, Codex review).getVisibleNamespaces in interface IScopegetVisibleNamespaces in class AbstractScopepublic void resolve(List<String> names, INameMatcher matcher, boolean deep, IResolved resolved)
resolve in interface IScoperesolve in class AbstractScopenames - Name parts (e.g., ["schema", "table", "column"])matcher - Name matcher for case sensitivity rulesdeep - Whether to recursively resolve into record fieldsresolved - Callback to collect all matchespublic String toString()
toString in class AbstractScope