public final class ExplainNode extends SqllrObject
| Modifier and Type | Class and Description |
|---|---|
static class |
ExplainNode.Builder
Collects the members of a new
ExplainNode. |
SqllrObject.Reader<T>| Modifier and Type | Field and Description |
|---|---|
static List<String> |
MEMBERS
The members the schema defines, in schema order.
|
static SqllrObject.Reader<ExplainNode> |
READER
Reads a JSON object as a
ExplainNode. |
static List<String> |
REQUIRED
The members the schema requires.
|
| Modifier and Type | Method and Description |
|---|---|
static ExplainNode.Builder |
builder() |
static ExplainNode |
fromJson(Object json)
A
ExplainNode with the members of a JSON object, all kept. |
String |
getAlias()
The member
alias. |
String |
getCteName()
The member
cteName. |
List<Long> |
getDiagnosticRefs()
The member
diagnosticRefs. |
String |
getDisclosure()
The member
disclosure. |
Map<String,Extension> |
getExtensions()
The member
extensions. |
String |
getInputKind()
The member
inputKind. |
String |
getKey()
The member
key. |
String |
getKind()
The member
kind. |
String |
getLiteral()
The member
literal. |
Long |
getOrdinal()
The member
ordinal. |
Long |
getOwnerRef()
The member
ownerRef. |
Long |
getParameterOrdinal()
The member
parameterOrdinal. |
String |
getParameterText()
The member
parameterText. |
Long |
getParentRef()
The member
parentRef. |
String |
getPath()
The member
path. |
String |
getRecordId()
The member
recordId. |
Long |
getRef()
The member
ref. |
String |
getRole()
The member
role. |
Span |
getSpan()
The member
span. |
Long |
getStatementRef()
The member
statementRef. |
KeyedToken |
getToken()
The member
token. |
String |
getUpstreamCompleteness()
The member
upstreamCompleteness. |
ExplainNode.Builder |
toBuilder()
A builder holding every member of this object.
|
public static final SqllrObject.Reader<ExplainNode> READER
ExplainNode.public static ExplainNode fromJson(Object json)
ExplainNode with the members of a JSON object, all kept.public static ExplainNode.Builder builder()
public ExplainNode.Builder toBuilder()
public Long getRef()
ref. A document-local reference: an integer that is unique across the
whole document (one reference space for every object that carries a ref). Local references
are assigned after merging and have no meaning outside the document (Sections 6.1 and 13).
Null when absent; throws IllegalStateException when the member holds another JSON type.public String getKind()
kind. The kind of an ExplainGraph node. Registry group 'explainNodeKinds'
(Section 7.7, item 2). Null when absent; throws IllegalStateException when the member holds
another JSON type.public String getRole()
role. The role of an ExplainGraph node. Registry group 'explainNodeRoles'
(Section 7.7, item 2). Null when absent; throws IllegalStateException when the member holds
another JSON type.public Long getStatementRef()
statementRef. A document-local reference: an integer that is unique across
the whole document (one reference space for every object that carries a ref). Local
references are assigned after merging and have no meaning outside the document (Sections 6.1
and 13). Null when absent; throws IllegalStateException when the member holds another JSON
type.public Long getParentRef()
parentRef. The enclosing node: the query block in which a subquery is
nested, the result set whose CTE body this is (Section 7.7, item 1). A document-local
reference: an integer that is unique across the whole document (one reference space for every
object that carries a ref). Local references are assigned after merging and have no meaning
outside the document (Sections 6.1 and 13). Null when absent; throws IllegalStateException
when the member holds another JSON type.public Long getOwnerRef()
ownerRef. FIELD and ROW_SET nodes: the result-set node they belong to. A
document-local reference: an integer that is unique across the whole document (one reference
space for every object that carries a ref). Local references are assigned after merging and
have no meaning outside the document (Sections 6.1 and 13). Null when absent; throws
IllegalStateException when the member holds another JSON type.public String getPath()
path. The semantic path of the query block that owns the node; for a FIELD
or ROW_SET node, the path of its result set (algorithms/identity-v1.md, Section 5.7). A
semantic path. Under the path profile sqllr-path-1 it is a '/'-joined list of steps
CODE[index] (registry group pathStepCodes) that follows algorithms/path-v1.md (semantic
stage: SEMANTIC_PATH_PROFILE_VIOLATION); under another declared profile it is opaque and
comparable only within (producer, path profile). Null when absent; throws
IllegalStateException when the member holds another JSON type.public Long getOrdinal()
ordinal. For a FIELD node, the column ordinal (select-list position;
positional pairing for set operations), 0..n-1 within its result set. Otherwise the rank
among nodes of the same kind on the same path, by span start, the outer node first
(algorithms/identity-v1.md, Section 5.7). A 0-based ordinal. Null when absent; throws
IllegalStateException when the member holds another JSON type.public Span getSpan()
span. The fragment of the original SQL (Section 7.7, item 5); for a
ROW_SET node, the fragment of the query block stage it stands for. Null when absent; throws
IllegalStateException when the member holds another JSON type.public String getCteName()
cteName. Label only: the CTE name as written. Never an identity or a path
step. Null when absent; throws IllegalStateException when the member holds another JSON type.public String getAlias()
alias. Label only: the alias as written. Null when absent; throws
IllegalStateException when the member holds another JSON type.public String getInputKind()
inputKind. TERMINAL nodes: the kind of input (never FIELD_REF). The kind
of an input of a TargetFieldOccurrence. Registry group 'inputKinds' (Section 4.4). Null when
absent; throws IllegalStateException when the member holds another JSON type.public String getDisclosure()
disclosure. TERMINAL CONSTANT nodes: how the literal is carried. How the
value of a CONSTANT input is carried. Registry group 'constantValueDisclosure' (Section 4.4).
Null when absent; throws IllegalStateException when the member holds another JSON type.public String getLiteral()
literal. TERMINAL CONSTANT with disclosure PRESENT: the literal as
written, after redaction. Null when absent; throws IllegalStateException when the member
holds another JSON type.public KeyedToken getToken()
token. TERMINAL CONSTANT with disclosure HASHED. Null when absent; throws
IllegalStateException when the member holds another JSON type.public String getParameterText()
parameterText. TERMINAL PARAMETER: the parameter marker or name as written
(a bind, positional or host parameter the input does not declare); it becomes the
parameterText of the write input (algorithms/fold-v1.md, Section 7.5). Null when absent;
throws IllegalStateException when the member holds another JSON type.public Long getParameterOrdinal()
parameterOrdinal. TERMINAL PARAMETER with parameterText "?": the position
of the anonymous marker among the statement's anonymous markers, 0-based in text order; it
becomes the parameterOrdinal of the write input (algorithms/fold-v1.md, Section 7.5). A
0-based ordinal. Null when absent; throws IllegalStateException when the member holds another
JSON type.public String getUpstreamCompleteness()
upstreamCompleteness. Whether the inputs of this node are completely
known; absent means COMPLETE (algorithms/fold-v1.md, Section 7.4). Upstream completeness of
one write. Registry group 'upstreamCompleteness' (Section 4.4). Null when absent; throws
IllegalStateException when the member holds another JSON type.public List<Long> getDiagnosticRefs()
diagnosticRefs. The diagnostics that lowered upstreamCompleteness. A set
of local references. Null when absent; throws IllegalStateException when the member holds
another JSON type.public String getKey()
key. The logical node key; absent when the source unit has no unitId. An
id computed by ExplainNodeKeyV1: 'xnk1-' followed by 64 lowercase hexadecimal characters of a
SHA-256 digest (algorithms/identity-v1.md). Null when absent; throws IllegalStateException
when the member holds another JSON type.public String getRecordId()
recordId. The node record id; absent when key or the unit's
analysisContextId is absent. An id computed by ExplainNodeRecordIdV1: 'xnr1-' followed by 64
lowercase hexadecimal characters of a SHA-256 digest (algorithms/identity-v1.md). Null when
absent; throws IllegalStateException when the member holds another JSON type.public Map<String,Extension> getExtensions()
extensions. Extension data keyed by namespace. Every core object may carry
it; it never takes part in a core identity. Null when absent; throws IllegalStateException
when the member holds another JSON type.