Interface ColumnProjection

All Known Implementing Classes:
AbstractUnresolvedColumn, AbstractUnresolvedColumn.UnresolvedColumn, AbstractUnresolvedColumn.UnresolvedWildcardColumn, FileMetadataColumn, MetadataColumn, PartitionColumn, ResolvedColumn, ResolvedColumnsArrayColumn, ResolvedDictColumn, ResolvedMapColumn, ResolvedNullColumn, ResolvedTableColumn, UnresolvedColumnsArrayColumn

public interface ColumnProjection
Core interface for a projected column. Models a column throughout the projection lifecycle. Columns evolve from unresolved to resolved at different times. Each class that derives from this interface can act as a column "node", while declaring its type so it may be processed easily at the proper type.

For example, an implicit column is processed at the file schema resolution phase, converting from unresolved to resolved. At the same time, table columns remain unresolved, waiting for the table schema to appear.

In an advanced, experimental feature, schema persistence sees some columns transition from resolved to unresolved and back again.

Having all column nodes derive from this same interface keeps things tidy.

  • Method Summary

    Modifier and Type
    Method
    Description
    The name of the column as it appears in the output row (record batch.)
  • Method Details

    • name

      String name()
      The name of the column as it appears in the output row (record batch.)
      Returns:
      the output column name