public enum BindingSkipReason extends Enum<BindingSkipReason>
TObjectName reference is intentionally excluded from
binding-diagnostic emission.
Slice S3 introduces this enum as the deterministic input the
BindingDiagnosticPostPass (S5+) uses to skip references that
resolver2 either did not resolve (synthetic clones, syntax-error blocked) or
that would be category errors to flag (definition sites, target columns,
unsupported scopes, metadata-unavailable namespaces).
The enum is exposed as public so it can be stored on
ResolutionContext (different
package) but is intentionally absent from any documented public binding API
surface — see plan §5.7 ("Public BindingDiagnostic.getSkipReason()
accessor — leaks resolver internals; rejected").
| Enum Constant and Description |
|---|
DEFINITION_SITE
Reference is a definition site (CTE column-list entry, alias clause,
VALUES alias, pivot output, CTAS target column list, etc.) — not a use
site.
|
METADATA_UNAVAILABLE
Reference resolved against a namespace whose authoritative metadata is
unavailable.
|
SYNTAX_ERROR_BLOCKED
Reference comes from a parse with a non-zero return code.
|
SYNTHETIC_STAR_CLONE
Reference is a synthetic clone produced by star-column push-down /
createTracedColumnClones. |
TARGET_COLUMN
Reference is a DML target column (e.g.
|
UNSUPPORTED_SCOPE
Reference falls inside a binding scope resolver2 cannot yet model
(e.g.
|
| Modifier and Type | Method and Description |
|---|---|
static BindingSkipReason |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static BindingSkipReason[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final BindingSkipReason SYNTHETIC_STAR_CLONE
createTracedColumnClones. The clone has a sourceTable
set but never goes through NameResolver.resolve(); the post-pass
must skip it to avoid double-reporting and false UNKNOWN_COLUMN.public static final BindingSkipReason DEFINITION_SITE
BindingReferenceClassifier; reserved here.public static final BindingSkipReason TARGET_COLUMN
INSERT (a,b) list, the
LHS of UPDATE SET, MERGE INSERT target). Targets must not emit
UNKNOWN_COLUMN. Wired by S13.public static final BindingSkipReason METADATA_UNAVAILABLE
WARNING diagnostic in
S6; non-strict mode stays silent.public static final BindingSkipReason UNSUPPORTED_SCOPE
UNSUPPORTED_BINDING_SCOPE in S8/S12.public static final BindingSkipReason SYNTAX_ERROR_BLOCKED
ResolutionContext
directly can still tell intent from gap.public static BindingSkipReason[] values()
for (BindingSkipReason c : BindingSkipReason.values()) System.out.println(c);
public static BindingSkipReason valueOf(String name)
name - the name of the enum constant to be returned.IllegalArgumentException - if this enum type has no constant with the specified nameNullPointerException - if the argument is null