pyiceberg/transforms.py [502:516]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def pyarrow_transform(self, source: IcebergType) -> "Callable[[pa.Array], pa.Array]":
        import pyarrow as pa
        import pyarrow.compute as pc

        if isinstance(source, DateType):
            epoch = pa.scalar(datetime.EPOCH_DATE)
        elif isinstance(source, TimestampType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMP)
        elif isinstance(source, TimestamptzType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMPTZ)
        elif isinstance(source, TimestampNanoType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMP).cast(pa.timestamp("ns"))
        elif isinstance(source, TimestamptzNanoType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMPTZ).cast(pa.timestamp("ns"))
        else:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



pyiceberg/transforms.py [576:590]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def pyarrow_transform(self, source: IcebergType) -> "Callable[[pa.Array], pa.Array]":
        import pyarrow as pa
        import pyarrow.compute as pc

        if isinstance(source, DateType):
            epoch = pa.scalar(datetime.EPOCH_DATE)
        elif isinstance(source, TimestampType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMP)
        elif isinstance(source, TimestamptzType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMPTZ)
        elif isinstance(source, TimestampNanoType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMP).cast(pa.timestamp("ns"))
        elif isinstance(source, TimestamptzNanoType):
            epoch = pa.scalar(datetime.EPOCH_TIMESTAMPTZ).cast(pa.timestamp("ns"))
        else:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



