PgCustomScanContext
Namespace: Ankus
Assembly: Ankus.Runtime.dll
Describes a custom scan the executor is starting.
public readonly ref struct PgCustomScanContextThe context is valid only during Begin(PgCustomScanContext). Copy Data to keep it.
Properties
Section titled “Properties”Gets the data the chosen path carried from Data.
public ReadOnlySpan<byte> Data { get; }Value: ReadOnlySpan<byte>
Descriptor
Section titled “Descriptor”Gets the table’s columns, including dropped columns, in the order rows hold them.
public PgTupleDescriptor Descriptor { get; }Value: PgTupleDescriptor
IsExplainOnly
Section titled “IsExplainOnly”Gets whether the executor only explains the plan and will not request rows.
public bool IsExplainOnly { get; }Value: bool
RelationOid
Section titled “RelationOid”Gets the scanned table’s OID.
public uint RelationOid { get; }Value: uint
Methods
Section titled “Methods”IsColumnRead(int)
Section titled “IsColumnRead(int)”Gets whether PostgreSQL reads a column from the scan’s rows, for the query’s output or its conditions.
public bool IsColumnRead(int ordinal)Parameters:
ordinal — int
The column’s zero-based position in Descriptor.
Returns: bool
Whether the column is read. A provider can leave a column that PostgreSQL does not read unset, even when the
column is NOT NULL, and skip the work of producing it.
Exceptions:
- ArgumentOutOfRangeException:
ordinalis not a column of the table.