new ArrayList<>(table.getQualifiedName()); for (String name : qualified.suffix()) { namespace = namespace.lookupChild(name); if (namespace == null) { return null;
ns = ns.lookupChild(name);
public SqlValidatorNamespace lookupChild( String name) { return namespace.lookupChild(name); }
public SqlValidatorNamespace lookupChild( String name) { return namespace.lookupChild(name); }
/** * Resolves a multi-part identifier such as "SCHEMA.EMP.EMPNO" to a * namespace. The returned namespace, never null, may represent a * schema, table, column, etc. */ public static SqlValidatorNamespace lookup( SqlValidatorScope scope, List<String> names) { assert names.size() > 0; final SqlNameMatcher nameMatcher = scope.getValidator().getCatalogReader().nameMatcher(); final SqlValidatorScope.ResolvedImpl resolved = new SqlValidatorScope.ResolvedImpl(); scope.resolve(ImmutableList.of(names.get(0)), nameMatcher, false, resolved); assert resolved.count() == 1; SqlValidatorNamespace namespace = resolved.only().namespace; for (String name : Util.skip(names)) { namespace = namespace.lookupChild(name); assert namespace != null; } return namespace; }
/** * Resolves a multi-part identifier such as "SCHEMA.EMP.EMPNO" to a * namespace. The returned namespace, never null, may represent a * schema, table, column, etc. */ public static SqlValidatorNamespace lookup( SqlValidatorScope scope, List<String> names) { assert names.size() > 0; final SqlNameMatcher nameMatcher = scope.getValidator().getCatalogReader().nameMatcher(); final SqlValidatorScope.ResolvedImpl resolved = new SqlValidatorScope.ResolvedImpl(); scope.resolve(ImmutableList.of(names.get(0)), nameMatcher, false, resolved); assert resolved.count() == 1; SqlValidatorNamespace namespace = resolved.only().namespace; for (String name : Util.skip(names)) { namespace = namespace.lookupChild(name); assert namespace != null; } return namespace; }
new ArrayList<>(table.getQualifiedName()); for (String name : qualified.suffix()) { namespace = namespace.lookupChild(name); if (namespace == null) { return null;
new ArrayList<>(table.getQualifiedName()); for (String name : qualified.suffix()) { namespace = namespace.lookupChild(name); if (namespace == null) { return null;
ns = ns.lookupChild(name);
ns = ns.lookupChild(name);
final RelDataTypeField field0 = nameMatcher.field(rowType, name); if (field0 != null) { final SqlValidatorNamespace ns2 = ns.lookupChild(field0.getName()); final Step path2 = path.plus(rowType, field0.getIndex(), field0.getName(), StructKind.FULLY_QUALIFIED); final Step path2 = path.plus(rowType, field.getIndex(), field.getName(), field.getType().getStructKind()); final SqlValidatorNamespace ns2 = ns.lookupChild(field.getName()); resolveInNamespace(ns2, nullable, names, nameMatcher, path2, resolved);
final RelDataTypeField field0 = nameMatcher.field(rowType, name); if (field0 != null) { final SqlValidatorNamespace ns2 = ns.lookupChild(field0.getName()); final Step path2 = path.plus(rowType, field0.getIndex(), field0.getName(), StructKind.FULLY_QUALIFIED); final Step path2 = path.plus(rowType, field.getIndex(), field.getName(), field.getType().getStructKind()); final SqlValidatorNamespace ns2 = ns.lookupChild(field.getName()); resolveInNamespace(ns2, nullable, names, nameMatcher, path2, resolved);