public final class LineageRef extends Object
LineageEdge. Either references an output column
of a StatementGraph (by index + name) or a column of a base
table (by qualified name + column name). The discriminator is
getKind().
An optional StructuredColumnPath carries a typed path under
the root column (e.g. nodes[*].key) for endpoints produced by
structured-dataflow adapters. Existing factories leave it null.
An optional SourceSpan (US-021a) anchors the endpoint back to
the source text it was derived from. Existing factories leave it null;
builders attach it via withSpan(SourceSpan).
| Modifier and Type | Class and Description |
|---|---|
static class |
LineageRef.Kind |
| Modifier and Type | Method and Description |
|---|---|
String |
getColumnName() |
LineageRef.Kind |
getKind() |
String |
getOutputName() |
String |
getQualifiedName() |
SourceSpan |
getSpan()
Optional source span of this endpoint (US-021a).
|
int |
getStatementIndex() |
StructuredColumnPath |
getStructuredPath() |
static LineageRef |
statementOutput(int statementIndex,
String outputName) |
static LineageRef |
statementOutput(int statementIndex,
String outputName,
StructuredColumnPath structuredPath) |
static LineageRef |
tableColumn(String qualifiedName,
String columnName) |
static LineageRef |
tableColumn(String qualifiedName,
String columnName,
StructuredColumnPath structuredPath) |
LineageRef |
withSpan(SourceSpan span)
Copy of this ref with the optional endpoint source span attached
(US-021a) — for a STATEMENT_OUTPUT endpoint, the projection
expression's span; for a TABLE_COLUMN endpoint, the span of the
column reference it was resolved from.
|
public static LineageRef statementOutput(int statementIndex, String outputName)
public static LineageRef statementOutput(int statementIndex, String outputName, StructuredColumnPath structuredPath)
public static LineageRef tableColumn(String qualifiedName, String columnName)
public static LineageRef tableColumn(String qualifiedName, String columnName, StructuredColumnPath structuredPath)
public LineageRef withSpan(SourceSpan span)
this when
span is null (nothing to attach), so callers can
pass possibly-null spans unconditionally.public LineageRef.Kind getKind()
public int getStatementIndex()
public String getOutputName()
public String getQualifiedName()
public String getColumnName()
public StructuredColumnPath getStructuredPath()
public SourceSpan getSpan()
null unless
a builder attached one via withSpan(SourceSpan). Null-safe:
never throws.