You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by gi...@apache.org on 2024/06/14 21:25:51 UTC

(arrow-rs) branch asf-site updated: deploy: 9949dfe22e82b7aae6e6890a016218afc717ce8f

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new f6682930161 deploy: 9949dfe22e82b7aae6e6890a016218afc717ce8f
f6682930161 is described below

commit f6682930161c0f5bf3c1f4bdb611d818635b9744
Author: tustvold <tu...@users.noreply.github.com>
AuthorDate: Fri Jun 14 21:25:46 2024 +0000

    deploy: 9949dfe22e82b7aae6e6890a016218afc717ce8f
---
 .../arithmetic/trait.ArrowNativeTypeOp.html        | 30 +++++++++----------
 .../array/binary_array/type.BinaryArray.html       |  4 +--
 .../binary_array/type.GenericBinaryArray.html      |  4 +--
 .../array/binary_array/type.LargeBinaryArray.html  |  4 +--
 .../array/boolean_array/struct.BooleanArray.html   |  2 +-
 .../array/byte_array/struct.GenericByteArray.html  | 14 ++++-----
 .../struct.GenericByteViewArray.html               | 10 +++----
 .../byte_view_array/type.BinaryViewArray.html      |  4 +--
 .../byte_view_array/type.StringViewArray.html      |  4 +--
 .../dictionary_array/struct.DictionaryArray.html   | 10 +++----
 .../struct.TypedDictionaryArray.html               |  2 +-
 .../type.Int16DictionaryArray.html                 |  4 +--
 .../type.Int32DictionaryArray.html                 |  4 +--
 .../type.Int64DictionaryArray.html                 |  4 +--
 .../dictionary_array/type.Int8DictionaryArray.html |  4 +--
 .../type.UInt16DictionaryArray.html                |  4 +--
 .../type.UInt32DictionaryArray.html                |  4 +--
 .../type.UInt64DictionaryArray.html                |  4 +--
 .../type.UInt8DictionaryArray.html                 |  4 +--
 .../struct.FixedSizeBinaryArray.html               | 14 ++++-----
 .../struct.FixedSizeListArray.html                 | 18 ++++++------
 arrow_array/array/fn.new_empty_array.html          |  2 +-
 arrow_array/array/fn.new_null_array.html           |  2 +-
 .../array/list_array/struct.GenericListArray.html  | 24 +++++++--------
 .../array/list_array/type.LargeListArray.html      |  4 +--
 arrow_array/array/list_array/type.ListArray.html   |  4 +--
 arrow_array/array/map_array/struct.MapArray.html   | 22 +++++++-------
 arrow_array/array/null_array/struct.NullArray.html |  4 +--
 .../primitive_array/struct.PrimitiveArray.html     | 20 ++++++-------
 .../array/primitive_array/type.Date32Array.html    |  4 +--
 .../array/primitive_array/type.Date64Array.html    |  4 +--
 .../primitive_array/type.Decimal128Array.html      |  4 +--
 .../primitive_array/type.Decimal256Array.html      |  4 +--
 .../type.DurationMicrosecondArray.html             |  4 +--
 .../type.DurationMillisecondArray.html             |  4 +--
 .../type.DurationNanosecondArray.html              |  4 +--
 .../primitive_array/type.DurationSecondArray.html  |  4 +--
 .../array/primitive_array/type.Float16Array.html   |  4 +--
 .../array/primitive_array/type.Float32Array.html   |  4 +--
 .../array/primitive_array/type.Float64Array.html   |  4 +--
 .../array/primitive_array/type.Int16Array.html     |  4 +--
 .../array/primitive_array/type.Int32Array.html     |  4 +--
 .../array/primitive_array/type.Int64Array.html     |  4 +--
 .../array/primitive_array/type.Int8Array.html      |  4 +--
 .../primitive_array/type.IntervalDayTimeArray.html |  4 +--
 .../type.IntervalMonthDayNanoArray.html            |  4 +--
 .../type.IntervalYearMonthArray.html               |  4 +--
 .../type.Time32MillisecondArray.html               |  4 +--
 .../primitive_array/type.Time32SecondArray.html    |  4 +--
 .../type.Time64MicrosecondArray.html               |  4 +--
 .../type.Time64NanosecondArray.html                |  4 +--
 .../type.TimestampMicrosecondArray.html            |  4 +--
 .../type.TimestampMillisecondArray.html            |  4 +--
 .../type.TimestampNanosecondArray.html             |  4 +--
 .../primitive_array/type.TimestampSecondArray.html |  6 ++--
 .../array/primitive_array/type.UInt16Array.html    |  4 +--
 .../array/primitive_array/type.UInt32Array.html    |  4 +--
 .../array/primitive_array/type.UInt64Array.html    |  4 +--
 .../array/primitive_array/type.UInt8Array.html     |  4 +--
 arrow_array/array/run_array/struct.RunArray.html   | 10 +++----
 .../array/run_array/struct.TypedRunArray.html      |  2 +-
 .../array/run_array/type.Int16RunArray.html        |  4 +--
 .../array/run_array/type.Int32RunArray.html        |  4 +--
 .../array/run_array/type.Int64RunArray.html        |  4 +--
 .../string_array/type.GenericStringArray.html      |  6 ++--
 .../array/string_array/type.LargeStringArray.html  |  4 +--
 .../array/string_array/type.StringArray.html       |  4 +--
 arrow_array/array/struct.BooleanArray.html         |  2 +-
 arrow_array/array/struct.DictionaryArray.html      | 10 +++----
 arrow_array/array/struct.FixedSizeBinaryArray.html | 14 ++++-----
 arrow_array/array/struct.FixedSizeListArray.html   | 18 ++++++------
 arrow_array/array/struct.GenericByteArray.html     | 14 ++++-----
 arrow_array/array/struct.GenericByteViewArray.html | 10 +++----
 arrow_array/array/struct.GenericListArray.html     | 24 +++++++--------
 arrow_array/array/struct.MapArray.html             | 22 +++++++-------
 arrow_array/array/struct.NullArray.html            |  4 +--
 arrow_array/array/struct.PrimitiveArray.html       | 20 ++++++-------
 arrow_array/array/struct.RunArray.html             | 10 +++----
 arrow_array/array/struct.StructArray.html          | 28 +++++++++---------
 arrow_array/array/struct.TypedDictionaryArray.html |  2 +-
 arrow_array/array/struct.TypedRunArray.html        |  2 +-
 arrow_array/array/struct.UnionArray.html           | 14 ++++-----
 .../array/struct_array/struct.StructArray.html     | 28 +++++++++---------
 arrow_array/array/trait.Array.html                 |  6 ++--
 arrow_array/array/type.ArrayRef.html               |  2 +-
 arrow_array/array/type.BinaryArray.html            |  4 +--
 arrow_array/array/type.BinaryViewArray.html        |  4 +--
 arrow_array/array/type.Date32Array.html            |  4 +--
 arrow_array/array/type.Date64Array.html            |  4 +--
 arrow_array/array/type.Decimal128Array.html        |  4 +--
 arrow_array/array/type.Decimal256Array.html        |  4 +--
 .../array/type.DurationMicrosecondArray.html       |  4 +--
 .../array/type.DurationMillisecondArray.html       |  4 +--
 .../array/type.DurationNanosecondArray.html        |  4 +--
 arrow_array/array/type.DurationSecondArray.html    |  4 +--
 arrow_array/array/type.Float16Array.html           |  4 +--
 arrow_array/array/type.Float32Array.html           |  4 +--
 arrow_array/array/type.Float64Array.html           |  4 +--
 arrow_array/array/type.GenericBinaryArray.html     |  4 +--
 arrow_array/array/type.GenericStringArray.html     |  6 ++--
 arrow_array/array/type.Int16Array.html             |  4 +--
 arrow_array/array/type.Int16DictionaryArray.html   |  4 +--
 arrow_array/array/type.Int16RunArray.html          |  4 +--
 arrow_array/array/type.Int32Array.html             |  4 +--
 arrow_array/array/type.Int32DictionaryArray.html   |  4 +--
 arrow_array/array/type.Int32RunArray.html          |  4 +--
 arrow_array/array/type.Int64Array.html             |  4 +--
 arrow_array/array/type.Int64DictionaryArray.html   |  4 +--
 arrow_array/array/type.Int64RunArray.html          |  4 +--
 arrow_array/array/type.Int8Array.html              |  4 +--
 arrow_array/array/type.Int8DictionaryArray.html    |  4 +--
 arrow_array/array/type.IntervalDayTimeArray.html   |  4 +--
 .../array/type.IntervalMonthDayNanoArray.html      |  4 +--
 arrow_array/array/type.IntervalYearMonthArray.html |  4 +--
 arrow_array/array/type.LargeBinaryArray.html       |  4 +--
 arrow_array/array/type.LargeListArray.html         |  4 +--
 arrow_array/array/type.LargeStringArray.html       |  4 +--
 arrow_array/array/type.ListArray.html              |  4 +--
 arrow_array/array/type.StringArray.html            |  4 +--
 arrow_array/array/type.StringViewArray.html        |  4 +--
 arrow_array/array/type.Time32MillisecondArray.html |  4 +--
 arrow_array/array/type.Time32SecondArray.html      |  4 +--
 arrow_array/array/type.Time64MicrosecondArray.html |  4 +--
 arrow_array/array/type.Time64NanosecondArray.html  |  4 +--
 .../array/type.TimestampMicrosecondArray.html      |  4 +--
 .../array/type.TimestampMillisecondArray.html      |  4 +--
 .../array/type.TimestampNanosecondArray.html       |  4 +--
 arrow_array/array/type.TimestampSecondArray.html   |  6 ++--
 arrow_array/array/type.UInt16Array.html            |  4 +--
 arrow_array/array/type.UInt16DictionaryArray.html  |  4 +--
 arrow_array/array/type.UInt32Array.html            |  4 +--
 arrow_array/array/type.UInt32DictionaryArray.html  |  4 +--
 arrow_array/array/type.UInt64Array.html            |  4 +--
 arrow_array/array/type.UInt64DictionaryArray.html  |  4 +--
 arrow_array/array/type.UInt8Array.html             |  4 +--
 arrow_array/array/type.UInt8DictionaryArray.html   |  4 +--
 .../array/union_array/struct.UnionArray.html       | 14 ++++-----
 .../boolean_builder/struct.BooleanBuilder.html     |  2 +-
 .../struct.FixedSizeBinaryBuilder.html             |  2 +-
 .../struct.FixedSizeListBuilder.html               |  6 ++--
 arrow_array/builder/fn.make_builder.html           |  2 +-
 .../struct.GenericByteDictionaryBuilder.html       |  4 +--
 .../struct.GenericByteViewBuilder.html             |  2 +-
 .../struct.GenericListBuilder.html                 |  6 ++--
 arrow_array/builder/index.html                     |  2 +-
 arrow_array/builder/map_builder/index.html         |  2 +-
 .../builder/map_builder/struct.MapBuilder.html     |  8 ++---
 .../builder/map_builder/struct.MapFieldNames.html  |  8 ++---
 .../primitive_builder/struct.PrimitiveBuilder.html | 10 +++----
 .../primitive_builder/type.Date32Builder.html      |  4 +--
 .../primitive_builder/type.Date64Builder.html      |  4 +--
 .../primitive_builder/type.Decimal128Builder.html  |  4 +--
 .../primitive_builder/type.Decimal256Builder.html  |  4 +--
 .../type.DurationMicrosecondBuilder.html           |  4 +--
 .../type.DurationMillisecondBuilder.html           |  4 +--
 .../type.DurationNanosecondBuilder.html            |  4 +--
 .../type.DurationSecondBuilder.html                |  4 +--
 .../primitive_builder/type.Float16Builder.html     |  4 +--
 .../primitive_builder/type.Float32Builder.html     |  4 +--
 .../primitive_builder/type.Float64Builder.html     |  4 +--
 .../primitive_builder/type.Int16Builder.html       |  4 +--
 .../primitive_builder/type.Int32Builder.html       |  4 +--
 .../primitive_builder/type.Int64Builder.html       |  4 +--
 .../primitive_builder/type.Int8Builder.html        |  4 +--
 .../type.IntervalDayTimeBuilder.html               |  4 +--
 .../type.IntervalMonthDayNanoBuilder.html          |  4 +--
 .../type.IntervalYearMonthBuilder.html             |  4 +--
 .../type.Time32MillisecondBuilder.html             |  4 +--
 .../type.Time32SecondBuilder.html                  |  4 +--
 .../type.Time64MicrosecondBuilder.html             |  4 +--
 .../type.Time64NanosecondBuilder.html              |  4 +--
 .../type.TimestampMicrosecondBuilder.html          |  4 +--
 .../type.TimestampMillisecondBuilder.html          |  4 +--
 .../type.TimestampNanosecondBuilder.html           |  4 +--
 .../type.TimestampSecondBuilder.html               |  4 +--
 .../primitive_builder/type.UInt16Builder.html      |  4 +--
 .../primitive_builder/type.UInt32Builder.html      |  4 +--
 .../primitive_builder/type.UInt64Builder.html      |  4 +--
 .../primitive_builder/type.UInt8Builder.html       |  4 +--
 .../struct.PrimitiveDictionaryBuilder.html         |  2 +-
 arrow_array/builder/struct.BooleanBuilder.html     |  2 +-
 .../builder/struct.FixedSizeBinaryBuilder.html     |  2 +-
 .../builder/struct.FixedSizeListBuilder.html       |  6 ++--
 .../struct.GenericByteDictionaryBuilder.html       |  4 +--
 .../builder/struct.GenericByteViewBuilder.html     |  2 +-
 arrow_array/builder/struct.GenericListBuilder.html |  6 ++--
 arrow_array/builder/struct.MapBuilder.html         |  8 ++---
 arrow_array/builder/struct.MapFieldNames.html      |  8 ++---
 arrow_array/builder/struct.PrimitiveBuilder.html   | 10 +++----
 .../builder/struct.PrimitiveDictionaryBuilder.html |  2 +-
 arrow_array/builder/struct.StructBuilder.html      |  8 ++---
 arrow_array/builder/struct.UnionBuilder.html       |  6 ++--
 .../builder/struct_builder/fn.make_builder.html    |  2 +-
 .../struct_builder/struct.StructBuilder.html       |  8 ++---
 arrow_array/builder/type.Date32Builder.html        |  4 +--
 arrow_array/builder/type.Date64Builder.html        |  4 +--
 arrow_array/builder/type.Decimal128Builder.html    |  4 +--
 arrow_array/builder/type.Decimal256Builder.html    |  4 +--
 .../builder/type.DurationMicrosecondBuilder.html   |  4 +--
 .../builder/type.DurationMillisecondBuilder.html   |  4 +--
 .../builder/type.DurationNanosecondBuilder.html    |  4 +--
 .../builder/type.DurationSecondBuilder.html        |  4 +--
 arrow_array/builder/type.Float16Builder.html       |  4 +--
 arrow_array/builder/type.Float32Builder.html       |  4 +--
 arrow_array/builder/type.Float64Builder.html       |  4 +--
 arrow_array/builder/type.Int16Builder.html         |  4 +--
 arrow_array/builder/type.Int32Builder.html         |  4 +--
 arrow_array/builder/type.Int64Builder.html         |  4 +--
 arrow_array/builder/type.Int8Builder.html          |  4 +--
 .../builder/type.IntervalDayTimeBuilder.html       |  4 +--
 .../builder/type.IntervalMonthDayNanoBuilder.html  |  4 +--
 .../builder/type.IntervalYearMonthBuilder.html     |  4 +--
 arrow_array/builder/type.LargeListBuilder.html     |  4 +--
 arrow_array/builder/type.ListBuilder.html          |  4 +--
 .../builder/type.Time32MillisecondBuilder.html     |  4 +--
 arrow_array/builder/type.Time32SecondBuilder.html  |  4 +--
 .../builder/type.Time64MicrosecondBuilder.html     |  4 +--
 .../builder/type.Time64NanosecondBuilder.html      |  4 +--
 .../builder/type.TimestampMicrosecondBuilder.html  |  4 +--
 .../builder/type.TimestampMillisecondBuilder.html  |  4 +--
 .../builder/type.TimestampNanosecondBuilder.html   |  4 +--
 .../builder/type.TimestampSecondBuilder.html       |  4 +--
 arrow_array/builder/type.UInt16Builder.html        |  4 +--
 arrow_array/builder/type.UInt32Builder.html        |  4 +--
 arrow_array/builder/type.UInt64Builder.html        |  4 +--
 arrow_array/builder/type.UInt8Builder.html         |  4 +--
 .../builder/union_builder/struct.FieldData.html    |  6 ++--
 .../builder/union_builder/struct.UnionBuilder.html |  6 ++--
 arrow_array/ffi/fn.bit_width.html                  |  2 +-
 arrow_array/ffi/fn.export_array_into_raw.html      |  2 +-
 arrow_array/ffi/fn.from_ffi.html                   |  2 +-
 arrow_array/ffi/fn.from_ffi_and_data_type.html     |  4 +--
 arrow_array/ffi/fn.to_ffi.html                     |  2 +-
 arrow_array/ffi/struct.FFI_ArrowSchema.html        | 26 ++++++++---------
 arrow_array/ffi/struct.ImportedArrowArray.html     | 14 ++++-----
 arrow_array/ffi/type.Result.html                   |  6 ++--
 arrow_array/ffi_stream/fn.get_error_code.html      |  2 +-
 arrow_array/ffi_stream/fn.get_stream_schema.html   |  2 +-
 .../ffi_stream/struct.ArrowArrayStreamReader.html  | 10 +++----
 arrow_array/ffi_stream/type.Result.html            |  6 ++--
 arrow_array/index.html                             | 18 ++++++------
 arrow_array/macro.downcast_dictionary_array.html   |  2 +-
 arrow_array/macro.downcast_integer.html            |  2 +-
 arrow_array/macro.downcast_primitive.html          |  2 +-
 arrow_array/macro.downcast_primitive_array.html    |  2 +-
 arrow_array/macro.downcast_run_array.html          |  2 +-
 arrow_array/macro.downcast_run_end_index.html      |  2 +-
 arrow_array/macro.downcast_temporal.html           |  2 +-
 arrow_array/macro.downcast_temporal_array.html     |  2 +-
 arrow_array/record_batch/index.html                |  4 +--
 arrow_array/record_batch/struct.RecordBatch.html   | 34 +++++++++++-----------
 .../record_batch/struct.RecordBatchIterator.html   | 12 ++++----
 .../record_batch/trait.RecordBatchReader.html      | 14 ++++-----
 .../record_batch/trait.RecordBatchWriter.html      |  8 ++---
 arrow_array/struct.RecordBatch.html                | 34 +++++++++++-----------
 arrow_array/struct.RecordBatchIterator.html        | 12 ++++----
 arrow_array/timezone/private/struct.Tz.html        |  2 +-
 arrow_array/timezone/struct.Tz.html                |  2 +-
 arrow_array/trait.ArrowNativeTypeOp.html           | 30 +++++++++----------
 arrow_array/trait.RecordBatchReader.html           | 14 ++++-----
 arrow_array/trait.RecordBatchWriter.html           |  8 ++---
 .../fn.validate_decimal_precision_and_scale.html   |  2 +-
 arrow_array/types/index.html                       |  2 +-
 arrow_array/types/struct.BinaryViewType.html       |  2 +-
 arrow_array/types/struct.BooleanType.html          |  2 +-
 arrow_array/types/struct.Date32Type.html           |  2 +-
 arrow_array/types/struct.Date64Type.html           |  2 +-
 arrow_array/types/struct.Decimal128Type.html       |  4 +--
 arrow_array/types/struct.Decimal256Type.html       |  4 +--
 .../types/struct.DurationMicrosecondType.html      |  2 +-
 .../types/struct.DurationMillisecondType.html      |  2 +-
 .../types/struct.DurationNanosecondType.html       |  2 +-
 arrow_array/types/struct.DurationSecondType.html   |  2 +-
 arrow_array/types/struct.Float16Type.html          |  2 +-
 arrow_array/types/struct.Float32Type.html          |  2 +-
 arrow_array/types/struct.Float64Type.html          |  2 +-
 arrow_array/types/struct.GenericBinaryType.html    |  4 +--
 arrow_array/types/struct.GenericStringType.html    |  4 +--
 arrow_array/types/struct.Int16Type.html            |  2 +-
 arrow_array/types/struct.Int32Type.html            |  2 +-
 arrow_array/types/struct.Int64Type.html            |  2 +-
 arrow_array/types/struct.Int8Type.html             |  2 +-
 arrow_array/types/struct.IntervalDayTimeType.html  |  2 +-
 .../types/struct.IntervalMonthDayNanoType.html     |  2 +-
 .../types/struct.IntervalYearMonthType.html        |  2 +-
 arrow_array/types/struct.StringViewType.html       |  2 +-
 .../types/struct.Time32MillisecondType.html        |  2 +-
 arrow_array/types/struct.Time32SecondType.html     |  2 +-
 .../types/struct.Time64MicrosecondType.html        |  2 +-
 arrow_array/types/struct.Time64NanosecondType.html |  2 +-
 .../types/struct.TimestampMicrosecondType.html     |  2 +-
 .../types/struct.TimestampMillisecondType.html     |  2 +-
 .../types/struct.TimestampNanosecondType.html      |  2 +-
 arrow_array/types/struct.TimestampSecondType.html  |  2 +-
 arrow_array/types/struct.UInt16Type.html           |  2 +-
 arrow_array/types/struct.UInt32Type.html           |  2 +-
 arrow_array/types/struct.UInt64Type.html           |  2 +-
 arrow_array/types/struct.UInt8Type.html            |  2 +-
 arrow_array/types/trait.ArrowPrimitiveType.html    |  8 ++---
 arrow_array/types/trait.ArrowTimestampType.html    | 12 ++++----
 arrow_array/types/trait.ByteArrayType.html         | 10 +++----
 arrow_array/types/trait.ByteViewType.html          |  8 ++---
 arrow_array/types/trait.DecimalType.html           | 14 ++++-----
 index.html                                         |  2 +-
 .../selection/struct.RowSelection.html             |  2 +-
 .../arrow/arrow_reader/struct.RowSelection.html    |  2 +-
 parquet/arrow/async_reader/store/index.html        |  2 +-
 .../store/struct.ParquetObjectReader.html          |  4 +--
 .../async_reader/struct.ParquetObjectReader.html   |  4 +--
 .../arrow/async_reader/trait.AsyncFileReader.html  |  2 +-
 parquet/basic/enum.ColumnOrder.html                |  2 +-
 parquet/basic/enum.Compression.html                |  2 +-
 parquet/basic/enum.ConvertedType.html              |  2 +-
 parquet/basic/enum.LogicalType.html                |  2 +-
 parquet/basic/enum.Repetition.html                 |  2 +-
 parquet/data_type/struct.ByteArray.html            |  8 ++---
 parquet/data_type/struct.FixedLenByteArray.html    | 18 ++++++------
 parquet/data_type/struct.Int96.html                |  2 +-
 parquet/errors/enum.ParquetError.html              |  6 ++--
 parquet/errors/index.html                          |  2 +-
 parquet/errors/macro.arrow_err.html                |  2 +-
 parquet/errors/macro.eof_err.html                  |  2 +-
 parquet/errors/macro.general_err.html              |  2 +-
 parquet/errors/macro.nyi_err.html                  |  2 +-
 parquet/errors/type.Result.html                    |  2 +-
 .../struct.SerializedFileReader.html               |  2 +-
 parquet/format/enum.LogicalType.html               |  2 +-
 parquet/format/struct.BoundaryOrder.html           |  2 +-
 parquet/format/struct.CompressionCodec.html        |  2 +-
 parquet/format/struct.ConvertedType.html           |  2 +-
 parquet/format/struct.Encoding.html                |  2 +-
 parquet/format/struct.FieldRepetitionType.html     |  2 +-
 parquet/format/struct.PageType.html                |  2 +-
 parquet/format/struct.Type.html                    |  2 +-
 parquet/record/api/struct.Row.html                 |  4 +--
 parquet/record/struct.Row.html                     |  4 +--
 parquet/schema/types/struct.ColumnPath.html        |  2 +-
 parquet_derive_test/struct.ACompleteRecord.html    |  2 +-
 .../struct.APartiallyCompleteRecord.html           |  2 +-
 search-index.js                                    |  2 +-
 search.desc/parquet/parquet-desc-0-.js             |  2 +-
 src/parquet/arrow/async_reader/store.rs.html       | 14 ++-------
 src/parquet/errors.rs.html                         | 14 +++++++++
 trait.impl/core/convert/trait.From.js              |  4 +--
 .../core/iter/traits/iterator/trait.Iterator.js    |  2 +-
 .../array/binary_array/type.GenericBinaryArray.js  |  2 +-
 .../array/byte_array/struct.GenericByteArray.js    |  2 +-
 .../byte_view_array/struct.GenericByteViewArray.js |  2 +-
 .../dictionary_array/struct.DictionaryArray.js     |  2 +-
 .../array/list_array/struct.GenericListArray.js    |  2 +-
 .../array/primitive_array/struct.PrimitiveArray.js |  2 +-
 .../arrow_array/array/run_array/struct.RunArray.js |  2 +-
 .../array/string_array/type.GenericStringArray.js  |  2 +-
 .../struct.GenericByteDictionaryBuilder.js         |  2 +-
 .../struct.GenericByteViewBuilder.js               |  2 +-
 .../struct.GenericListBuilder.js                   |  2 +-
 .../primitive_builder/struct.PrimitiveBuilder.js   |  2 +-
 .../arrow_array/types/struct.GenericBinaryType.js  |  2 +-
 .../arrow_array/types/struct.GenericStringType.js  |  2 +-
 359 files changed, 917 insertions(+), 911 deletions(-)

diff --git a/arrow_array/arithmetic/trait.ArrowNativeTypeOp.html b/arrow_array/arithmetic/trait.ArrowNativeTypeOp.html
index 3e7075f0063..e38ada69b19 100644
--- a/arrow_array/arithmetic/trait.ArrowNativeTypeOp.html
+++ b/arrow_array/arithmetic/trait.ArrowNativeTypeOp.html
@@ -5,19 +5,19 @@
     const <a href="#associatedconstant.MAX_TOTAL_ORDER" class="constant">MAX_TOTAL_ORDER</a>: Self;
 <details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 22 methods</span></summary>
     // Required methods
-    fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+    fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.add_wrapping" class="fn">add_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.sub_wrapping" class="fn">sub_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.mul_wrapping" class="fn">mul_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.div_wrapping" class="fn">div_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.mod_wrapping" class="fn">mod_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.neg_wrapping" class="fn">neg_wrapping</a>(self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.pow_wrapping" class="fn">pow_wrapping</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; Self;
 <span class="item-spacer"></span>    fn <a href="#tymethod.is_zero" class="fn">is_zero</a>(self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.compare" class="fn">compare</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>;
@@ -49,19 +49,19 @@ which means that this value is a negative NaN.</p>
 </div></details><details class="toggle" open><summary><section id="associatedconstant.MAX_TOTAL_ORDER" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#56">source</a><h4 class="code-header">const <a href="#associatedconstant.MAX_TOTAL_ORDER" class="constant">MAX_TOTAL_ORDER</a>: Self</h4></section></summary><div class="docblock"><p>The maximum value and identity for the <code>min</code> aggregation.
 Note that the aggregation uses the total order predicate for floating point values,
 which means that this value is a positive NaN.</p>
-</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#59">source</a><h4 class="code-header">fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc. [...]
+</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#59">source</a><h4 class="code-header">fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc. [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.add_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#62">source</a><h4 class="code-header">fn <a href="#tymethod.add_wrapping" class="fn">add_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping addition operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.sub_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#65">source</a><h4 class="code-header">fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schem [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.sub_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#65">source</a><h4 class="code-header">fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.sub_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#68">source</a><h4 class="code-header">fn <a href="#tymethod.sub_wrapping" class="fn">sub_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping subtraction operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mul_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#71">source</a><h4 class="code-header">fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schem [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mul_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#71">source</a><h4 class="code-header">fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mul_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#74">source</a><h4 class="code-header">fn <a href="#tymethod.mul_wrapping" class="fn">mul_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping multiplication operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.div_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#77">source</a><h4 class="code-header">fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schem [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.div_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#77">source</a><h4 class="code-header">fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.div_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#80">source</a><h4 class="code-header">fn <a href="#tymethod.div_wrapping" class="fn">div_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping division operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mod_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#83">source</a><h4 class="code-header">fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schem [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mod_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#83">source</a><h4 class="code-header">fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mod_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#86">source</a><h4 class="code-header">fn <a href="#tymethod.mod_wrapping" class="fn">mod_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping remainder operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.neg_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#89">source</a><h4 class="code-header">fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enu [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.neg_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#89">source</a><h4 class="code-header">fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class= [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.neg_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#92">source</a><h4 class="code-header">fn <a href="#tymethod.neg_wrapping" class="fn">neg_wrapping</a>(self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping negation operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.pow_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#95">source</a><h4 class="code-header">fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.pow_checked" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#95">source</a><h4 class="code-header">fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.pow_wrapping" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#98">source</a><h4 class="code-header">fn <a href="#tymethod.pow_wrapping" class="fn">pow_wrapping</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping exponentiation operation</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.is_zero" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#101">source</a><h4 class="code-header">fn <a href="#tymethod.is_zero" class="fn">is_zero</a>(self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns true if zero else false</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.compare" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#104">source</a><h4 class="code-header">fn <a href="#tymethod.compare" class="fn">compare</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class="docblock"><p>Compare op [...]
@@ -71,4 +71,4 @@ which means that this value is a positive NaN.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_le" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#123-125">source</a><h4 class="code-header">fn <a href="#method.is_le" class="fn">is_le</a>(self, rhs: Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Less than equals operation</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_gt" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#129-131">source</a><h4 class="code-header">fn <a href="#method.is_gt" class="fn">is_gt</a>(self, rhs: Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Greater than operation</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_ge" class="method"><a class="src rightside" href="../../src/arrow_array/arithmetic.rs.html#135-137">source</a><h4 class="code-header">fn <a href="#method.is_ge" class="fn">is_ge</a>(self, rhs: Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Greater than equals operation</p>
-</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="im [...]
\ No newline at end of file
+</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="im [...]
\ No newline at end of file
diff --git a/arrow_array/array/binary_array/type.BinaryArray.html b/arrow_array/array/binary_array/type.BinaryArray.html
index f4e02ccb754..0c3fe52c910 100644
--- a/arrow_array/array/binary_array/type.BinaryArray.html
+++ b/arrow_array/array/binary_array/type.BinaryArray.html
@@ -30,8 +30,8 @@
 <span class="macro">assert!</span>(!array.is_null(<span class="number">4</span>));</code></pre></div>
 <p>See <a href="../byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct BinaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield. [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/binary_array/type.GenericBinaryArray.html b/arrow_array/array/binary_array/type.GenericBinaryArray.html
index 5928cfe9d24..17ac3bdecbb 100644
--- a/arrow_array/array/binary_array/type.GenericBinaryArray.html
+++ b/arrow_array/array/binary_array/type.GenericBinaryArray.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericBinaryArray` for storing `[u8]`"><title>GenericBinaryArray in arrow_array::array::binary_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf084 [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct GenericBinaryArray&lt;OffsetSize&gt; {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../../types/struct.GenericBinaryType.html" title="struct arrow_array::types::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt; as <a class="trait" href="../../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield. [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../../types/struc [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_vec" class="method"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#36-38">source</a><h4 class="code-header">pub fn <a href="#method.from_vec" class="fn">from_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/ [...]
 <p>See also <a href="../byte_array/struct.GenericByteArray.html#method.from_iter_values" title="associated function arrow_array::array::byte_array::GenericByteArray::from_iter_values"><code>Self::from_iter_values</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_opt_vec" class="method"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#41-43">source</a><h4 class="code-header">pub fn <a href="#method.from_opt_vec" class="fn">from_opt_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly [...]
diff --git a/arrow_array/array/binary_array/type.LargeBinaryArray.html b/arrow_array/array/binary_array/type.LargeBinaryArray.html
index a0c29d9f6b6..697ded2afca 100644
--- a/arrow_array/array/binary_array/type.LargeBinaryArray.html
+++ b/arrow_array/array/binary_array/type.LargeBinaryArray.html
@@ -29,8 +29,8 @@
 <span class="macro">assert!</span>(!array.is_null(<span class="number">4</span>));</code></pre></div>
 <p>See <a href="../byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct LargeBinaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield. [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/boolean_array/struct.BooleanArray.html b/arrow_array/array/boolean_array/struct.BooleanArray.html
index 254a17c2396..512c508ed19 100644
--- a/arrow_array/array/boolean_array/struct.BooleanArray.html
+++ b/arrow_array/array/boolean_array/struct.BooleanArray.html
@@ -72,7 +72,7 @@ each element of the provided arrays</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#259-261">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (BooleanBuffer, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></sect [...]
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-BooleanArray-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#396-401">source</a><a href="#impl-BooleanArray-1" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="struct" href="struct.BooleanArray.html" title="struct arrow_array::array::boolean_array::BooleanArray">BooleanArray</a></h3></section></summary><div cla [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-BooleanArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#264-312">source</a><a href="#impl-Array-for-BooleanArray" class="anchor">§</a><h3 class [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#269-271">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a cla [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#269-271">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a cla [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#297-299">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href=" [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/byte_array/struct.GenericByteArray.html b/arrow_array/array/byte_array/struct.GenericByteArray.html
index fa519903f33..4996bfe268b 100644
--- a/arrow_array/array/byte_array/struct.GenericByteArray.html
+++ b/arrow_array/array/byte_array/struct.GenericByteArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of variable length byte arrays"><title>GenericByteArray in arrow_array::array::byte_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.w [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -30,7 +30,7 @@ builder.append_value(<span class="string">"world"</span>);
 <span class="kw">let </span>array = builder.finish();
 <span class="kw">let </span>values: Vec&lt;<span class="kw">_</span>&gt; = array.iter().collect();
 <span class="macro">assert_eq!</span>(values, <span class="kw-2">&amp;</span>[<span class="prelude-val">Some</span>(<span class="string">"hello"</span>), <span class="prelude-val">None</span>, <span class="prelude-val">Some</span>(<span class="string">"world"</span>)]);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfiel [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../../ty [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_vec" class="method"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#36-38">source</a><h4 class="code-header">pub fn <a href="#method.from_vec" class="fn">from_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/ [...]
 <p>See also <a href="struct.GenericByteArray.html#method.from_iter_values" title="associated function arrow_array::array::byte_array::GenericByteArray::from_iter_values"><code>Self::from_iter_values</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_opt_vec" class="method"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#41-43">source</a><h4 class="code-header">pub fn <a href="#method.from_opt_vec" class="fn">from_opt_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly [...]
@@ -44,7 +44,7 @@ builder.append_value(<span class="string">"world"</span>);
 ) -&gt; impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;&gt; + 'a</h4></section></summary><div class="docblock"><p>Retur [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</code></p>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#105-415">source</a><a href="#impl-GenericByteArray%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T: <a class="trait" href="../../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt; <a class="struct" hr [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#105-415">source</a><a href="#impl-GenericByteArray%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T: <a class="trait" href="../../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt; <a class="struct" hr [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#114-120">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
     offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: Buffer,
@@ -56,7 +56,7 @@ builder.append_value(<span class="string">"world"</span>);
     offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> from the  [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>offsets.len() - 1 != nulls.len()</code></li>
@@ -97,7 +97,7 @@ allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#324-331">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize. [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_builder" class="method"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#335-414">source</a><h4 class="code-header">pub fn <a href="#method.into_builder" class="fn">into_builder</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../builder/g [...]
 offset and data buffers are not shared by others.</p>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#25-66">source</a><a href="#impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="../list_array/trait.OffsetSizeTrait.html" title="trait  [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#25-66">source</a><a href="#impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="../list_array/trait.OffsetSizeTrait.html" title="trait  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_chars" class="method"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#37-39">source</a><h4 class="code-header">pub fn <a href="#method.num_chars" class="fn">num_chars</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u [...]
 <h5 id="performance"><a class="doc-anchor" href="#performance">§</a>Performance</h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -115,10 +115,10 @@ please use the function <a href="#method.value_length"><code>value_length</code>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_binary" class="method"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#62-65">source</a><h4 class="code-header">pub fn <a href="#method.try_from_binary" class="fn">try_from_binary</a>(
     v: <a class="type" href="../binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray">GenericBinaryArray</a>&lt;OffsetSize&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="../string_array/type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericString [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="../string_array/type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray</code></a> from a <a href="../binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_arr [...]
 an error if <a href="../binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray"><code>GenericBinaryArray</code></a> contains invalid UTF-8 data</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-GenericByteArray%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#427-476">source</a><a href="#impl-Array-for-GenericByteArray%3CT%3E" class="anc [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#432-434">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class= [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#432-434">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class= [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#460-462">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="htt [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/byte_view_array/struct.GenericByteViewArray.html b/arrow_array/array/byte_view_array/struct.GenericByteViewArray.html
index 2c1935119a0..894496b1653 100644
--- a/arrow_array/array/byte_view_array/struct.GenericByteViewArray.html
+++ b/arrow_array/array/byte_view_array/struct.GenericByteViewArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Variable-size Binary View Layout: An array of variable length bytes view arrays."><title>GenericByteViewArray in arrow_array::array::byte_view_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;T&gt;,
@@ -58,7 +58,7 @@ view. In this case, the same bytes for “Fish” are used to store both strings
                                  u128 &quot;views&quot;                              │Yay│
                                                                   buffer 0 │...│
                                                                            └───┘
-</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.views" class="structfield section-header"><a href=" [...]
+</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" class="anchor field">§</a><code>views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang [...]
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -69,7 +69,7 @@ view. In this case, the same bytes for “Fish” are used to store both strings
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericByteViewArray"><code>GenericByteViewArray</co [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericByteViewArray"><code>GenericByteViewArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>views.len() != nulls.len()</code></li>
@@ -129,14 +129,14 @@ that is pointed to by the views.</p>
 <p>Note that it will copy the array regardless of whether the original array is compact.
 Use with caution as this can be an expensive operation, only use it when you are sure that the view
 array is significantly smaller than when it is originally created, e.g., after filtering or slicing.</p>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteViewArray%3CBinaryViewType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#465-479">source</a><a href="#impl-GenericByteViewArray%3CBinaryViewType%3E" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericBy [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteViewArray%3CBinaryViewType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#465-479">source</a><a href="#impl-GenericByteViewArray%3CBinaryViewType%3E" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericBy [...]
 If items not utf8 data, validate will fail and error returned.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_string_view_unchecked" class="method"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#476-478">source</a><h4 class="code-header">pub unsafe fn <a href="#method.to_string_view_unchecked" class="fn">to_string_view_unchecked</a>(self) -&gt; <a class="type" href="type.StringViewArray.html" title="type arrow_array::array::byte_view_array::StringViewArray">StringView [...]
 <h5 id="safety-2"><a class="doc-anchor" href="#safety-2">§</a>Safety</h5>
 <p>Caller is responsible for ensuring that items in array are utf8 data.</p>
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteViewArray%3CStringViewType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#504-509">source</a><a href="#impl-GenericByteViewArray%3CStringViewType%3E" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericBy [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-GenericByteViewArray%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#330-379">source</a><a href="#impl-Array-for-GenericByteViewArray%3CT%3 [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#335-337">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a c [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#335-337">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a c [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#363-365">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/byte_view_array/type.BinaryViewArray.html b/arrow_array/array/byte_view_array/type.BinaryViewArray.html
index c8bd029bc7f..ba92714a9b0 100644
--- a/arrow_array/array/byte_view_array/type.BinaryViewArray.html
+++ b/arrow_array/array/byte_view_array/type.BinaryViewArray.html
@@ -5,12 +5,12 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">0</span>), <span class="string">b"hello"</span>);
 <span class="macro">assert_eq!</span>(array.value(<span class="number">3</span>), <span class="string">b"large payload over 12 bytes"</span>);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct BinaryViewArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;<a class="struct" href="../../types/struct.BinaryViewType.html" title="struct arrow_array::types::BinaryViewType">BinaryViewType</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" c [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" class="anchor field">§</a><code>views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/prim [...]
 If items not utf8 data, validate will fail and error returned.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_string_view_unchecked" class="method"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#476-478">source</a><h4 class="code-header">pub unsafe fn <a href="#method.to_string_view_unchecked" class="fn">to_string_view_unchecked</a>(self) -&gt; <a class="type" href="type.StringViewArray.html" title="type arrow_array::array::byte_view_array::StringViewArray">StringView [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
diff --git a/arrow_array/array/byte_view_array/type.StringViewArray.html b/arrow_array/array/byte_view_array/type.StringViewArray.html
index a702e8e3e23..73338a75a82 100644
--- a/arrow_array/array/byte_view_array/type.StringViewArray.html
+++ b/arrow_array/array/byte_view_array/type.StringViewArray.html
@@ -5,10 +5,10 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">0</span>), <span class="string">"hello"</span>);
 <span class="macro">assert_eq!</span>(array.value(<span class="number">3</span>), <span class="string">"large payload over 12 bytes"</span>);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct StringViewArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;<a class="struct" href="../../types/struct.StringViewType.html" title="struct arrow_array::types::StringViewType">StringViewType</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" c [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" class="anchor field">§</a><code>views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/prim [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%26str%3E%3E-for-GenericByteViewArray%3CStringViewType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_view_array.rs.html#511-515">source</a><a href="#impl-Fro [...]
\ No newline at end of file
diff --git a/arrow_array/array/dictionary_array/struct.DictionaryArray.html b/arrow_array/array/dictionary_array/struct.DictionaryArray.html
index b20f62dd69d..63b8047115d 100644
--- a/arrow_array/array/dictionary_array/struct.DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/struct.DictionaryArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of dictionary encoded values"><title>DictionaryArray in arrow_array::array::dictionary_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;K&gt;,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
@@ -56,7 +56,7 @@ builder.append_value(<span class="string">"b"</span>);
 
 <span class="kw">let </span>values: Vec&lt;<span class="kw">_</span>&gt; = array.downcast_dict::&lt;StringArray&gt;().unwrap().into_iter().collect();
 <span class="macro">assert_eq!</span>(<span class="kw-2">&amp;</span>values, <span class="kw-2">&amp;</span>[<span class="prelude-val">Some</span>(<span class="string">"a"</span>), <span class="prelude-val">None</span>, <span class="prelude-val">Some</span>(<span class="string">"a"</span>), <span class="prelude-val">Some</span>(<span class="string">"b"</span>)]);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" c [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct a [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
@@ -70,7 +70,7 @@ array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#289-314">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;K&gt;,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Attempt to create a new DictionaryArray with a specified keys
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempt to create a new DictionaryArray with a specified keys
 (indexes into the dictionary) and values (dictionary)
 array.</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
@@ -86,7 +86,7 @@ returns the corresponding key (index into the <code>values</code>
 array). Otherwise returns <code>None</code>.</p>
 <p>Panics if <code>values</code> is not a <a href="../string_array/type.StringArray.html" title="type arrow_array::array::string_array::StringArray"><code>StringArray</code></a>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#367-369">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#372-374">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class=" [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#372-374">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; DataType</h4></section></summary><div class="docblock"><p>Returns a clone of the value type of this list.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.len" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#377-379">source</a><h4 class="code-header">pub fn <a href="#method.len" class="fn">len</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>The length of the dictionary is the length  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_empty" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#382-384">source</a><h4 class="code-header">pub fn <a href="#method.is_empty" class="fn">is_empty</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether this dictionary is empty</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_ordered" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#387-389">source</a><h4 class="code-header">pub fn <a href="#method.is_ordered" class="fn">is_ordered</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Currently exists for com [...]
@@ -163,7 +163,7 @@ or this function may panic.</p>
 <p>For each value in <a href="struct.DictionaryArray.html#method.values" title="method arrow_array::array::dictionary_array::DictionaryArray::values"><code>Self::values</code></a> the corresponding bit will be set in the
 returned mask if it is referenced by a key in this <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a></p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AnyDictionaryArray-for-DictionaryArray%3CK%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#994-1013">source</a><a href="#impl-AnyDictionaryArray-for-Dic [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#699-701">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a  [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#699-701">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a  [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#727-729">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" hre [...]
 null values of this array, if any. <a href="../trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#752-754">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;se [...]
diff --git a/arrow_array/array/dictionary_array/struct.TypedDictionaryArray.html b/arrow_array/array/dictionary_array/struct.TypedDictionaryArray.html
index be89277f2ee..a68daf1eae0 100644
--- a/arrow_array/array/dictionary_array/struct.TypedDictionaryArray.html
+++ b/arrow_array/array/dictionary_array/struct.TypedDictionaryArray.html
@@ -20,7 +20,7 @@
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-TypedDictionaryArray%3C'a,+K,+V%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#816-826">source</a><a href="#impl-TypedDictionaryArray%3C'a,+K,+V%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, K: [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#823-825">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a V</a></h4></section></summary><div class="docblock"><p>Returns the values of this [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-TypedDictionaryArray%3C'a,+K,+V%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#828-880">source</a><a href="#impl-Array-for-TypedDictionaryArr [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#833-835">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a  [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#833-835">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a  [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#861-863">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" hre [...]
 null values of this array, if any. <a href="../trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#869-871">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;se [...]
diff --git a/arrow_array/array/dictionary_array/type.Int16DictionaryArray.html b/arrow_array/array/dictionary_array/type.Int16DictionaryArray.html
index 018b7973e98..1e9d91d7b9b 100644
--- a/arrow_array/array/dictionary_array/type.Int16DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.Int16DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.Int16Type.html" title="struct arrow_array::types::Int16Type">Int16Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.Int32DictionaryArray.html b/arrow_array/array/dictionary_array/type.Int32DictionaryArray.html
index 5aafac84251..43a4fda0649 100644
--- a/arrow_array/array/dictionary_array/type.Int32DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.Int32DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.Int32Type.html" title="struct arrow_array::types::Int32Type">Int32Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.Int64DictionaryArray.html b/arrow_array/array/dictionary_array/type.Int64DictionaryArray.html
index 1fb16643289..5cc1b5eccf6 100644
--- a/arrow_array/array/dictionary_array/type.Int64DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.Int64DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.Int64Type.html" title="struct arrow_array::types::Int64Type">Int64Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.Int8DictionaryArray.html b/arrow_array/array/dictionary_array/type.Int8DictionaryArray.html
index 42b1b23591b..3b3c0f3d40a 100644
--- a/arrow_array/array/dictionary_array/type.Int8DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.Int8DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int8DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.Int8Type.html" title="struct arrow_array::types::Int8Type">Int8Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.UInt16DictionaryArray.html b/arrow_array/array/dictionary_array/type.UInt16DictionaryArray.html
index 5731592879a..c8f356b42a4 100644
--- a/arrow_array/array/dictionary_array/type.UInt16DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.UInt16DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt16DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.UInt16Type.html" title="struct arrow_array::types::UInt16Type">UInt16Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.UInt32DictionaryArray.html b/arrow_array/array/dictionary_array/type.UInt32DictionaryArray.html
index ad8526c3793..7a77ee53b35 100644
--- a/arrow_array/array/dictionary_array/type.UInt32DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.UInt32DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt32DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.UInt32Type.html" title="struct arrow_array::types::UInt32Type">UInt32Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.UInt64DictionaryArray.html b/arrow_array/array/dictionary_array/type.UInt64DictionaryArray.html
index d1e4dcdbcba..5506078f25f 100644
--- a/arrow_array/array/dictionary_array/type.UInt64DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.UInt64DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt64DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.UInt64Type.html" title="struct arrow_array::types::UInt64Type">UInt64Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/dictionary_array/type.UInt8DictionaryArray.html b/arrow_array/array/dictionary_array/type.UInt8DictionaryArray.html
index cf337264e36..a801935327e 100644
--- a/arrow_array/array/dictionary_array/type.UInt8DictionaryArray.html
+++ b/arrow_array/array/dictionary_array/type.UInt8DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt8DictionaryArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../types/struct.UInt8Type.html" title="struct arrow_array::types::UInt8Type">UInt8Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" cla [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arr [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/fixed_size_binary_array/struct.FixedSizeBinaryArray.html b/arrow_array/array/fixed_size_binary_array/struct.FixedSizeBinaryArray.html
index 06db0f49efb..155f465a4c8 100644
--- a/arrow_array/array/fixed_size_binary_array/struct.FixedSizeBinaryArray.html
+++ b/arrow_array/array/fixed_size_binary_array/struct.FixedSizeBinaryArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of fixed size binary arrays"><title>FixedSizeBinaryArray in arrow_array::array::fixed_size_binary_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -22,7 +22,7 @@ Sparsity means that the input argument can contain <code>None</code> items.</p>
    <span class="kw">let </span>arr = FixedSizeBinaryArray::try_from_sparse_iter_with_size(input_arg.into_iter(), <span class="number">2</span>).unwrap();
    <span class="macro">assert_eq!</span>(<span class="number">5</span>, arr.len())
 </code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_data" class="structfield section-header"><a href="#structfield.v [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_data" class="structfield section-header"><a href="#structfield.value_data" class="anchor field">§</a><code>value_data: Buffer</code></span><span id="structfield.nulls" class="structfield  [...]
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="struct.FixedSizeBinaryArray.html#method.try_new" title="associated function arrow_array::array::fixed_size_binary_array::FixedSizeBinaryArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_scalar" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#72-75">source</a><h4 class="code-header">pub fn <a href="#method.new_scalar" class="fn">new_scalar</a>(value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="http [...]
@@ -30,7 +30,7 @@ Sparsity means that the input argument can contain <code>None</code> items.</p>
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
     values: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.FixedSizeBinaryArray.html" title="struct arrow_array::array::fixed_size_binary_array::FixedSizeBinaryArray"><code>FixedSizeBinaryA [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.FixedSizeBinaryArray.html" title="struct arrow_array::array::fixed_size_binary_array::FixedSizeBinaryArray"><code>FixedSizeBinaryArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>size &lt; 0</code></li>
@@ -59,7 +59,7 @@ Sparsity means that the input argument can contain <code>None</code> items.</p>
 allowing for zero-copy cloning.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_data" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#195-197">source</a><h4 class="code-header">pub fn <a href="#method.value_data" class="fn">value_data</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]">ⓘ</a></ [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#200-215">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primit [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_sparse_iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#242-313">source</a><h4 class="code-header">pub fn <a href="#method.try_from_sparse_iter" class="fn">try_from_sparse_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">R [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_sparse_iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#242-313">source</a><h4 class="code-header">pub fn <a href="#method.try_from_sparse_iter" class="fn">try_from_sparse_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">R [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;U&gt;&gt;,
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,</div></h4></section><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated: This function will fail if the iterator produces only None values; prefer <code>try_from_sparse_iter_with_size</code></span></div></ [...]
 Sparsity means that items returned by the iterator are optional, i.e input argument can
@@ -80,7 +80,7 @@ contain <code>None</code> items.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_sparse_iter_with_size" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#339-390">source</a><h4 class="code-header">pub fn <a href="#method.try_from_sparse_iter_with_size" class="fn">try_from_sparse_iter_with_size</a>&lt;T, U&gt;(
     iter: T,
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;<div class="where">where
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;<div class="where">where
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;U&gt;&gt;,
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,</div></h4></section></summary><div class="docblock"><p>Create an array from an iterable argument of sparse byte slices.
 Sparsity means that items returned by the iterator are optional, i.e input argument can
@@ -100,7 +100,7 @@ created.</p>
 <span class="kw">let </span>array = FixedSizeBinaryArray::try_from_sparse_iter_with_size(input_arg.into_iter(), <span class="number">2</span>).unwrap();</code></pre></div>
 <h5 id="errors-2"><a class="doc-anchor" href="#errors-2">§</a>Errors</h5>
 <p>Returns error if argument has length zero, or sizes of nested slices don’t match.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#409-456">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#409-456">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, Ar [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = U&gt;,
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,</div></h4></section></summary><div class="docblock"><p>Create an array from an iterable argument of byte slices.</p>
 <h5 id="examples-3"><a class="doc-anchor" href="#examples-3">§</a>Examples</h5>
@@ -115,7 +115,7 @@ created.</p>
 <p>Returns error if argument has length zero, or sizes of nested slices don’t match.</p>
 </div></details><section id="method.value_offset_at" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#459-461">source</a><h4 class="code-header">fn <a href="#method.value_offset_at" class="fn">value_offset_at</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></h4></se [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-FixedSizeBinaryArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#576-624">source</a><a href="#impl-Array-for-FixedSizeBinaryArray" cla [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#581-583">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -& [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#581-583">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -& [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#609-611">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="en [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/fixed_size_list_array/struct.FixedSizeListArray.html b/arrow_array/array/fixed_size_list_array/struct.FixedSizeListArray.html
index 111c00144d1..e3540ec3fe6 100644
--- a/arrow_array/array/fixed_size_list_array/struct.FixedSizeListArray.html
+++ b/arrow_array/array/fixed_size_list_array/struct.FixedSizeListArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of [fixed length lists], similar to JSON arrays (e.g. `[&quot;A&quot;, &quot;B&quot;]`)."><title>FixedSizeListArray in arrow_array::array::fixed_size_list_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4 [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     value_length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
@@ -71,8 +71,8 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <span class="macro">assert_eq!</span>( <span class="kw-2">&amp;</span>[<span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>], list1.as_any().downcast_ref::&lt;Int32Array&gt;().unwrap().values());
 <span class="macro">assert_eq!</span>( <span class="kw-2">&amp;</span>[<span class="number">6</span>, <span class="number">7</span>, <span class="number">8</span>], list2.as_any().downcast_ref::&lt;Int32Array&gt;().unwrap().values());</code></pre></div>
 <p><a href="https://arrow.apache.org/docs/format/Columnar.html#fixed-size-list-layout">fixed size arrays</a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.value [...]
-    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::Arr [...]
+    field: FieldRef,
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -80,11 +80,11 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="struct.FixedSizeListArray.html#method.try_new" title="associated function arrow_array::array::fixed_size_list_array::FixedSizeListArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#145-205">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.FixedSizeListArray.html" title="struct arrow_array::array::fixed_size_list_array::FixedSizeListArray"><code>FixedSizeListArray</co [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.FixedSizeListArray.html" title="struct arrow_array::array::fixed_size_list_array::FixedSizeListArray"><code>FixedSizeListArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>size &lt; 0</code></li>
@@ -92,16 +92,16 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <li><code>values.data_type() != field.data_type()</code></li>
 <li><code>!field.is_nullable() &amp;&amp; !nulls.expand(size).contains(values.logical_nulls())</code></li>
 </ul>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#215-224">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, size: <a class="primitive" href="https://doc.rust-la [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#215-224">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: FieldRef, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std [...]
 <h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
 <p>Panics if</p>
 <ul>
 <li><code>size &lt; 0</code></li>
 <li><code>size * len</code> would overflow <code>usize</code></li>
 </ul>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#227-233">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (<a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, <a class="primitive" href="https://doc.r [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#227-233">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (FieldRef, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>, <a class="type" href="../type.ArrayRef.html" title="type arrow_ [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#236-238">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference t [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#241-243">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div cl [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#241-243">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; DataType</h4></section></summary><div class="docblock"><p>Returns a clone of the value type of this list.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#246-249">source</a><h4 class="code-header">pub fn <a href="#method.value" class="fn">value</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array:: [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_offset" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#255-257">source</a><h4 class="code-header">pub fn <a href="#method.value_offset" class="fn">value_offset</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nig [...]
 <p>Note this doesn’t do any bound checking, for performance reason.</p>
@@ -124,7 +124,7 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <span class="macro">println!</span>(<span class="string">"{:?}"</span>, list_array);</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#337-339">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>(&amp;self) -&gt; <a class="type" href="../../iterator/type.FixedSizeListIter.html" title="type arrow_array::iterator::FixedSizeListIter">FixedSizeListIter</a>&lt;'_&gt;</h4></section></summary><div  [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-FixedSizeListArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#375-427">source</a><a href="#impl-Array-for-FixedSizeListArray" class="an [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#380-382">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#380-382">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#408-410">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/fn.new_empty_array.html b/arrow_array/array/fn.new_empty_array.html
index c9f439a62c6..4d66b4964e4 100644
--- a/arrow_array/array/fn.new_empty_array.html
+++ b/arrow_array/array/fn.new_empty_array.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Creates a new empty array"><title>new_empty_array in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a78 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Creates a new empty array"><title>new_empty_array in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a78 [...]
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::sync::Arc;
 <span class="kw">use </span>arrow_schema::DataType;
diff --git a/arrow_array/array/fn.new_null_array.html b/arrow_array/array/fn.new_null_array.html
index 95a8b49918b..b175897fe07 100644
--- a/arrow_array/array/fn.new_null_array.html
+++ b/arrow_array/array/fn.new_null_array.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Creates a new array of `data_type` of length `length` filled entirely of `NULL` values"><title>new_null_array in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,Fi [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Creates a new array of `data_type` of length `length` filled entirely of `NULL` values"><title>new_null_array in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,Fi [...]
 entirely of <code>NULL</code> values</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::sync::Arc;
diff --git a/arrow_array/array/list_array/struct.GenericListArray.html b/arrow_array/array/list_array/struct.GenericListArray.html
index bbc8e565db3..ace860c3eca 100644
--- a/arrow_array/array/list_array/struct.GenericListArray.html
+++ b/arrow_array/array/list_array/struct.GenericListArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of variable length lists, similar to JSON arrays (e.g. `[&quot;A&quot;, &quot;B&quot;, &quot;C&quot;]`)."><title>GenericListArray in arrow_array::array::list_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSer [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     value_offsets: OffsetBuffer&lt;OffsetSize&gt;,
@@ -58,15 +58,15 @@ the actual <code>ListArray</code> encoding on the right.</p>
                                         └ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
 
 
-</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href=" [...]
+</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/opt [...]
 The input is the schema of the child array and
-the output is the <a href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a>, List or LargeList.</p>
+the output is the [<code>DataType</code>], List or LargeList.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#165-215">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;OffsetSize&gt;,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a> from the  [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a> from the provided parts</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <p>Errors if</p>
 <ul>
@@ -76,22 +76,22 @@ the output is the <a href="../../../arrow_schema/datatype/enum.DataType.html" ti
 <li><code>field.data_type() != values.data_type()</code></li>
 </ul>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#222-229">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
-    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;OffsetSize&gt;,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a> from the provided parts</p>
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="struct.GenericListArray.html#method.try_new" title="associated function arrow_array::array::list_array::GenericListArray::try_new"><code>Self::try_new</code></a> returns an error</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#232-240">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, len: <a class="primitive" href="https://doc.rust-lang.org/night [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#232-240">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: FieldRef, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a h [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#243-256">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, OffsetBuffer&lt;OffsetSize&gt;, <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section></summary><div class="docblock"><p>Deconstruct this array i [...]
+) -&gt; (FieldRef, OffsetBuffer&lt;OffsetSize&gt;, <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section></summary><div class="docblock"><p>Deconstruct this array into its constituent parts</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.offsets" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#263-265">source</a><h4 class="code-header">pub fn <a href="#method.offsets" class="fn">offsets</a>(&amp;self) -&gt; &amp;OffsetBuffer&lt;OffsetSize&gt;</h4></section></summary><div class="docblock"><p>Returns a reference to the offsets of this list</p>
 <p>Unlike <a href="struct.GenericListArray.html#method.value_offsets" title="method arrow_array::array::list_array::GenericListArray::value_offsets"><code>Self::value_offsets</code></a> this returns the [<code>OffsetBuffer</code>]
 allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#269-271">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the value [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#274-276">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblo [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#274-276">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; DataType</h4></section></summary><div class="docblock"><p>Returns a clone of the value type of this list.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_unchecked" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#281-285">source</a><h4 class="code-header">pub unsafe fn <a href="#method.value_unchecked" class="fn">value_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../type.ArrayRef.html" title= [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>Caller must ensure that the index is within the array bounds</p>
@@ -99,7 +99,7 @@ allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_offsets" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#296-298">source</a><h4 class="code-header">pub fn <a href="#method.value_offsets" class="fn">value_offsets</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[OffsetSize]</a></h4></section></summary><div class="docblock"><p>Returns [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_length" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#302-305">source</a><h4 class="code-header">pub fn <a href="#method.value_length" class="fn">value_length</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; OffsetSize</h4></section></summary><div class="docblock"><p>Returns [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#308-310">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>&lt;'a&gt;(&amp;'a self) -&gt; <a class="type" href="../../iterator/type.GenericListArrayIter.html" title="type arrow_array::iterator::GenericListArrayIter">GenericListArrayIter</a>&lt;'a, OffsetSize&gt;</h4></ [...]
-</div></details><section id="method.get_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#313-320">source</a><h4 class="code-header">fn <a href="#method.get_type" class="fn">get_type</a>(data_type: &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum  [...]
+</div></details><section id="method.get_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#313-320">source</a><h4 class="code-header">fn <a href="#method.get_type" class="fn">get_type</a>(data_type: &amp;DataType) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;DataType&gt;</h4></section><details class="toggle method-toggle" open><summary><se [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_iter_primitive" class="method"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#347-370">source</a><h4 class="code-header">pub fn <a href="#method.from_iter_primitive" class="fn">from_iter_primitive</a>&lt;T, P, I&gt;(iter: I) -&gt; Self<div class="where">where
     T: <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>,
     P: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&lt;T as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a cl [...]
@@ -114,8 +114,8 @@ allowing for zero-copy cloning</p>
 ];
 <span class="kw">let </span>list_array = ListArray::from_iter_primitive::&lt;Int32Type, <span class="kw">_</span>, <span class="kw">_</span>&gt;(data);
 <span class="macro">println!</span>(<span class="string">"{:?}"</span>, list_array);</code></pre></div>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericListArray%3COffsetSize%3E-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#411-457">source</a><a href="#impl-GenericListArray%3COffsetSize%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow_array::array::list_array::OffsetSizeTrait">OffsetS [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#464-466">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class= [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericListArray%3COffsetSize%3E-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#411-457">source</a><a href="#impl-GenericListArray%3COffsetSize%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow_array::array::list_array::OffsetSizeTrait">OffsetS [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#464-466">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class= [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#492-494">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="htt [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/list_array/type.LargeListArray.html b/arrow_array/array/list_array/type.LargeListArray.html
index 9ac974df0ea..0b7a7aca857 100644
--- a/arrow_array/array/list_array/type.LargeListArray.html
+++ b/arrow_array/array/list_array/type.LargeListArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericListArray` of variable size lists, storing offsets as `i64`."><title>LargeListArray in arrow_array::array::list_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSa [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct LargeListArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" c [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" [...]
\ No newline at end of file
diff --git a/arrow_array/array/list_array/type.ListArray.html b/arrow_array/array/list_array/type.ListArray.html
index d6095bdc01a..42fd166106b 100644
--- a/arrow_array/array/list_array/type.ListArray.html
+++ b/arrow_array/array/list_array/type.ListArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericListArray` of variable size lists, storing offsets as `i32`."><title>ListArray in arrow_array::array::list_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Re [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct ListArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" c [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" [...]
\ No newline at end of file
diff --git a/arrow_array/array/map_array/struct.MapArray.html b/arrow_array/array/map_array/struct.MapArray.html
index 51eaba6adf5..eb26ceb3ab3 100644
--- a/arrow_array/array/map_array/struct.MapArray.html
+++ b/arrow_array/array/map_array/struct.MapArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of key-value maps"><title>MapArray in arrow_array::array::map_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8 [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     entries: <a class="struct" href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
@@ -8,15 +8,15 @@
 <p><a href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a> is physically a <a href="../list_array/type.ListArray.html" title="type arrow_array::array::list_array::ListArray"><code>ListArray</code></a> of key values pairs stored as an <code>entries</code>
 <a href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> with 2 child fields.</p>
 <p>See <a href="../../builder/map_builder/struct.MapBuilder.html" title="struct arrow_array::builder::map_builder::MapBuilder"><code>MapBuilder</code></a> for how to construct a <a href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.htm [...]
 </div><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</code></span><div class="docblock"><p>The start and end offsets of each entry</p>
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-MapArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#45-233">source</a><a href="#impl-MapArray" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.MapArray.html" title="struct arrow_arr [...]
-    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     entries: <a class="struct" href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a> from the provided parts</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a> from the provided parts</p>
 <p>See <a href="../../builder/map_builder/struct.MapBuilder.html" title="struct arrow_array::builder::map_builder::MapBuilder"><code>MapBuilder</code></a> for a higher-level interface
 to construct a <a href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
@@ -30,7 +30,7 @@ to construct a <a href="struct.MapArray.html" title="struct arrow_array::array::
 <li><code>field.data_type() != entries.data_type()</code></li>
 </ul>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#125-133">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
-    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     entries: <a class="struct" href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -42,15 +42,15 @@ to construct a <a href="struct.MapArray.html" title="struct arrow_array::array::
 <p>Panics if <a href="struct.MapArray.html#method.try_new" title="associated function arrow_array::array::map_array::MapArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#136-150">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;, <a class="struct" href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum c [...]
+) -&gt; (FieldRef, OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;, <a class="struct" href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.offsets" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#157-159">source</a><h4 class="code-header">pub fn <a href="#method.offsets" class="fn">offsets</a>(&amp;self) -&gt; &amp;OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</h4></section></summary><div class="docblock"><p>Returns a referen [...]
 <p>Unlike <a href="struct.MapArray.html#method.value_offsets" title="method arrow_array::array::map_array::MapArray::value_offsets"><code>Self::value_offsets</code></a> this returns the [<code>OffsetBuffer</code>]
 allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.keys" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#162-164">source</a><h4 class="code-header">pub fn <a href="#method.keys" class="fn">keys</a>(&amp;self) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the keys of this [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#167-169">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the values [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.entries" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#172-174">source</a><h4 class="code-header">pub fn <a href="#method.entries" class="fn">entries</a>(&amp;self) -&gt; &amp;<a class="struct" href="../struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a></h4></section></summary><div class="d [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.key_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#177-179">source</a><h4 class="code-header">pub fn <a href="#method.key_type" class="fn">key_type</a>(&amp;self) -&gt; &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#182-184">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="do [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.key_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#177-179">source</a><h4 class="code-header">pub fn <a href="#method.key_type" class="fn">key_type</a>(&amp;self) -&gt; &amp;DataType</h4></section></summary><div class="docblock"><p>Returns the data type of the map’s keys.</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#182-184">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; &amp;DataType</h4></section></summary><div class="docblock"><p>Returns the data type of the map’s values.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_unchecked" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#190-195">source</a><h4 class="code-header">pub unsafe fn <a href="#method.value_unchecked" class="fn">value_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../struct_array/struct.Struc [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>Caller must ensure that the index is within the array bounds</p>
@@ -60,13 +60,13 @@ allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_length" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#214-217">source</a><h4 class="code-header">pub fn <a href="#method.value_length" class="fn">value_length</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/pri [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#220-227">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.h [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#230-232">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>(&amp;self) -&gt; <a class="type" href="../../iterator/type.MapArrayIter.html" title="type arrow_array::iterator::MapArrayIter">MapArrayIter</a>&lt;'_&gt;</h4></section></summary><div class="docblock"><p>constru [...]
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-MapArray-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#255-344">source</a><a href="#impl-MapArray-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h3></section></summary><div class="impl-items"><section id="method.tr [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-MapArray-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#255-344">source</a><a href="#impl-MapArray-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h3></section></summary><div class="impl-items"><section id="method.tr [...]
     keys: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = &amp;'a <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,
     values: &amp;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>,
     entry_offsets: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>],
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates map array from provided keys, values and entry_offsets.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates map array from provided keys, values and entry_offsets.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-MapArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#346-400">source</a><a href="#impl-Array-for-MapArray" class="anchor">§</a><h3 class="code-heade [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#351-353">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class=" [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#351-353">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class=" [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#379-381">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="http [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/null_array/struct.NullArray.html b/arrow_array/array/null_array/struct.NullArray.html
index 094fb1587e4..436eca6296f 100644
--- a/arrow_array/array/null_array/struct.NullArray.html
+++ b/arrow_array/array/null_array/struct.NullArray.html
@@ -13,13 +13,13 @@
 <span class="macro">assert_eq!</span>(array.logical_nulls().unwrap().null_count(), <span class="number">10</span>);</code></pre></div>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor field">§</a><code>len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list" [...]
 <p><em>Note</em>: Use <a href="../fn.new_null_array.html" title="fn arrow_array::array::new_null_array"><code>crate::array::new_null_array</code></a> if you need an array of some
-other <a href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a>.</p>
+other [<code>DataType</code>].</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#60-67">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html" [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.builder" class="method"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#73-75">source</a><h4 class="code-header">pub fn <a href="#method.builder" class="fn">builder</a>(_capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../../builder/null_builder/struct.NullBuilder.html" title="stru [...]
 <p>Note that the <code>capacity</code> parameter to this function is <em>deprecated</em>. It
 now does nothing, and will be removed in a future version.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-NullArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#78-130">source</a><a href="#impl-Array-for-NullArray" class="anchor">§</a><h3 class="code-hea [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#83-85">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="s [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#83-85">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="s [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#111-113">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="htt [...]
 null values of this array, if any. <a href="../trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#119-121">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -& [...]
diff --git a/arrow_array/array/primitive_array/struct.PrimitiveArray.html b/arrow_array/array/primitive_array/struct.PrimitiveArray.html
index 18bee6c7c3d..1db72dc8e6c 100644
--- a/arrow_array/array/primitive_array/struct.PrimitiveArray.html
+++ b/arrow_array/array/primitive_array/struct.PrimitiveArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of primitive values, of type `ArrowPrimitiveType`"><title>PrimitiveArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regu [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of primitive values, of type <a href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a></p>
@@ -41,7 +41,7 @@ builder.append_value(<span class="number">2</span>);
 </span><span class="macro">assert_eq!</span>(<span class="kw-2">&amp;</span>DataType::Float32, array.data_type());
 <span class="kw">let </span>f32_array: Float32Array  = array.as_primitive().clone();
 <span class="macro">assert_eq!</span>(f32_array, Float32Array::from(<span class="macro">vec!</span>[<span class="number">1.2</span>, <span class="number">2.3</span>]));</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.value [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimit [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" op [...]
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="struct.PrimitiveArray.html#method.try_new" title="associated function arrow_array::array::primitive_array::PrimitiveArray::try_new"><code>Self::try_new</code></a> returns an error</p>
@@ -58,7 +58,7 @@ this constructor is the most performant approach, avoiding any additional alloca
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#554-573">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     values: ScalarBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> from the p [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> from the provided values and nulls</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <p>Errors if:</p>
 <ul>
@@ -67,18 +67,18 @@ this constructor is the most performant approach, avoiding any additional alloca
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_scalar" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#576-582">source</a><h4 class="code-header">pub fn <a href="#method.new_scalar" class="fn">new_scalar</a>(value: T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>) -&gt; < [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#585-587">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>, ScalarBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></se [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#597-600">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; Self</h4></section [...]
+) -&gt; (DataType, ScalarBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section></summary><div class="docblock"><p>Deconstruct this array into its constituent parts</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#597-600">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: DataType) -&gt; Self</h4></section></summary><div class="docblock"><p>Overrides the [<code>DataType</code>] of this <a href="struct.PrimitiveArray.html" titl [...]
 <p>Prefer using <a href="struct.PrimitiveArray.html#method.with_timezone" title="method arrow_array::array::primitive_array::PrimitiveArray::with_timezone"><code>Self::with_timezone</code></a> or <a href="struct.PrimitiveArray.html#method.with_precision_and_scale" title="method arrow_array::array::primitive_array::PrimitiveArray::with_precision_and_scale"><code>Self::with_precision_and_scale</code></a> where
 the primitive type is suitably constrained, as these cannot panic</p>
 <h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
 <p>Panics if ![Self::is_compatible]</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.assert_compatible" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#603-610">source</a><h4 class="code-header">fn <a href="#method.assert_compatible" class="fn">assert_compatible</a>(data_type: &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>)</h4></section></summ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.assert_compatible" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#603-610">source</a><h4 class="code-header">fn <a href="#method.assert_compatible" class="fn">assert_compatible</a>(data_type: &amp;DataType)</h4></section></summary><div class="docblock"><p>Asserts that <code>data_type</code> is compatible with <code>Self</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.len" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#614-616">source</a><h4 class="code-header">pub fn <a href="#method.len" class="fn">len</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the length of this array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_empty" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#619-621">source</a><h4 class="code-header">pub fn <a href="#method.is_empty" class="fn">is_empty</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns whether this array is e [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#625-627">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;ScalarBuffer&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native"> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.builder" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#630-632">source</a><h4 class="code-header">pub fn <a href="#method.builder" class="fn">builder</a>(capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../../builder/primitive_builder/struct.PrimitiveBuilder.h [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.is_compatible" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#638-647">source</a><h4 class="code-header">pub fn <a href="#method.is_compatible" class="fn">is_compatible</a>(data_type: &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; <a class="primitive" h [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.is_compatible" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#638-647">source</a><h4 class="code-header">pub fn <a href="#method.is_compatible" class="fn">is_compatible</a>(data_type: &amp;DataType) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>R [...]
 <p>This is equivalent to <code>data_type == T::DATA_TYPE</code>, however ignores timestamp
 timezones and decimal precision and scale</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_unchecked" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#655-657">source</a><h4 class="code-header">pub unsafe fn <a href="#method.value_unchecked" class="fn">value_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; T::<a class="associatedtype" href="../../types [...]
@@ -235,13 +235,13 @@ I.e. that <code>size_hint().1</code> correctly reports its length.</p>
     self,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
     scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Returns a Decimal array with the same data as self, with the
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Returns a Decimal array with the same data as self, with the
 specified precision and scale.</p>
 <p>See <a href="../../types/fn.validate_decimal_precision_and_scale.html" title="fn arrow_array::types::validate_decimal_precision_and_scale"><code>validate_decimal_precision_and_scale</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.validate_decimal_precision" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1483-1492">source</a><h4 class="code-header">pub fn <a href="#method.validate_decimal_precision" class="fn">validate_decimal_precision</a>(
     &amp;self,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Validates values in this array can be properly interpreted
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Validates values in this array can be properly interpreted
 with the specified precision.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.null_if_overflow_precision" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1496-1500">source</a><h4 class="code-header">pub fn <a href="#method.null_if_overflow_precision" class="fn">null_if_overflow_precision</a>(&amp;self, precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>) -&gt; Self</h4></secti [...]
 will be casted to Null</p>
@@ -249,7 +249,7 @@ will be casted to Null</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.precision" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1508-1532">source</a><h4 class="code-header">pub fn <a href="#method.precision" class="fn">precision</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a></h4></section></summary><div class="docblock"><p>Returns the decimal precision  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.scale" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1535-1559">source</a><h4 class="code-header">pub fn <a href="#method.scale" class="fn">scale</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></h4></section></summary><div class="docblock"><p>Returns the decimal scale of this array</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-PrimitiveArray%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1051-1099">source</a><a href="#impl-Array-for-PrimitiveArray%3CT%3E" class=" [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1056-1058">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1056-1058">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1084-1086">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" hr [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/primitive_array/type.Date32Array.html b/arrow_array/array/primitive_array/type.Date32Array.html
index e5272c3045d..1d74a270e5d 100644
--- a/arrow_array/array/primitive_array/type.Date32Array.html
+++ b/arrow_array/array/primitive_array/type.Date32Array.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/date/struct.NaiveDate.html" title="struct chrono::naive::date::NaiveDate"><code>chrono::NaiveDate</code></a> type and can hold
 values such as <code>2018-11-13</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date32Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Date32Array" async></script></section></div></m [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Date64Array.html b/arrow_array/array/primitive_array/type.Date64Array.html
index 342d055f0cc..e85c3aa7db4 100644
--- a/arrow_array/array/primitive_array/type.Date64Array.html
+++ b/arrow_array/array/primitive_array/type.Date64Array.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/date/struct.NaiveDate.html" title="struct chrono::naive::date::NaiveDate"><code>chrono::NaiveDate</code></a> type and can hold
 values such as <code>2018-11-13</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date64Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Date64Array" async></script></section></div></m [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Decimal128Array.html b/arrow_array/array/primitive_array/type.Decimal128Array.html
index a48da2fcb7e..79fd0289724 100644
--- a/arrow_array/array/primitive_array/type.Decimal128Array.html
+++ b/arrow_array/array/primitive_array/type.Decimal128Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Decimal128Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal128Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Decimal128Array" async></script></section></div [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Decimal256Array.html b/arrow_array/array/primitive_array/type.Decimal256Array.html
index 2a72b648272..07e0f8e4be5 100644
--- a/arrow_array/array/primitive_array/type.Decimal256Array.html
+++ b/arrow_array/array/primitive_array/type.Decimal256Array.html
@@ -11,8 +11,8 @@
 </span><span class="kw">let </span>arr: Decimal256Array = std::iter::repeat(i256::from(<span class="number">42</span>)).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal256Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;i256&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;i256&gt;</code></span><div class="docblock"><p>Values data</p>
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Decimal256Array" async></script></section></div [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.DurationMicrosecondArray.html b/arrow_array/array/primitive_array/type.DurationMicrosecondArray.html
index b5f58856ebb..22be1851d94 100644
--- a/arrow_array/array/primitive_array/type.DurationMicrosecondArray.html
+++ b/arrow_array/array/primitive_array/type.DurationMicrosecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in microseconds"><title>DurationMicrosecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSa [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMicrosecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationMicrosecondArray" async></script></sect [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.DurationMillisecondArray.html b/arrow_array/array/primitive_array/type.DurationMillisecondArray.html
index 9e62bea4be0..c10fcdabda5 100644
--- a/arrow_array/array/primitive_array/type.DurationMillisecondArray.html
+++ b/arrow_array/array/primitive_array/type.DurationMillisecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in milliseconds"><title>DurationMillisecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSa [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMillisecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationMillisecondArray" async></script></sect [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.DurationNanosecondArray.html b/arrow_array/array/primitive_array/type.DurationNanosecondArray.html
index 49c69fade25..57f95dc8f06 100644
--- a/arrow_array/array/primitive_array/type.DurationNanosecondArray.html
+++ b/arrow_array/array/primitive_array/type.DurationNanosecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in nanoseconds"><title>DurationNanosecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationNanosecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationNanosecondArray" async></script></secti [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.DurationSecondArray.html b/arrow_array/array/primitive_array/type.DurationSecondArray.html
index 45e7fcc5326..66cade5f7f6 100644
--- a/arrow_array/array/primitive_array/type.DurationSecondArray.html
+++ b/arrow_array/array/primitive_array/type.DurationSecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in seconds"><title>DurationSecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationSecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationSecondArray" async></script></section>< [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Float16Array.html b/arrow_array/array/primitive_array/type.Float16Array.html
index 108d4a2b168..2b92d17f724 100644
--- a/arrow_array/array/primitive_array/type.Float16Array.html
+++ b/arrow_array/array/primitive_array/type.Float16Array.html
@@ -14,8 +14,8 @@
 <span class="kw">let </span>arr : Float16Array = [<span class="prelude-val">Some</span>(f16::from_f64(<span class="number">1.0</span>)), <span class="prelude-val">Some</span>(f16::from_f64(<span class="number">2.0</span>))].into_iter().collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float16Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct half::binary16::f16">f16</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/s [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Float16Array" async></script></section></div></ [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Float32Array.html b/arrow_array/array/primitive_array/type.Float32Array.html
index bd00d95f8fc..cad3e9042e3 100644
--- a/arrow_array/array/primitive_array/type.Float32Array.html
+++ b/arrow_array/array/primitive_array/type.Float32Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Float32Array = std::iter::repeat(<span class="number">42.0</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float32Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Float32Array" async></script></section></div></ [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Float64Array.html b/arrow_array/array/primitive_array/type.Float64Array.html
index 3e830e40a73..ca0b04cf66f 100644
--- a/arrow_array/array/primitive_array/type.Float64Array.html
+++ b/arrow_array/array/primitive_array/type.Float64Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Float32Array = std::iter::repeat(<span class="number">42.0</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float64Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Float64Array" async></script></section></div></ [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Int16Array.html b/arrow_array/array/primitive_array/type.Int16Array.html
index 8f2cf68329a..3bca97d9687 100644
--- a/arrow_array/array/primitive_array/type.Int16Array.html
+++ b/arrow_array/array/primitive_array/type.Int16Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int16Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int16Array" async></script></section></div></ma [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Int32Array.html b/arrow_array/array/primitive_array/type.Int32Array.html
index 618741acae6..e1c10501e58 100644
--- a/arrow_array/array/primitive_array/type.Int32Array.html
+++ b/arrow_array/array/primitive_array/type.Int32Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int32Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int32Array" async></script></section></div></ma [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Int64Array.html b/arrow_array/array/primitive_array/type.Int64Array.html
index 7b1769a7546..955891dc27e 100644
--- a/arrow_array/array/primitive_array/type.Int64Array.html
+++ b/arrow_array/array/primitive_array/type.Int64Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int64Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int64Array" async></script></section></div></ma [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Int8Array.html b/arrow_array/array/primitive_array/type.Int8Array.html
index cd56f927f4c..9e5060af4dc 100644
--- a/arrow_array/array/primitive_array/type.Int8Array.html
+++ b/arrow_array/array/primitive_array/type.Int8Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int8Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int8Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int8Array" async></script></section></div></mai [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.IntervalDayTimeArray.html b/arrow_array/array/primitive_array/type.IntervalDayTimeArray.html
index 3ddfe4f8258..80a1199053e 100644
--- a/arrow_array/array/primitive_array/type.IntervalDayTimeArray.html
+++ b/arrow_array/array/primitive_array/type.IntervalDayTimeArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of “calendar” intervals in days and milliseconds"><title>IntervalDayTimeArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff [...]
 <p>See <a href="../../types/struct.IntervalDayTimeType.html" title="struct arrow_array::types::IntervalDayTimeType"><code>IntervalDayTimeType</code></a> for details on representation and caveats.</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalDayTimeArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;IntervalDayTime&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;IntervalDayTime&gt;</code></span><div class="docblock"><p>Values data</p>
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::IntervalDayTimeArray" async></script></section> [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.IntervalMonthDayNanoArray.html b/arrow_array/array/primitive_array/type.IntervalMonthDayNanoArray.html
index 4f698a475f2..b1b6d483017 100644
--- a/arrow_array/array/primitive_array/type.IntervalMonthDayNanoArray.html
+++ b/arrow_array/array/primitive_array/type.IntervalMonthDayNanoArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of “calendar” intervals in  months, days, and nanoseconds."><title>IntervalMonthDayNanoArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaaf [...]
 <p>See <a href="../../types/struct.IntervalMonthDayNanoType.html" title="struct arrow_array::types::IntervalMonthDayNanoType"><code>IntervalMonthDayNanoType</code></a> for details on representation and caveats.</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalMonthDayNanoArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;IntervalMonthDayNano&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;IntervalMonthDayNano&gt;</code></span><div class="docblock"><p>Val [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::IntervalMonthDayNanoArray" async></script></sec [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.IntervalYearMonthArray.html b/arrow_array/array/primitive_array/type.IntervalYearMonthArray.html
index d4090044e66..732da1bfefd 100644
--- a/arrow_array/array/primitive_array/type.IntervalYearMonthArray.html
+++ b/arrow_array/array/primitive_array/type.IntervalYearMonthArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of “calendar” intervals in months"><title>IntervalYearMonthArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Re [...]
 <p>See <a href="../../types/struct.IntervalYearMonthType.html" title="struct arrow_array::types::IntervalYearMonthType"><code>IntervalYearMonthType</code></a> for details on representation and caveats.</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalYearMonthArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::IntervalYearMonthArray" async></script></sectio [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Time32MillisecondArray.html b/arrow_array/array/primitive_array/type.Time32MillisecondArray.html
index 65ea7771adb..b92c08b9964 100644
--- a/arrow_array/array/primitive_array/type.Time32MillisecondArray.html
+++ b/arrow_array/array/primitive_array/type.Time32MillisecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00.123</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32MillisecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time32MillisecondArray" async></script></sectio [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Time32SecondArray.html b/arrow_array/array/primitive_array/type.Time32SecondArray.html
index ea78d724fa0..41c317524cd 100644
--- a/arrow_array/array/primitive_array/type.Time32SecondArray.html
+++ b/arrow_array/array/primitive_array/type.Time32SecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32SecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time32SecondArray" async></script></section></d [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Time64MicrosecondArray.html b/arrow_array/array/primitive_array/type.Time64MicrosecondArray.html
index ccd2079d4ac..ee3b67a997c 100644
--- a/arrow_array/array/primitive_array/type.Time64MicrosecondArray.html
+++ b/arrow_array/array/primitive_array/type.Time64MicrosecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00.123456</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64MicrosecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time64MicrosecondArray" async></script></sectio [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.Time64NanosecondArray.html b/arrow_array/array/primitive_array/type.Time64NanosecondArray.html
index e33976c9582..0ac70acfe8b 100644
--- a/arrow_array/array/primitive_array/type.Time64NanosecondArray.html
+++ b/arrow_array/array/primitive_array/type.Time64NanosecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00.123456789</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64NanosecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time64NanosecondArray" async></script></section [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.TimestampMicrosecondArray.html b/arrow_array/array/primitive_array/type.TimestampMicrosecondArray.html
index e47a7dc23a8..9ce7b7ae2dc 100644
--- a/arrow_array/array/primitive_array/type.TimestampMicrosecondArray.html
+++ b/arrow_array/array/primitive_array/type.TimestampMicrosecondArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of microseconds since UNIX epoch stored as `i64`"><title>TimestampMicrosecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf [...]
 <p>See examples for <a href="type.TimestampSecondArray.html" title="type arrow_array::array::primitive_array::TimestampSecondArray"><code>TimestampSecondArray</code></a></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMicrosecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampMicrosecondArray" async></script></sec [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.TimestampMillisecondArray.html b/arrow_array/array/primitive_array/type.TimestampMillisecondArray.html
index f811a82a76e..9f835a6c5b6 100644
--- a/arrow_array/array/primitive_array/type.TimestampMillisecondArray.html
+++ b/arrow_array/array/primitive_array/type.TimestampMillisecondArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of milliseconds since UNIX epoch stored as `i64`"><title>TimestampMillisecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf [...]
 <p>See examples for <a href="type.TimestampSecondArray.html" title="type arrow_array::array::primitive_array::TimestampSecondArray"><code>TimestampSecondArray</code></a></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMillisecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampMillisecondArray" async></script></sec [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.TimestampNanosecondArray.html b/arrow_array/array/primitive_array/type.TimestampNanosecondArray.html
index d4c7da6a18d..8235d4aed66 100644
--- a/arrow_array/array/primitive_array/type.TimestampNanosecondArray.html
+++ b/arrow_array/array/primitive_array/type.TimestampNanosecondArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of nanoseconds since UNIX epoch stored as `i64`"><title>TimestampNanosecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.w [...]
 <p>See examples for <a href="type.TimestampSecondArray.html" title="type arrow_array::array::primitive_array::TimestampSecondArray"><code>TimestampSecondArray</code></a></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampNanosecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampNanosecondArray" async></script></sect [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.TimestampSecondArray.html b/arrow_array/array/primitive_array/type.TimestampSecondArray.html
index 635a049749d..d78966064e9 100644
--- a/arrow_array/array/primitive_array/type.TimestampSecondArray.html
+++ b/arrow_array/array/primitive_array/type.TimestampSecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of seconds since UNIX epoch stored as `i64`"><title>TimestampSecondArray in arrow_array::array::primitive_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,Fir [...]
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/datetime/struct.DateTime.html" title="struct chrono::datetime::DateTime"><code>chrono::DateTime</code></a> type and can hold
 values such as <code>1970-05-09 14:25:11 +01:00</code></p>
-<p>See also <a href="../../../arrow_schema/datatype/enum.DataType.html#variant.Timestamp" title="variant arrow_schema::datatype::DataType::Timestamp"><code>Timestamp</code></a>.</p>
+<p>See also <a href="arrow_schema::DataType::Timestamp"><code>Timestamp</code></a>.</p>
 <h2 id="example-utc-timestamps-post-epoch"><a class="doc-anchor" href="#example-utc-timestamps-post-epoch">§</a>Example: UTC timestamps post epoch</h2>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::timezone::Tz;
 <span class="comment">// Corresponds to single element array with entry 1970-05-09T14:25:11+0:00
@@ -31,8 +31,8 @@ values such as <code>1970-05-09 14:25:11 +01:00</code></p>
 <span class="macro">assert_eq!</span>(arr.value_as_datetime_with_tz(<span class="number">0</span>, sydney_tz).map(|v| v.to_string()).unwrap(), <span class="string">"1970-05-10 00:25:11 +10:00"</span>)</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampSecondArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampSecondArray" async></script></section> [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.UInt16Array.html b/arrow_array/array/primitive_array/type.UInt16Array.html
index 642fa453f2b..7c8997fbf8a 100644
--- a/arrow_array/array/primitive_array/type.UInt16Array.html
+++ b/arrow_array/array/primitive_array/type.UInt16Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt16Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt16Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt16Array" async></script></section></div></m [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.UInt32Array.html b/arrow_array/array/primitive_array/type.UInt32Array.html
index af7e275b836..e09dd831b40 100644
--- a/arrow_array/array/primitive_array/type.UInt32Array.html
+++ b/arrow_array/array/primitive_array/type.UInt32Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt32Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt32Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt32Array" async></script></section></div></m [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.UInt64Array.html b/arrow_array/array/primitive_array/type.UInt64Array.html
index be12c45d9eb..b4b0c4d0ea2 100644
--- a/arrow_array/array/primitive_array/type.UInt64Array.html
+++ b/arrow_array/array/primitive_array/type.UInt64Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt64Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt64Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt64Array" async></script></section></div></m [...]
\ No newline at end of file
diff --git a/arrow_array/array/primitive_array/type.UInt8Array.html b/arrow_array/array/primitive_array/type.UInt8Array.html
index d9d902727a0..f68a11e6d94 100644
--- a/arrow_array/array/primitive_array/type.UInt8Array.html
+++ b/arrow_array/array/primitive_array/type.UInt8Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt8Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt8Array {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt8Array" async></script></section></div></ma [...]
\ No newline at end of file
diff --git a/arrow_array/array/run_array/struct.RunArray.html b/arrow_array/array/run_array/struct.RunArray.html
index d7e7c39167a..5db1a6ce544 100644
--- a/arrow_array/array/run_array/struct.RunArray.html
+++ b/arrow_array/array/run_array/struct.RunArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of run-end encoded values"><title>RunArray in arrow_array::array::run_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans- [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;R::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     values: <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of <a href="https://arrow.apache.org/docs/format/Columnar.html#run-end-encoded-layout">run-end encoded values</a></p>
@@ -26,12 +26,12 @@ stores the value of each run. Below example illustrates how a logical array is r
   
                                             Logical array
                                                Contents
-</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a hre [...]
+</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;R::<a class="associatedtype" href="../. [...]
 by the given run_ends array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#94-119">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     run_ends: &amp;<a class="struct" href="../primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;R&gt;,
     values: &amp;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Attempts to create RunArray using given run_ends (index where a run ends)
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempts to create RunArray using given run_ends (index where a run ends)
 and the values (value of the run). Returns an error if the given data is not compatible
 with RunEndEncoded specification.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.run_ends" class="method"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#122-124">source</a><h4 class="code-header">pub fn <a href="#method.run_ends" class="fn">run_ends</a>(&amp;self) -&gt; &amp;RunEndBuffer&lt;R::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native"> [...]
@@ -57,7 +57,7 @@ Performs a binary search on the run_ends array for the input index.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_physical_indices" class="method"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#182-245">source</a><h4 class="code-header">pub fn <a href="#method.get_physical_indices" class="fn">get_physical_indices</a>&lt;I&gt;(
     &amp;self,
     logical_indices: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[I]</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">Arro [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, ArrowError&gt;<div class="where">where
     I: ArrowNativeType,</div></h4></section></summary><div class="docblock"><p>Returns the physical indices of the input logical indices. Returns error if any of the logical
 index cannot be converted to physical index. The logical indices are sorted and iterated along
 with run_ends array to find matching physical index. The approach used here was chosen over
@@ -67,7 +67,7 @@ scaled well for larger inputs.
 See <a href="https://github.com/apache/arrow-rs/pull/3622#issuecomment-1407753727">https://github.com/apache/arrow-rs/pull/3622#issuecomment-1407753727</a> for more details.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#248-254">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.h [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-RunArray%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#305-388">source</a><a href="#impl-Array-for-RunArray%3CT%3E" class="anchor">§</a><h3 cla [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#310-312">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class=" [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#310-312">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class=" [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#338-340">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="http [...]
 null values of this array, if any. <a href="../trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#375-377">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&g [...]
diff --git a/arrow_array/array/run_array/struct.TypedRunArray.html b/arrow_array/array/run_array/struct.TypedRunArray.html
index 89ad9b8ed4f..68c0a64fa81 100644
--- a/arrow_array/array/run_array/struct.TypedRunArray.html
+++ b/arrow_array/array/run_array/struct.TypedRunArray.html
@@ -21,7 +21,7 @@
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#549-551">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a V</a></h4></section></summary><div class="docblock"><p>Returns the values of this <a hre [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.run_array" class="method"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#554-556">source</a><h4 class="code-header">pub fn <a href="#method.run_array" class="fn">run_array</a>(&amp;self) -&gt; &amp;'a <a class="struct" href="struct.RunArray.html" title="struct arrow_array::array::run_array::RunArray">RunArray</a>&lt;R&gt;</h4></section></summary><div class="docblock">< [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-TypedRunArray%3C'a,+R,+V%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#559-611">source</a><a href="#impl-Array-for-TypedRunArray%3C'a,+R,+V%3E" cla [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#564-566">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class=" [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#564-566">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class=" [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#592-594">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="http [...]
 null values of this array, if any. <a href="../trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#600-602">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&g [...]
diff --git a/arrow_array/array/run_array/type.Int16RunArray.html b/arrow_array/array/run_array/type.Int16RunArray.html
index 62b2c43a1b0..f5a9f27ece7 100644
--- a/arrow_array/array/run_array/type.Int16RunArray.html
+++ b/arrow_array/array/run_array/type.Int16RunArray.html
@@ -6,7 +6,7 @@
 <span class="macro">assert_eq!</span>(array.run_ends().values(), <span class="kw-2">&amp;</span>[<span class="number">2</span>, <span class="number">3</span>, <span class="number">5</span>]);
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16RunArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_e [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly [...]
\ No newline at end of file
diff --git a/arrow_array/array/run_array/type.Int32RunArray.html b/arrow_array/array/run_array/type.Int32RunArray.html
index 13dc1cdc577..7f00e4d5e9a 100644
--- a/arrow_array/array/run_array/type.Int32RunArray.html
+++ b/arrow_array/array/run_array/type.Int32RunArray.html
@@ -6,7 +6,7 @@
 <span class="macro">assert_eq!</span>(array.run_ends().values(), <span class="kw-2">&amp;</span>[<span class="number">2</span>, <span class="number">3</span>, <span class="number">5</span>]);
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32RunArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_e [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly [...]
\ No newline at end of file
diff --git a/arrow_array/array/run_array/type.Int64RunArray.html b/arrow_array/array/run_array/type.Int64RunArray.html
index 6d7e71db8f8..4629314dd3e 100644
--- a/arrow_array/array/run_array/type.Int64RunArray.html
+++ b/arrow_array/array/run_array/type.Int64RunArray.html
@@ -6,7 +6,7 @@
 <span class="macro">assert_eq!</span>(array.run_ends().values(), <span class="kw-2">&amp;</span>[<span class="number">2</span>, <span class="number">3</span>, <span class="number">5</span>]);
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64RunArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_e [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly [...]
\ No newline at end of file
diff --git a/arrow_array/array/string_array/type.GenericStringArray.html b/arrow_array/array/string_array/type.GenericStringArray.html
index 0c09ff88537..42648fdcf89 100644
--- a/arrow_array/array/string_array/type.GenericStringArray.html
+++ b/arrow_array/array/string_array/type.GenericStringArray.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericByteArray` for storing `str`"><title>GenericStringArray in arrow_array::array::string_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct GenericStringArray&lt;OffsetSize&gt; {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../../types/struct.GenericStringType.html" title="struct arrow_array::types::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt; as <a class="trait" href="../../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield. [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../../types/struc [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_chars" class="method"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#37-39">source</a><h4 class="code-header">pub fn <a href="#method.num_chars" class="fn">num_chars</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u [...]
 <h5 id="performance"><a class="doc-anchor" href="#performance">§</a>Performance</h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -22,7 +22,7 @@ please use the function <a href="#method.value_length"><code>value_length</code>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_binary" class="method"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#62-65">source</a><h4 class="code-header">pub fn <a href="#method.try_from_binary" class="fn">try_from_binary</a>(
     v: <a class="type" href="../binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray">GenericBinaryArray</a>&lt;OffsetSize&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray</code></a> [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray</code></a> from a <a href="../binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinar [...]
 an error if <a href="../binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray"><code>GenericBinaryArray</code></a> contains invalid UTF-8 data</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CGenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/string [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
diff --git a/arrow_array/array/string_array/type.LargeStringArray.html b/arrow_array/array/string_array/type.LargeStringArray.html
index b2d4d095475..5529e62b6e1 100644
--- a/arrow_array/array/string_array/type.LargeStringArray.html
+++ b/arrow_array/array/string_array/type.LargeStringArray.html
@@ -15,8 +15,8 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">2</span>), <span class="string">"bar"</span>);</code></pre></div>
 <p>See <a href="../byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct LargeStringArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield. [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/string_array/type.StringArray.html b/arrow_array/array/string_array/type.StringArray.html
index 6c9ff3e28b9..ff88b15c59e 100644
--- a/arrow_array/array/string_array/type.StringArray.html
+++ b/arrow_array/array/string_array/type.StringArray.html
@@ -14,8 +14,8 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">0</span>), <span class="string">"foo"</span>);</code></pre></div>
 <p>See <a href="../byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct StringArray {
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield. [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/struct.BooleanArray.html b/arrow_array/array/struct.BooleanArray.html
index 659626094f1..9f36d8c4dd6 100644
--- a/arrow_array/array/struct.BooleanArray.html
+++ b/arrow_array/array/struct.BooleanArray.html
@@ -72,7 +72,7 @@ each element of the provided arrays</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#259-261">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (BooleanBuffer, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section [...]
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-BooleanArray-1" class="impl"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#396-401">source</a><a href="#impl-BooleanArray-1" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="struct" href="boolean_array/struct.BooleanArray.html" title="struct arrow_array::array::boolean_array::BooleanArray">BooleanArray</a></h3></section></summa [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-BooleanArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#264-312">source</a><a href="#impl-Array-for-BooleanArray" class="anchor">§</a><h3 class="c [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#269-271">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struc [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#269-271">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struc [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#297-299">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://d [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.DictionaryArray.html b/arrow_array/array/struct.DictionaryArray.html
index 0056119600d..f3ed545e7cb 100644
--- a/arrow_array/array/struct.DictionaryArray.html
+++ b/arrow_array/array/struct.DictionaryArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of dictionary encoded values"><title>DictionaryArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-M [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;K&gt;,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
@@ -56,7 +56,7 @@ builder.append_value(<span class="string">"b"</span>);
 
 <span class="kw">let </span>values: Vec&lt;<span class="kw">_</span>&gt; = array.downcast_dict::&lt;StringArray&gt;().unwrap().into_iter().collect();
 <span class="macro">assert_eq!</span>(<span class="kw-2">&amp;</span>values, <span class="kw-2">&amp;</span>[<span class="prelude-val">Some</span>(<span class="string">"a"</span>), <span class="prelude-val">None</span>, <span class="prelude-val">Some</span>(<span class="string">"a"</span>), <span class="prelude-val">Some</span>(<span class="string">"b"</span>)]);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" clas [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arro [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
@@ -70,7 +70,7 @@ array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#289-314">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;K&gt;,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Attempt to create a new DictionaryArray with a specified keys
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempt to create a new DictionaryArray with a specified keys
 (indexes into the dictionary) and values (dictionary)
 array.</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
@@ -86,7 +86,7 @@ returns the corresponding key (index into the <code>values</code>
 array). Otherwise returns <code>None</code>.</p>
 <p>Panics if <code>values</code> is not a <a href="string_array/type.StringArray.html" title="type arrow_array::array::string_array::StringArray"><code>StringArray</code></a>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#367-369">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the dicti [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#372-374">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblo [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#372-374">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; DataType</h4></section></summary><div class="docblock"><p>Returns a clone of the value type of this list.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.len" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#377-379">source</a><h4 class="code-header">pub fn <a href="#method.len" class="fn">len</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>The length of the dictionary is the length of  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_empty" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#382-384">source</a><h4 class="code-header">pub fn <a href="#method.is_empty" class="fn">is_empty</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether this dictionary is empty</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_ordered" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#387-389">source</a><h4 class="code-header">pub fn <a href="#method.is_ordered" class="fn">is_ordered</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Currently exists for compat [...]
@@ -163,7 +163,7 @@ or this function may panic.</p>
 <p>For each value in <a href="dictionary_array/struct.DictionaryArray.html#method.values" title="method arrow_array::array::dictionary_array::DictionaryArray::values"><code>Self::values</code></a> the corresponding bit will be set in the
 returned mask if it is referenced by a key in this <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a></p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AnyDictionaryArray-for-DictionaryArray%3CK%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#994-1013">source</a><a href="#impl-AnyDictionaryArray-for-Dictio [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#699-701">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="st [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#699-701">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="st [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#727-729">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https: [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#752-754">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&gt; [...]
diff --git a/arrow_array/array/struct.FixedSizeBinaryArray.html b/arrow_array/array/struct.FixedSizeBinaryArray.html
index 9df23c7e159..44898699779 100644
--- a/arrow_array/array/struct.FixedSizeBinaryArray.html
+++ b/arrow_array/array/struct.FixedSizeBinaryArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of fixed size binary arrays"><title>FixedSizeBinaryArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSa [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -22,7 +22,7 @@ Sparsity means that the input argument can contain <code>None</code> items.</p>
    <span class="kw">let </span>arr = FixedSizeBinaryArray::try_from_sparse_iter_with_size(input_arg.into_iter(), <span class="number">2</span>).unwrap();
    <span class="macro">assert_eq!</span>(<span class="number">5</span>, arr.len())
 </code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_data" class="structfield section-header"><a href="#structfield.valu [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_data" class="structfield section-header"><a href="#structfield.value_data" class="anchor field">§</a><code>value_data: Buffer</code></span><span id="structfield.nulls" class="structfield  [...]
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="fixed_size_binary_array/struct.FixedSizeBinaryArray.html#method.try_new" title="associated function arrow_array::array::fixed_size_binary_array::FixedSizeBinaryArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_scalar" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#72-75">source</a><h4 class="code-header">pub fn <a href="#method.new_scalar" class="fn">new_scalar</a>(value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https:/ [...]
@@ -30,7 +30,7 @@ Sparsity means that the input argument can contain <code>None</code> items.</p>
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
     values: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="fixed_size_binary_array/struct.FixedSizeBinaryArray.html" title="struct arrow_array::array::fixed_size_binary_array::FixedSizeBinaryArray">< [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="fixed_size_binary_array/struct.FixedSizeBinaryArray.html" title="struct arrow_array::array::fixed_size_binary_array::FixedSizeBinaryArray"><code>FixedSizeBinaryArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>size &lt; 0</code></li>
@@ -59,7 +59,7 @@ Sparsity means that the input argument can contain <code>None</code> items.</p>
 allowing for zero-copy cloning.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_data" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#195-197">source</a><h4 class="code-header">pub fn <a href="#method.value_data" class="fn">value_data</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]">ⓘ</a></h4> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#200-215">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_sparse_iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#242-313">source</a><h4 class="code-header">pub fn <a href="#method.try_from_sparse_iter" class="fn">try_from_sparse_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Resu [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_sparse_iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#242-313">source</a><h4 class="code-header">pub fn <a href="#method.try_from_sparse_iter" class="fn">try_from_sparse_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Resu [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;U&gt;&gt;,
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,</div></h4></section><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated: This function will fail if the iterator produces only None values; prefer <code>try_from_sparse_iter_with_size</code></span></div></ [...]
 Sparsity means that items returned by the iterator are optional, i.e input argument can
@@ -80,7 +80,7 @@ contain <code>None</code> items.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_sparse_iter_with_size" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#339-390">source</a><h4 class="code-header">pub fn <a href="#method.try_from_sparse_iter_with_size" class="fn">try_from_sparse_iter_with_size</a>&lt;T, U&gt;(
     iter: T,
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;<div class="where">where
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;<div class="where">where
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;U&gt;&gt;,
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,</div></h4></section></summary><div class="docblock"><p>Create an array from an iterable argument of sparse byte slices.
 Sparsity means that items returned by the iterator are optional, i.e input argument can
@@ -100,7 +100,7 @@ created.</p>
 <span class="kw">let </span>array = FixedSizeBinaryArray::try_from_sparse_iter_with_size(input_arg.into_iter(), <span class="number">2</span>).unwrap();</code></pre></div>
 <h5 id="errors-2"><a class="doc-anchor" href="#errors-2">§</a>Errors</h5>
 <p>Returns error if argument has length zero, or sizes of nested slices don’t match.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#409-456">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a cl [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#409-456">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;T, U&gt;(iter: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, Arrow [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = U&gt;,
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,</div></h4></section></summary><div class="docblock"><p>Create an array from an iterable argument of byte slices.</p>
 <h5 id="examples-3"><a class="doc-anchor" href="#examples-3">§</a>Examples</h5>
@@ -115,7 +115,7 @@ created.</p>
 <p>Returns error if argument has length zero, or sizes of nested slices don’t match.</p>
 </div></details><section id="method.value_offset_at" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#459-461">source</a><h4 class="code-header">fn <a href="#method.value_offset_at" class="fn">value_offset_at</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></h4></secti [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-FixedSizeBinaryArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#576-624">source</a><a href="#impl-Array-for-FixedSizeBinaryArray" class= [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#581-583">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a cl [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#581-583">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a cl [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#609-611">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href= [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.FixedSizeListArray.html b/arrow_array/array/struct.FixedSizeListArray.html
index 86889b63182..9dfc3f1c83f 100644
--- a/arrow_array/array/struct.FixedSizeListArray.html
+++ b/arrow_array/array/struct.FixedSizeListArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of [fixed length lists], similar to JSON arrays (e.g. `[&quot;A&quot;, &quot;B&quot;]`)."><title>FixedSizeListArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac52 [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     value_length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
@@ -71,8 +71,8 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <span class="macro">assert_eq!</span>( <span class="kw-2">&amp;</span>[<span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>], list1.as_any().downcast_ref::&lt;Int32Array&gt;().unwrap().values());
 <span class="macro">assert_eq!</span>( <span class="kw-2">&amp;</span>[<span class="number">6</span>, <span class="number">7</span>, <span class="number">8</span>], list2.as_any().downcast_ref::&lt;Int32Array&gt;().unwrap().values());</code></pre></div>
 <p><a href="https://arrow.apache.org/docs/format/Columnar.html#fixed-size-list-layout">fixed size arrays</a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values"  [...]
-    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayR [...]
+    field: FieldRef,
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -80,11 +80,11 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="fixed_size_list_array/struct.FixedSizeListArray.html#method.try_new" title="associated function arrow_array::array::fixed_size_list_array::FixedSizeListArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#145-205">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="fixed_size_list_array/struct.FixedSizeListArray.html" title="struct arrow_array::array::fixed_size_list_array::FixedSizeListArray"><code>Fix [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="fixed_size_list_array/struct.FixedSizeListArray.html" title="struct arrow_array::array::fixed_size_list_array::FixedSizeListArray"><code>FixedSizeListArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>size &lt; 0</code></li>
@@ -92,16 +92,16 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <li><code>values.data_type() != field.data_type()</code></li>
 <li><code>!field.is_nullable() &amp;&amp; !nulls.expand(size).contains(values.logical_nulls())</code></li>
 </ul>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#215-224">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, size: <a class="primitive" href="https://doc.rust-lang.org [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#215-224">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: FieldRef, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/pr [...]
 <h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
 <p>Panics if</p>
 <ul>
 <li><code>size &lt; 0</code></li>
 <li><code>size * len</code> would overflow <code>usize</code></li>
 </ul>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#227-233">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (<a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, <a class="primitive" href="https://doc.rust-la [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#227-233">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (FieldRef, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>, <a class="type" href="type.ArrayRef.html" title="type arrow_array: [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#236-238">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the  [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#241-243">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="d [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#241-243">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; DataType</h4></section></summary><div class="docblock"><p>Returns a clone of the value type of this list.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#246-249">source</a><h4 class="code-header">pub fn <a href="#method.value" class="fn">value</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayR [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_offset" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#255-257">source</a><h4 class="code-header">pub fn <a href="#method.value_offset" class="fn">value_offset</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightl [...]
 <p>Note this doesn’t do any bound checking, for performance reason.</p>
@@ -124,7 +124,7 @@ are shown on the left, and the actual <code>FixedSizeListArray</code> encoding o
 <span class="macro">println!</span>(<span class="string">"{:?}"</span>, list_array);</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#337-339">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>(&amp;self) -&gt; <a class="type" href="../iterator/type.FixedSizeListIter.html" title="type arrow_array::iterator::FixedSizeListIter">FixedSizeListIter</a>&lt;'_&gt;</h4></section></summary><div class= [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-FixedSizeListArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#375-427">source</a><a href="#impl-Array-for-FixedSizeListArray" class="ancho [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#380-382">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a clas [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#380-382">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a clas [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#408-410">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="h [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.GenericByteArray.html b/arrow_array/array/struct.GenericByteArray.html
index 42e70837b44..c09b56f5c1e 100644
--- a/arrow_array/array/struct.GenericByteArray.html
+++ b/arrow_array/array/struct.GenericByteArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of variable length byte arrays"><title>GenericByteArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSan [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -30,7 +30,7 @@ builder.append_value(<span class="string">"world"</span>);
 <span class="kw">let </span>array = builder.finish();
 <span class="kw">let </span>values: Vec&lt;<span class="kw">_</span>&gt; = array.iter().collect();
 <span class="macro">assert_eq!</span>(values, <span class="kw-2">&amp;</span>[<span class="prelude-val">Some</span>(<span class="string">"hello"</span>), <span class="prelude-val">None</span>, <span class="prelude-val">Some</span>(<span class="string">"world"</span>)]);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.v [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../types [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_vec" class="method"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#36-38">source</a><h4 class="code-header">pub fn <a href="#method.from_vec" class="fn">from_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std [...]
 <p>See also <a href="byte_array/struct.GenericByteArray.html#method.from_iter_values" title="associated function arrow_array::array::byte_array::GenericByteArray::from_iter_values"><code>Self::from_iter_values</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_opt_vec" class="method"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#41-43">source</a><h4 class="code-header">pub fn <a href="#method.from_opt_vec" class="fn">from_opt_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/co [...]
@@ -44,7 +44,7 @@ builder.append_value(<span class="string">"world"</span>);
 ) -&gt; impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;&gt; + 'a</h4></section></summary><div class="docblock"><p>Retur [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</code></p>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#105-415">source</a><a href="#impl-GenericByteArray%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T: <a class="trait" href="../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt; <a class="struct" href="by [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#105-415">source</a><a href="#impl-GenericByteArray%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T: <a class="trait" href="../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt; <a class="struct" href="by [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#114-120">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
     offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: Buffer,
@@ -56,7 +56,7 @@ builder.append_value(<span class="string">"world"</span>);
     offsets: OffsetBuffer&lt;T::<a class="associatedtype" href="../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> f [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>offsets.len() - 1 != nulls.len()</code></li>
@@ -97,7 +97,7 @@ allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#324-331">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.htm [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_builder" class="method"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#335-414">source</a><h4 class="code-header">pub fn <a href="#method.into_builder" class="fn">into_builder</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../builder/generic [...]
 offset and data buffers are not shared by others.</p>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#25-66">source</a><a href="#impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="list_array/trait.OffsetSizeTrait.html" title="trait arrow_ [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#25-66">source</a><a href="#impl-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="list_array/trait.OffsetSizeTrait.html" title="trait arrow_ [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_chars" class="method"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#37-39">source</a><h4 class="code-header">pub fn <a href="#method.num_chars" class="fn">num_chars</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usiz [...]
 <h5 id="performance"><a class="doc-anchor" href="#performance">§</a>Performance</h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -115,10 +115,10 @@ please use the function <a href="#method.value_length"><code>value_length</code>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_binary" class="method"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#62-65">source</a><h4 class="code-header">pub fn <a href="#method.try_from_binary" class="fn">try_from_binary</a>(
     v: <a class="type" href="binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray">GenericBinaryArray</a>&lt;OffsetSize&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="string_array/type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray< [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="string_array/type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray</code></a> from a <a href="binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::Ge [...]
 an error if <a href="binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray"><code>GenericBinaryArray</code></a> contains invalid UTF-8 data</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-GenericByteArray%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#427-476">source</a><a href="#impl-Array-for-GenericByteArray%3CT%3E" class="anchor [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#432-434">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct"  [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#432-434">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct"  [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#460-462">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc. [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.GenericByteViewArray.html b/arrow_array/array/struct.GenericByteViewArray.html
index e3beddb2e7d..760b781c8aa 100644
--- a/arrow_array/array/struct.GenericByteViewArray.html
+++ b/arrow_array/array/struct.GenericByteViewArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Variable-size Binary View Layout: An array of variable length bytes view arrays."><title>GenericByteViewArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,Fi [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;T&gt;,
@@ -58,7 +58,7 @@ view. In this case, the same bytes for “Fish” are used to store both strings
                                  u128 &quot;views&quot;                              │Yay│
                                                                   buffer 0 │...│
                                                                            └───┘
-</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.views" class="structfield section-header"><a href="#st [...]
+</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" class="anchor field">§</a><code>views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang [...]
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -69,7 +69,7 @@ view. In this case, the same bytes for “Fish” are used to store both strings
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="byte_view_array/struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericByteViewArray"><code>GenericByte [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="byte_view_array/struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_array::GenericByteViewArray"><code>GenericByteViewArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <ul>
 <li><code>views.len() != nulls.len()</code></li>
@@ -129,14 +129,14 @@ that is pointed to by the views.</p>
 <p>Note that it will copy the array regardless of whether the original array is compact.
 Use with caution as this can be an expensive operation, only use it when you are sure that the view
 array is significantly smaller than when it is originally created, e.g., after filtering or slicing.</p>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteViewArray%3CBinaryViewType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#465-479">source</a><a href="#impl-GenericByteViewArray%3CBinaryViewType%3E" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="byte_view_array/struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_arr [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteViewArray%3CBinaryViewType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#465-479">source</a><a href="#impl-GenericByteViewArray%3CBinaryViewType%3E" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="byte_view_array/struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_arr [...]
 If items not utf8 data, validate will fail and error returned.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_string_view_unchecked" class="method"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#476-478">source</a><h4 class="code-header">pub unsafe fn <a href="#method.to_string_view_unchecked" class="fn">to_string_view_unchecked</a>(self) -&gt; <a class="type" href="byte_view_array/type.StringViewArray.html" title="type arrow_array::array::byte_view_array::StringViewArra [...]
 <h5 id="safety-2"><a class="doc-anchor" href="#safety-2">§</a>Safety</h5>
 <p>Caller is responsible for ensuring that items in array are utf8 data.</p>
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericByteViewArray%3CStringViewType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#504-509">source</a><a href="#impl-GenericByteViewArray%3CStringViewType%3E" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="byte_view_array/struct.GenericByteViewArray.html" title="struct arrow_array::array::byte_view_arr [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-GenericByteViewArray%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#330-379">source</a><a href="#impl-Array-for-GenericByteViewArray%3CT%3E"  [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#335-337">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="str [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#335-337">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="str [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#363-365">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https:/ [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.GenericListArray.html b/arrow_array/array/struct.GenericListArray.html
index d2fe812bf8e..8027fe3c1c6 100644
--- a/arrow_array/array/struct.GenericListArray.html
+++ b/arrow_array/array/struct.GenericListArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of variable length lists, similar to JSON arrays (e.g. `[&quot;A&quot;, &quot;B&quot;, &quot;C&quot;]`)."><title>GenericListArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular- [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     value_offsets: OffsetBuffer&lt;OffsetSize&gt;,
@@ -58,15 +58,15 @@ the actual <code>ListArray</code> encoding on the right.</p>
                                         └ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
 
 
-</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#st [...]
+</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/opt [...]
 The input is the schema of the child array and
-the output is the <a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a>, List or LargeList.</p>
+the output is the [<code>DataType</code>], List or LargeList.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#165-215">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;OffsetSize&gt;,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="list_array/struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a> f [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="list_array/struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a> from the provided parts</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <p>Errors if</p>
 <ul>
@@ -76,22 +76,22 @@ the output is the <a href="../../arrow_schema/datatype/enum.DataType.html" title
 <li><code>field.data_type() != values.data_type()</code></li>
 </ul>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#222-229">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
-    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;OffsetSize&gt;,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href="list_array/struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a> from the provided parts</p>
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="list_array/struct.GenericListArray.html#method.try_new" title="associated function arrow_array::array::list_array::GenericListArray::try_new"><code>Self::try_new</code></a> returns an error</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#232-240">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#232-240">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(field: FieldRef, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#243-256">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, OffsetBuffer&lt;OffsetSize&gt;, <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section></summary><div class="docblock"><p>Deconstruct this array into it [...]
+) -&gt; (FieldRef, OffsetBuffer&lt;OffsetSize&gt;, <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section></summary><div class="docblock"><p>Deconstruct this array into its constituent parts</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.offsets" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#263-265">source</a><h4 class="code-header">pub fn <a href="#method.offsets" class="fn">offsets</a>(&amp;self) -&gt; &amp;OffsetBuffer&lt;OffsetSize&gt;</h4></section></summary><div class="docblock"><p>Returns a reference to the offsets of this list</p>
 <p>Unlike <a href="list_array/struct.GenericListArray.html#method.value_offsets" title="method arrow_array::array::list_array::GenericListArray::value_offsets"><code>Self::value_offsets</code></a> this returns the [<code>OffsetBuffer</code>]
 allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#269-271">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the values of t [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#274-276">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock"><p [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#274-276">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; DataType</h4></section></summary><div class="docblock"><p>Returns a clone of the value type of this list.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_unchecked" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#281-285">source</a><h4 class="code-header">pub unsafe fn <a href="#method.value_unchecked" class="fn">value_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="type.ArrayRef.html" title="type  [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>Caller must ensure that the index is within the array bounds</p>
@@ -99,7 +99,7 @@ allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_offsets" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#296-298">source</a><h4 class="code-header">pub fn <a href="#method.value_offsets" class="fn">value_offsets</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[OffsetSize]</a></h4></section></summary><div class="docblock"><p>Returns th [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_length" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#302-305">source</a><h4 class="code-header">pub fn <a href="#method.value_length" class="fn">value_length</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; OffsetSize</h4></section></summary><div class="docblock"><p>Returns th [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#308-310">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>&lt;'a&gt;(&amp;'a self) -&gt; <a class="type" href="../iterator/type.GenericListArrayIter.html" title="type arrow_array::iterator::GenericListArrayIter">GenericListArrayIter</a>&lt;'a, OffsetSize&gt;</h4></sectio [...]
-</div></details><section id="method.get_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#313-320">source</a><h4 class="code-header">fn <a href="#method.get_type" class="fn">get_type</a>(data_type: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core:: [...]
+</div></details><section id="method.get_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#313-320">source</a><h4 class="code-header">fn <a href="#method.get_type" class="fn">get_type</a>(data_type: &amp;DataType) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;DataType&gt;</h4></section><details class="toggle method-toggle" open><summary><secti [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_iter_primitive" class="method"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#347-370">source</a><h4 class="code-header">pub fn <a href="#method.from_iter_primitive" class="fn">from_iter_primitive</a>&lt;T, P, I&gt;(iter: I) -&gt; Self<div class="where">where
     T: <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>,
     P: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&lt;T as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class [...]
@@ -114,8 +114,8 @@ allowing for zero-copy cloning</p>
 ];
 <span class="kw">let </span>list_array = ListArray::from_iter_primitive::&lt;Int32Type, <span class="kw">_</span>, <span class="kw">_</span>&gt;(data);
 <span class="macro">println!</span>(<span class="string">"{:?}"</span>, list_array);</code></pre></div>
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericListArray%3COffsetSize%3E-1" class="impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#411-457">source</a><a href="#impl-GenericListArray%3COffsetSize%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="list_array/trait.OffsetSizeTrait.html" title="trait arrow_array::array::list_array::OffsetSizeTrait" [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#464-466">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct"  [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericListArray%3COffsetSize%3E-1" class="impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#411-457">source</a><a href="#impl-GenericListArray%3COffsetSize%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize: <a class="trait" href="list_array/trait.OffsetSizeTrait.html" title="trait arrow_array::array::list_array::OffsetSizeTrait" [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#464-466">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct"  [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#492-494">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc. [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.MapArray.html b/arrow_array/array/struct.MapArray.html
index 61ded5562c8..b529703b22c 100644
--- a/arrow_array/array/struct.MapArray.html
+++ b/arrow_array/array/struct.MapArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of key-value maps"><title>MapArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970 [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     entries: <a class="struct" href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
@@ -8,15 +8,15 @@
 <p><a href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a> is physically a <a href="list_array/type.ListArray.html" title="type arrow_array::array::list_array::ListArray"><code>ListArray</code></a> of key values pairs stored as an <code>entries</code>
 <a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> with 2 child fields.</p>
 <p>See <a href="../builder/map_builder/struct.MapBuilder.html" title="struct arrow_array::builder::map_builder::MapBuilder"><code>MapBuilder</code></a> for how to construct a <a href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" cl [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.htm [...]
 </div><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</code></span><div class="docblock"><p>The start and end offsets of each entry</p>
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-MapArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#45-233">source</a><a href="#impl-MapArray" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="map_array/struct.MapArray.html" title="struct ar [...]
-    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     entries: <a class="struct" href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a> from the provided parts</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a> from the provided parts</p>
 <p>See <a href="../builder/map_builder/struct.MapBuilder.html" title="struct arrow_array::builder::map_builder::MapBuilder"><code>MapBuilder</code></a> for a higher-level interface
 to construct a <a href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
@@ -30,7 +30,7 @@ to construct a <a href="map_array/struct.MapArray.html" title="struct arrow_arra
 <li><code>field.data_type() != entries.data_type()</code></li>
 </ul>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#125-133">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
-    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
+    field: FieldRef,
     offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     entries: <a class="struct" href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
@@ -42,15 +42,15 @@ to construct a <a href="map_array/struct.MapArray.html" title="struct arrow_arra
 <p>Panics if <a href="map_array/struct.MapArray.html#method.try_new" title="associated function arrow_array::array::map_array::MapArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#136-150">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>, OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;, <a class="struct" href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::o [...]
+) -&gt; (FieldRef, OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;, <a class="struct" href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a>, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/prim [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.offsets" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#157-159">source</a><h4 class="code-header">pub fn <a href="#method.offsets" class="fn">offsets</a>(&amp;self) -&gt; &amp;OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</h4></section></summary><div class="docblock"><p>Returns a reference  [...]
 <p>Unlike <a href="map_array/struct.MapArray.html#method.value_offsets" title="method arrow_array::array::map_array::MapArray::value_offsets"><code>Self::value_offsets</code></a> this returns the [<code>OffsetBuffer</code>]
 allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.keys" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#162-164">source</a><h4 class="code-header">pub fn <a href="#method.keys" class="fn">keys</a>(&amp;self) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the keys of this map</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#167-169">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Returns a reference to the values of th [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.entries" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#172-174">source</a><h4 class="code-header">pub fn <a href="#method.entries" class="fn">entries</a>(&amp;self) -&gt; &amp;<a class="struct" href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray">StructArray</a></h4></section></summary><div class="docbloc [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.key_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#177-179">source</a><h4 class="code-header">pub fn <a href="#method.key_type" class="fn">key_type</a>(&amp;self) -&gt; &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock"><p>R [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#182-184">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.key_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#177-179">source</a><h4 class="code-header">pub fn <a href="#method.key_type" class="fn">key_type</a>(&amp;self) -&gt; &amp;DataType</h4></section></summary><div class="docblock"><p>Returns the data type of the map’s keys.</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.value_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#182-184">source</a><h4 class="code-header">pub fn <a href="#method.value_type" class="fn">value_type</a>(&amp;self) -&gt; &amp;DataType</h4></section></summary><div class="docblock"><p>Returns the data type of the map’s values.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_unchecked" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#190-195">source</a><h4 class="code-header">pub unsafe fn <a href="#method.value_unchecked" class="fn">value_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="struct_array/struct.StructArray [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>Caller must ensure that the index is within the array bounds</p>
@@ -60,13 +60,13 @@ allowing for zero-copy cloning</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_length" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#214-217">source</a><h4 class="code-header">pub fn <a href="#method.value_length" class="fn">value_length</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primit [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#220-227">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#230-232">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>(&amp;self) -&gt; <a class="type" href="../iterator/type.MapArrayIter.html" title="type arrow_array::iterator::MapArrayIter">MapArrayIter</a>&lt;'_&gt;</h4></section></summary><div class="docblock"><p>constructs a  [...]
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-MapArray-1" class="impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#255-344">source</a><a href="#impl-MapArray-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h3></section></summary><div class="impl-items"><section id="me [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-MapArray-1" class="impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#255-344">source</a><a href="#impl-MapArray-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h3></section></summary><div class="impl-items"><section id="me [...]
     keys: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = &amp;'a <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,
     values: &amp;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>,
     entry_offsets: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>],
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates map array from provided keys, values and entry_offsets.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates map array from provided keys, values and entry_offsets.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-MapArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#346-400">source</a><a href="#impl-Array-for-MapArray" class="anchor">§</a><h3 class="code-header"> [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#351-353">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" h [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#351-353">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" h [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#379-381">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc.r [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.NullArray.html b/arrow_array/array/struct.NullArray.html
index fb3ec9508a2..890d7113164 100644
--- a/arrow_array/array/struct.NullArray.html
+++ b/arrow_array/array/struct.NullArray.html
@@ -13,13 +13,13 @@
 <span class="macro">assert_eq!</span>(array.logical_nulls().unwrap().null_count(), <span class="number">10</span>);</code></pre></div>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor field">§</a><code>len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list" [...]
 <p><em>Note</em>: Use <a href="fn.new_null_array.html" title="fn arrow_array::array::new_null_array"><code>crate::array::new_null_array</code></a> if you need an array of some
-other <a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a>.</p>
+other [<code>DataType</code>].</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#60-67">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">us [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.builder" class="method"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#73-75">source</a><h4 class="code-header">pub fn <a href="#method.builder" class="fn">builder</a>(_capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../builder/null_builder/struct.NullBuilder.html" title="struct arr [...]
 <p>Note that the <code>capacity</code> parameter to this function is <em>deprecated</em>. It
 now does nothing, and will be removed in a future version.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-NullArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#78-130">source</a><a href="#impl-Array-for-NullArray" class="anchor">§</a><h3 class="code-header [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#83-85">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" hr [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#83-85">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" hr [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#111-113">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc. [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#119-121">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&gt; <a cl [...]
diff --git a/arrow_array/array/struct.PrimitiveArray.html b/arrow_array/array/struct.PrimitiveArray.html
index 1bccf21d11d..a1ea43c62c3 100644
--- a/arrow_array/array/struct.PrimitiveArray.html
+++ b/arrow_array/array/struct.PrimitiveArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of primitive values, of type `ArrowPrimitiveType`"><title>PrimitiveArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843 [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of primitive values, of type <a href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a></p>
@@ -41,7 +41,7 @@ builder.append_value(<span class="number">2</span>);
 </span><span class="macro">assert_eq!</span>(<span class="kw-2">&amp;</span>DataType::Float32, array.data_type());
 <span class="kw">let </span>f32_array: Float32Array  = array.as_primitive().clone();
 <span class="macro">assert_eq!</span>(f32_array, Float32Array::from(<span class="macro">vec!</span>[<span class="number">1.2</span>, <span class="number">2.3</span>]));</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values"  [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitive [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" op [...]
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="primitive_array/struct.PrimitiveArray.html#method.try_new" title="associated function arrow_array::array::primitive_array::PrimitiveArray::try_new"><code>Self::try_new</code></a> returns an error</p>
@@ -58,7 +58,7 @@ this constructor is the most performant approach, avoiding any additional alloca
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#554-573">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     values: ScalarBuffer&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></ [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> from the provided values and nulls</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <p>Errors if:</p>
 <ul>
@@ -67,18 +67,18 @@ this constructor is the most performant approach, avoiding any additional alloca
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_scalar" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#576-582">source</a><h4 class="code-header">pub fn <a href="#method.new_scalar" class="fn">new_scalar</a>(value: T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>) -&gt; <a clas [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#585-587">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>, ScalarBuffer&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section> [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#597-600">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; Self</h4></section></sum [...]
+) -&gt; (DataType, ScalarBuffer&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;)</h4></section></summary><div class="docblock"><p>Deconstruct this array into its constituent parts</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#597-600">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: DataType) -&gt; Self</h4></section></summary><div class="docblock"><p>Overrides the [<code>DataType</code>] of this <a href="primitive_array/struct.PrimitiveArr [...]
 <p>Prefer using <a href="primitive_array/struct.PrimitiveArray.html#method.with_timezone" title="method arrow_array::array::primitive_array::PrimitiveArray::with_timezone"><code>Self::with_timezone</code></a> or <a href="primitive_array/struct.PrimitiveArray.html#method.with_precision_and_scale" title="method arrow_array::array::primitive_array::PrimitiveArray::with_precision_and_scale"><code>Self::with_precision_and_scale</code></a> where
 the primitive type is suitably constrained, as these cannot panic</p>
 <h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
 <p>Panics if ![Self::is_compatible]</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.assert_compatible" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#603-610">source</a><h4 class="code-header">fn <a href="#method.assert_compatible" class="fn">assert_compatible</a>(data_type: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>)</h4></section></summary><d [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.assert_compatible" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#603-610">source</a><h4 class="code-header">fn <a href="#method.assert_compatible" class="fn">assert_compatible</a>(data_type: &amp;DataType)</h4></section></summary><div class="docblock"><p>Asserts that <code>data_type</code> is compatible with <code>Self</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.len" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#614-616">source</a><h4 class="code-header">pub fn <a href="#method.len" class="fn">len</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the length of this array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_empty" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#619-621">source</a><h4 class="code-header">pub fn <a href="#method.is_empty" class="fn">is_empty</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns whether this array is empty.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#625-627">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; &amp;ScalarBuffer&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.builder" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#630-632">source</a><h4 class="code-header">pub fn <a href="#method.builder" class="fn">builder</a>(capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../builder/primitive_builder/struct.PrimitiveBuilder.html" t [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.is_compatible" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#638-647">source</a><h4 class="code-header">pub fn <a href="#method.is_compatible" class="fn">is_compatible</a>(data_type: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; <a class="primitive" href="h [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.is_compatible" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#638-647">source</a><h4 class="code-header">pub fn <a href="#method.is_compatible" class="fn">is_compatible</a>(data_type: &amp;DataType) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Retu [...]
 <p>This is equivalent to <code>data_type == T::DATA_TYPE</code>, however ignores timestamp
 timezones and decimal precision and scale</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.value_unchecked" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#655-657">source</a><h4 class="code-header">pub unsafe fn <a href="#method.value_unchecked" class="fn">value_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; T::<a class="associatedtype" href="../types/trait [...]
@@ -235,13 +235,13 @@ I.e. that <code>size_hint().1</code> correctly reports its length.</p>
     self,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
     scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Returns a Decimal array with the same data as self, with the
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Returns a Decimal array with the same data as self, with the
 specified precision and scale.</p>
 <p>See <a href="../types/fn.validate_decimal_precision_and_scale.html" title="fn arrow_array::types::validate_decimal_precision_and_scale"><code>validate_decimal_precision_and_scale</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.validate_decimal_precision" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1483-1492">source</a><h4 class="code-header">pub fn <a href="#method.validate_decimal_precision" class="fn">validate_decimal_precision</a>(
     &amp;self,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Validates values in this array can be properly interpreted
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Validates values in this array can be properly interpreted
 with the specified precision.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.null_if_overflow_precision" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1496-1500">source</a><h4 class="code-header">pub fn <a href="#method.null_if_overflow_precision" class="fn">null_if_overflow_precision</a>(&amp;self, precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>) -&gt; Self</h4></section> [...]
 will be casted to Null</p>
@@ -249,7 +249,7 @@ will be casted to Null</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.precision" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1508-1532">source</a><h4 class="code-header">pub fn <a href="#method.precision" class="fn">precision</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a></h4></section></summary><div class="docblock"><p>Returns the decimal precision of  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.scale" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1535-1559">source</a><h4 class="code-header">pub fn <a href="#method.scale" class="fn">scale</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></h4></section></summary><div class="docblock"><p>Returns the decimal scale of this array</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-PrimitiveArray%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1051-1099">source</a><a href="#impl-Array-for-PrimitiveArray%3CT%3E" class="anc [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1056-1058">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="s [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1056-1058">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="s [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1084-1086">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct.RunArray.html b/arrow_array/array/struct.RunArray.html
index 3d2f571e9b4..b56892fc509 100644
--- a/arrow_array/array/struct.RunArray.html
+++ b/arrow_array/array/struct.RunArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of run-end encoded values"><title>RunArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;R::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     values: <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of <a href="https://arrow.apache.org/docs/format/Columnar.html#run-end-encoded-layout">run-end encoded values</a></p>
@@ -26,12 +26,12 @@ stores the value of each run. Below example illustrates how a logical array is r
   
                                             Logical array
                                                Contents
-</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href=" [...]
+</code></pre></div></div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;R::<a class="associatedtype" href="../t [...]
 by the given run_ends array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#94-119">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     run_ends: &amp;<a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;R&gt;,
     values: &amp;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Attempts to create RunArray using given run_ends (index where a run ends)
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempts to create RunArray using given run_ends (index where a run ends)
 and the values (value of the run). Returns an error if the given data is not compatible
 with RunEndEncoded specification.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.run_ends" class="method"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#122-124">source</a><h4 class="code-header">pub fn <a href="#method.run_ends" class="fn">run_ends</a>(&amp;self) -&gt; &amp;RunEndBuffer&lt;R::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native [...]
@@ -57,7 +57,7 @@ Performs a binary search on the run_ends array for the input index.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_physical_indices" class="method"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#182-245">source</a><h4 class="code-header">pub fn <a href="#method.get_physical_indices" class="fn">get_physical_indices</a>&lt;I&gt;(
     &amp;self,
     logical_indices: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[I]</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowEr [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, ArrowError&gt;<div class="where">where
     I: ArrowNativeType,</div></h4></section></summary><div class="docblock"><p>Returns the physical indices of the input logical indices. Returns error if any of the logical
 index cannot be converted to physical index. The logical indices are sorted and iterated along
 with run_ends array to find matching physical index. The approach used here was chosen over
@@ -67,7 +67,7 @@ scaled well for larger inputs.
 See <a href="https://github.com/apache/arrow-rs/pull/3622#issuecomment-1407753727">https://github.com/apache/arrow-rs/pull/3622#issuecomment-1407753727</a> for more details.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#248-254">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-RunArray%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#305-388">source</a><a href="#impl-Array-for-RunArray%3CT%3E" class="anchor">§</a><h3 class= [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#310-312">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" h [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#310-312">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" h [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#338-340">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc.r [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#375-377">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&gt; <a cla [...]
diff --git a/arrow_array/array/struct.StructArray.html b/arrow_array/array/struct.StructArray.html
index ca59808d672..d8ddfb2b4f9 100644
--- a/arrow_array/array/struct.StructArray.html
+++ b/arrow_array/array/struct.StructArray.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of structs"><title>StructArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388 [...]
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     fields: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of <a href="https://arrow.apache.org/docs/format/Columnar.html#struct-layout">structs</a></p>
@@ -11,7 +11,7 @@ same length.</p>
 <p>However, there are a couple of key differences:</p>
 <ul>
 <li><a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> can be nested within other <a href="trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a>, including itself</li>
-<li><a href="../record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBatch</code></a> can contain top-level metadata on its associated <a href="../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema"><code>Schema</code></a></li>
+<li><a href="../record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBatch</code></a> can contain top-level metadata on its associated [<code>Schema</code>][arrow_schema::Schema]</li>
 <li><a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> can contain top-level nulls, i.e. <code>null</code></li>
 <li><a href="../record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBatch</code></a> can only represent nulls in its child columns, i.e. <code>{&quot;field&quot;: null}</code></li>
 </ul>
@@ -44,18 +44,18 @@ is no way to preserve them.</p>
 <span class="macro">assert_eq!</span>(<span class="number">4</span>, struct_array.len());
 <span class="macro">assert_eq!</span>(<span class="number">0</span>, struct_array.null_count());
 <span class="macro">assert_eq!</span>(<span class="number">0</span>, struct_array.offset());</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor field">§</a><code>len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: < [...]
-    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor field">§</a><code>len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: D [...]
+    fields: Fields,
     arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided parts, panicking on failure</p>
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="struct_array/struct.StructArray.html#method.try_new" title="associated function arrow_array::array::struct_array::StructArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#104-164">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+    fields: Fields,
     arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the pro [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <p>Errors if</p>
 <ul>
@@ -65,9 +65,9 @@ is no way to preserve them.</p>
 <li><code>arrays[i].len() != nulls.len()</code></li>
 <li><code>!fields[i].is_nullable() &amp;&amp; !nulls.contains(arrays[i].nulls())</code></li>
 </ul>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#167-179">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightl [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#167-179">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(fields: Fields, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a hre [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_unchecked" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#186-198">source</a><h4 class="code-header">pub unsafe fn <a href="#method.new_unchecked" class="fn">new_unchecked</a>(
-    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+    fields: Fields,
     arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided parts without validation</p>
@@ -76,20 +76,20 @@ is no way to preserve them.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_empty_fields" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#205-215">source</a><h4 class="code-header">pub fn <a href="#method.new_empty_fields" class="fn">new_empty_fields</a>(len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/opt [...]
 <h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
 <p>If <code>len != nulls.len()</code></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#218-224">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (<a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>, <a class="struct" href="https://doc.rust-lang.org/nig [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#218-224">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (Fields, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" ti [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.column" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#227-229">source</a><h4 class="code-header">pub fn <a href="#method.column" class="fn">column</a>(&amp;self, pos: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::Array [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_columns" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#232-234">source</a><h4 class="code-header">pub fn <a href="#method.num_columns" class="fn">num_columns</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Return the number of field [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.columns" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#237-239">source</a><h4 class="code-header">pub fn <a href="#method.columns" class="fn">columns</a>(&amp;self) -&gt; &amp;[<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>]</h4></section></summary><div class="docblock"><p>Returns the fields of the struc [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.columns_ref" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#243-245">source</a><h4 class="code-header">pub fn <a href="#method.columns_ref" class="fn">columns_ref</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" tit [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.column_names" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#248-256">source</a><h4 class="code-header">pub fn <a href="#method.column_names" class="fn">column_names</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&amp;<a class="primitive" href="https://do [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.fields" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#259-264">source</a><h4 class="code-header">pub fn <a href="#method.fields" class="fn">fields</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a></h4></section></summary><div class="docblock"><p>Returns  [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.fields" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#259-264">source</a><h4 class="code-header">pub fn <a href="#method.fields" class="fn">fields</a>(&amp;self) -&gt; &amp;Fields</h4></section></summary><div class="docblock"><p>Returns the [<code>Fields</code>] of this <a href="struct_array/struct.StructArray.html" title="struct arrow_array::array::str [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.column_by_name" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#271-276">source</a><h4 class="code-header">pub fn <a href="#method.column_by_name" class="fn">column_by_name</a>(&amp;self, column_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nig [...]
 <p>Note: A schema can currently have duplicate field names, in which case
 the first field will always be selected.
 This issue will be addressed in <a href="https://issues.apache.org/jira/browse/ARROW-11178">ARROW-11178</a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#279-293">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-StructArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#343-396">source</a><a href="#impl-Array-for-StructArray" class="anchor">§</a><h3 class="code [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#348-350">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#348-350">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#376-378">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://do [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
@@ -98,7 +98,7 @@ since multiple arrays can share the same buffers or slices thereof.</div></detai
 This value will always be greater than returned by <code>get_buffer_memory_size()</code> and
 includes the overhead of the data structures that contain the pointers to the various buffers.</div></details><details class="toggle method-toggle" open><summary><section id="method.logical_nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#212-214">source</a><a href="#method.logical_nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.logical_nulls" class="fn">logical_nulls</a>(&amp;self) -&gt; <a cla [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_null" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#237-239">source</a><a href="#method.is_null" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_null" class="fn">is_null</a>(&amp;self, index: <a class="primitive" href=" [...]
-opposite of <a href="trait.Array.html#method.is_null"><code>Self::is_null</code></a>. <a href="trait.Array.html#method.is_valid">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#273-275">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.null_count" class="fn">nu [...]
+opposite of <a href="trait.Array.html#method.is_null"><code>Self::is_null</code></a>. <a href="trait.Array.html#method.is_valid">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#273-275">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.null_count" class="fn">nu [...]
 <p>Note: A schema can currently have duplicate field names, in which case
 the first field will always be selected.
 This issue will be addressed in <a href="https://issues.apache.org/jira/browse/ARROW-11178">ARROW-11178</a></p>
@@ -106,8 +106,8 @@ This issue will be addressed in <a href="https://issues.apache.org/jira/browse/A
 <p>Panics if the name is not in the schema.</p>
 </div></details><details class="toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl"><a href="#associatedtype.Output" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" hr [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#324-341">source</a><a href="#impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="anchor">§</a><h3 class="code-header">impl <a cla [...]
-</div></details><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a></h4></section></summary><di [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#324-341">source</a><a href="#impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="anchor">§</a><h3 class="code-header">impl <a cla [...]
+</div></details><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = ArrowError</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details></div></details></div><h2 id=" [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/array/struct.TypedDictionaryArray.html b/arrow_array/array/struct.TypedDictionaryArray.html
index 574fa47c62d..e3a4ef858a6 100644
--- a/arrow_array/array/struct.TypedDictionaryArray.html
+++ b/arrow_array/array/struct.TypedDictionaryArray.html
@@ -20,7 +20,7 @@
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-TypedDictionaryArray%3C'a,+K,+V%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#816-826">source</a><a href="#impl-TypedDictionaryArray%3C'a,+K,+V%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, K: <a [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#823-825">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a V</a></h4></section></summary><div class="docblock"><p>Returns the values of this <a [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-TypedDictionaryArray%3C'a,+K,+V%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#828-880">source</a><a href="#impl-Array-for-TypedDictionaryArray% [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#833-835">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="st [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#833-835">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="st [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#861-863">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https: [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#869-871">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&gt; [...]
diff --git a/arrow_array/array/struct.TypedRunArray.html b/arrow_array/array/struct.TypedRunArray.html
index 26bdbde2b20..f86f63ca2dc 100644
--- a/arrow_array/array/struct.TypedRunArray.html
+++ b/arrow_array/array/struct.TypedRunArray.html
@@ -21,7 +21,7 @@
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#549-551">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a V</a></h4></section></summary><div class="docblock"><p>Returns the values of this <a href=" [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.run_array" class="method"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#554-556">source</a><h4 class="code-header">pub fn <a href="#method.run_array" class="fn">run_array</a>(&amp;self) -&gt; &amp;'a <a class="struct" href="run_array/struct.RunArray.html" title="struct arrow_array::array::run_array::RunArray">RunArray</a>&lt;R&gt;</h4></section></summary><div class="docb [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-TypedRunArray%3C'a,+R,+V%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#559-611">source</a><a href="#impl-Array-for-TypedRunArray%3C'a,+R,+V%3E" class= [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#564-566">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" h [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#564-566">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" h [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#592-594">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc.r [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_nullable" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#600-602">source</a><a href="#method.is_nullable" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_nullable" class="fn">is_nullable</a>(&amp;self) -&gt; <a cla [...]
diff --git a/arrow_array/array/struct.UnionArray.html b/arrow_array/array/struct.UnionArray.html
index 17f56487f83..bf7d49576d7 100644
--- a/arrow_array/array/struct.UnionArray.html
+++ b/arrow_array/array/struct.UnionArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of values of varying types"><title>UnionArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8 [...]
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     offsets: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;,
     fields: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;&gt;,
@@ -85,8 +85,8 @@ for examples.</p>
 
 <span class="kw">let </span>value = array.value(<span class="number">2</span>).as_any().downcast_ref::&lt;Int32Array&gt;().unwrap().value(<span class="number">0</span>);
 <span class="macro">assert_eq!</span>(<span class="number">34</span>, value);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.type_ids" class="structfield section-header"><a href="#structfield.type_i [...]
-    fields: <a class="struct" href="../../arrow_schema/fields/struct.UnionFields.html" title="struct arrow_schema::fields::UnionFields">UnionFields</a>,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.type_ids" class="structfield section-header"><a href="#structfield.type_ids" class="anchor field">§</a><code>type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/night [...]
+    fields: UnionFields,
     type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     offsets: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;,
     children: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
@@ -104,11 +104,11 @@ corresponding array.</p>
 <p>In both cases above we use signed integer types to maintain compatibility with other
 Arrow implementations.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#174-230">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    fields: <a class="struct" href="../../arrow_schema/fields/struct.UnionFields.html" title="struct arrow_schema::fields::UnionFields">UnionFields</a>,
+    fields: UnionFields,
     type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     offsets: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;,
     children: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Attempts to create a new <code>UnionArray</code>, validating the inputs provided.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempts to create a new <code>UnionArray</code>, validating the inputs provided.</p>
 <p>The order of child arrays child array order must match the fields order</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.child" class="method"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#238-242">source</a><h4 class="code-header">pub fn <a href="#method.child" class="fn">child</a>(&amp;self, type_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>) -&gt; &amp;<a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">A [...]
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
@@ -130,7 +130,7 @@ in the <code>Union</code>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#307-328">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.ht [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#358-382">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="struct" href="../../arrow_schema/fields/struct.UnionFields.html" title="struct arrow_schema::fields::UnionFields">UnionFields</a>, ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.h [...]
+) -&gt; (UnionFields, ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc:: [...]
 <h5 id="example"><a class="doc-anchor" href="#example">§</a>Example</h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span><span class="kw-2">mut </span>builder = UnionBuilder::new_dense();
 builder.append::&lt;Int32Type&gt;(<span class="string">"a"</span>, <span class="number">1</span>).unwrap();
@@ -153,7 +153,7 @@ To check validity correctly you must check the underlying vector.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#496-498">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.null_count" class="fn">null_count</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></s [...]
 To get null count correctly you must check the underlying vector.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.as_any" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#446-448">source</a><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.as_any" class="fn">as_any</a>(&amp;self) -&gt; &amp;dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#450-452">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#450-452">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#478-480">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/array/struct_array/struct.StructArray.html b/arrow_array/array/struct_array/struct.StructArray.html
index 0e4d4757d7b..c70b9235986 100644
--- a/arrow_array/array/struct_array/struct.StructArray.html
+++ b/arrow_array/array/struct_array/struct.StructArray.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of structs"><title>StructArray in arrow_array::array::struct_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f [...]
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     fields: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of <a href="https://arrow.apache.org/docs/format/Columnar.html#struct-layout">structs</a></p>
@@ -11,7 +11,7 @@ same length.</p>
 <p>However, there are a couple of key differences:</p>
 <ul>
 <li><a href="struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> can be nested within other <a href="../trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a>, including itself</li>
-<li><a href="../../record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBatch</code></a> can contain top-level metadata on its associated <a href="../../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema"><code>Schema</code></a></li>
+<li><a href="../../record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBatch</code></a> can contain top-level metadata on its associated [<code>Schema</code>][arrow_schema::Schema]</li>
 <li><a href="struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> can contain top-level nulls, i.e. <code>null</code></li>
 <li><a href="../../record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBatch</code></a> can only represent nulls in its child columns, i.e. <code>{&quot;field&quot;: null}</code></li>
 </ul>
@@ -44,18 +44,18 @@ is no way to preserve them.</p>
 <span class="macro">assert_eq!</span>(<span class="number">4</span>, struct_array.len());
 <span class="macro">assert_eq!</span>(<span class="number">0</span>, struct_array.null_count());
 <span class="macro">assert_eq!</span>(<span class="number">0</span>, struct_array.offset());</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor field">§</a><code>len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: < [...]
-    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor field">§</a><code>len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: D [...]
+    fields: Fields,
     arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided parts, panicking on failure</p>
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>Panics if <a href="struct.StructArray.html#method.try_new" title="associated function arrow_array::array::struct_array::StructArray::try_new"><code>Self::try_new</code></a> returns an error</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#104-164">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+    fields: Fields,
     arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided part [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided parts, returning an error on failure</p>
 <h5 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h5>
 <p>Errors if</p>
 <ul>
@@ -65,9 +65,9 @@ is no way to preserve them.</p>
 <li><code>arrays[i].len() != nulls.len()</code></li>
 <li><code>!fields[i].is_nullable() &amp;&amp; !nulls.contains(arrays[i].nulls())</code></li>
 </ul>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#167-179">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>, len: <a class="primitive" href="https://doc.rust-lang.org/ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_null" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#167-179">source</a><h4 class="code-header">pub fn <a href="#method.new_null" class="fn">new_null</a>(fields: Fields, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_unchecked" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#186-198">source</a><h4 class="code-header">pub unsafe fn <a href="#method.new_unchecked" class="fn">new_unchecked</a>(
-    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+    fields: Fields,
     arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a> from the provided parts without validation</p>
@@ -76,20 +76,20 @@ is no way to preserve them.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_empty_fields" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#205-215">source</a><h4 class="code-header">pub fn <a href="#method.new_empty_fields" class="fn">new_empty_fields</a>(len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/ [...]
 <h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
 <p>If <code>len != nulls.len()</code></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#218-224">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (<a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>, <a class="struct" href="https://doc.rust-lang.o [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#218-224">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(self) -&gt; (Fields, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.ht [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.column" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#227-229">source</a><h4 class="code-header">pub fn <a href="#method.column" class="fn">column</a>(&amp;self, pos: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array: [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_columns" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#232-234">source</a><h4 class="code-header">pub fn <a href="#method.num_columns" class="fn">num_columns</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Return the number of fi [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.columns" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#237-239">source</a><h4 class="code-header">pub fn <a href="#method.columns" class="fn">columns</a>(&amp;self) -&gt; &amp;[<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>]</h4></section></summary><div class="docblock"><p>Returns the fields of the [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.columns_ref" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#243-245">source</a><h4 class="code-header">pub fn <a href="#method.columns_ref" class="fn">columns_ref</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.htm [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.column_names" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#248-256">source</a><h4 class="code-header">pub fn <a href="#method.column_names" class="fn">column_names</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&amp;<a class="primitive" href="https:/ [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.fields" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#259-264">source</a><h4 class="code-header">pub fn <a href="#method.fields" class="fn">fields</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a></h4></section></summary><div class="docblock"><p>Re [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.fields" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#259-264">source</a><h4 class="code-header">pub fn <a href="#method.fields" class="fn">fields</a>(&amp;self) -&gt; &amp;Fields</h4></section></summary><div class="docblock"><p>Returns the [<code>Fields</code>] of this <a href="struct.StructArray.html" title="struct arrow_array::array::struct_array: [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.column_by_name" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#271-276">source</a><h4 class="code-header">pub fn <a href="#method.column_by_name" class="fn">column_by_name</a>(&amp;self, column_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/ [...]
 <p>Note: A schema can currently have duplicate field names, in which case
 the first field will always be selected.
 This issue will be addressed in <a href="https://issues.apache.org/jira/browse/ARROW-11178">ARROW-11178</a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#279-293">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.h [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-for-StructArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#343-396">source</a><a href="#impl-Array-for-StructArray" class="anchor">§</a><h3 class="c [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#348-350">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a clas [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#348-350">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a clas [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#376-378">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="h [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
@@ -98,7 +98,7 @@ since multiple arrays can share the same buffers or slices thereof.</div></detai
 This value will always be greater than returned by <code>get_buffer_memory_size()</code> and
 includes the overhead of the data structures that contain the pointers to the various buffers.</div></details><details class="toggle method-toggle" open><summary><section id="method.logical_nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#212-214">source</a><a href="#method.logical_nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.logical_nulls" class="fn">logical_nulls</a>(&amp;self) -&gt;  [...]
 null values of this array, if any. <a href="../trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_null" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#237-239">source</a><a href="#method.is_null" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.is_null" class="fn">is_null</a>(&amp;self, index: <a class="primitiv [...]
-opposite of <a href="../trait.Array.html#method.is_null"><code>Self::is_null</code></a>. <a href="../trait.Array.html#method.is_valid">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#273-275">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
+opposite of <a href="../trait.Array.html#method.is_null"><code>Self::is_null</code></a>. <a href="../trait.Array.html#method.is_valid">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#273-275">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
 <p>Note: A schema can currently have duplicate field names, in which case
 the first field will always be selected.
 This issue will be addressed in <a href="https://issues.apache.org/jira/browse/ARROW-11178">ARROW-11178</a></p>
@@ -106,8 +106,8 @@ This issue will be addressed in <a href="https://issues.apache.org/jira/browse/A
 <p>Panics if the name is not in the schema.</p>
 </div></details><details class="toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl"><a href="#associatedtype.Output" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" hr [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#324-341">source</a><a href="#impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="anchor">§</a><h3 class="code-header">impl <a  [...]
-</div></details><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a></h4></section></summary> [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#324-341">source</a><a href="#impl-TryFrom%3CVec%3C(%26str,+Arc%3Cdyn+Array%3E)%3E%3E-for-StructArray" class="anchor">§</a><h3 class="code-header">impl <a  [...]
+</div></details><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = ArrowError</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details></div></details></div><h2 id=" [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/array/trait.Array.html b/arrow_array/array/trait.Array.html
index 95c17b5fac9..256ed76a3db 100644
--- a/arrow_array/array/trait.Array.html
+++ b/arrow_array/array/trait.Array.html
@@ -3,7 +3,7 @@
     fn <a href="#tymethod.as_any" class="fn">as_any</a>(&amp;self) -&gt; &amp;dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.into_data" class="fn">into_data</a>(self) -&gt; <a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>;
-<span class="item-spacer"></span>    fn <a href="#tymethod.data_type" class="fn">data_type</a>(&amp;self) -&gt; &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>;
+<span class="item-spacer"></span>    fn <a href="#tymethod.data_type" class="fn">data_type</a>(&amp;self) -&gt; &amp;DataType;
 <span class="item-spacer"></span>    fn <a href="#tymethod.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.len" class="fn">len</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.is_empty" class="fn">is_empty</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>;
@@ -37,7 +37,7 @@ downcasted to a specific implementation.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.to_data" class="method"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#102">source</a><h4 class="code-header">fn <a href="#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a></h4></section></summary><div class="docblock"><p>Returns the underlying [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.into_data" class="method"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#107">source</a><h4 class="code-header">fn <a href="#tymethod.into_data" class="fn">into_data</a>(self) -&gt; <a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a></h4></section></summary><div class="docblock"><p>Returns the underlyin [...]
 <p>Unlike <a href="trait.Array.html#tymethod.to_data" title="method arrow_array::array::Array::to_data"><code>Array::to_data</code></a> this consumes self, allowing it avoid unnecessary clones</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.data_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#121">source</a><h4 class="code-header">fn <a href="#tymethod.data_type" class="fn">data_type</a>(&amp;self) -&gt; &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock"><p>Returns  [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.data_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#121">source</a><h4 class="code-header">fn <a href="#tymethod.data_type" class="fn">data_type</a>(&amp;self) -&gt; &amp;DataType</h4></section></summary><div class="docblock"><p>Returns a reference to the [<code>DataType</code>] of this array.</p>
 <h5 id="example-1"><a class="doc-anchor" href="#example-1">§</a>Example:</h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_schema::DataType;
 <span class="kw">use </span>arrow_array::{Array, Int32Array};
@@ -158,5 +158,5 @@ and therefore would not appear in <a href="trait.Array.html#method.logical_nulls
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#462-466">source</a><a href="#impl-PartialEq-for-dyn+Array" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait  [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" cl [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Sealed-for-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/cast.rs.html#869">source</a><a href="#impl-Sealed-for-dyn+Array" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../cast/private/trait.Sealed.html" title="trait arrow_array::cast::private::Sealed">Sealed</a> for dyn <a class="trait" href="trait.Array.html" title=" [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Sealed-for-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/cast.rs.html#869">source</a><a href="#impl-Sealed-for-dyn+Array" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../cast/private/trait.Sealed.html" title="trait arrow_array::cast::private::Sealed">Sealed</a> for dyn <a class="trait" href="trait.Array.html" title=" [...]
 </div><section id="impl-Array-for-TypedDictionaryArray%3C'a,+K,+V%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#828-880">source</a><a href="#impl-Array-for-TypedDictionaryArray%3C'a,+K,+V%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, K: <a class="trait" href="../types/trait.ArrowDictionaryKeyType.html" title="trait arrow_array::types::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>, V: <a class="trait" href="https:// [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.ArrayRef.html b/arrow_array/array/type.ArrayRef.html
index 46f8099243c..db9b1690395 100644
--- a/arrow_array/array/type.ArrayRef.html
+++ b/arrow_array/array/type.ArrayRef.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A reference-counted reference to a generic `Array`"><title>ArrayRef in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,Fira [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct ArrayRef { <span class="comment">/* private fields */</span> }</code></pre><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Array-fo [...]
 </div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_any" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#307-309">source</a><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.as_any" class="fn">as_any</a>(&amp;self) -&gt; &amp;dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::an [...]
-downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#311-313">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" href=". [...]
+downcasted to a specific implementation. <a href="trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#311-313">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class="struct" href=". [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#339-341">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-la [...]
 null values of this array, if any. <a href="trait.Array.html#method.logical_nulls">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_null" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#347-349">source</a><a href="#method.is_null" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#method.is_null" class="fn">is_null</a>(&amp;self, index: <a class="primitive" href=" [...]
diff --git a/arrow_array/array/type.BinaryArray.html b/arrow_array/array/type.BinaryArray.html
index c7beb966670..a2df2eb7eed 100644
--- a/arrow_array/array/type.BinaryArray.html
+++ b/arrow_array/array/type.BinaryArray.html
@@ -30,8 +30,8 @@
 <span class="macro">assert!</span>(!array.is_null(<span class="number">4</span>));</code></pre></div>
 <p>See <a href="byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct BinaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.val [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.BinaryViewArray.html b/arrow_array/array/type.BinaryViewArray.html
index b32ca9e0105..1b856be987c 100644
--- a/arrow_array/array/type.BinaryViewArray.html
+++ b/arrow_array/array/type.BinaryViewArray.html
@@ -5,12 +5,12 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">0</span>), <span class="string">b"hello"</span>);
 <span class="macro">assert_eq!</span>(array.value(<span class="number">3</span>), <span class="string">b"large payload over 12 bytes"</span>);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct BinaryViewArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;<a class="struct" href="../types/struct.BinaryViewType.html" title="struct arrow_array::types::BinaryViewType">BinaryViewType</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" clas [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" class="anchor field">§</a><code>views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/prim [...]
 If items not utf8 data, validate will fail and error returned.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_string_view_unchecked" class="method"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#476-478">source</a><h4 class="code-header">pub unsafe fn <a href="#method.to_string_view_unchecked" class="fn">to_string_view_unchecked</a>(self) -&gt; <a class="type" href="byte_view_array/type.StringViewArray.html" title="type arrow_array::array::byte_view_array::StringViewArra [...]
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
diff --git a/arrow_array/array/type.Date32Array.html b/arrow_array/array/type.Date32Array.html
index 11f87816d24..030954a101f 100644
--- a/arrow_array/array/type.Date32Array.html
+++ b/arrow_array/array/type.Date32Array.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/date/struct.NaiveDate.html" title="struct chrono::naive::date::NaiveDate"><code>chrono::NaiveDate</code></a> type and can hold
 values such as <code>2018-11-13</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date32Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Date32Array" async></script></section></div></main [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Date64Array.html b/arrow_array/array/type.Date64Array.html
index 2382628fc5f..a49a2939a84 100644
--- a/arrow_array/array/type.Date64Array.html
+++ b/arrow_array/array/type.Date64Array.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/date/struct.NaiveDate.html" title="struct chrono::naive::date::NaiveDate"><code>chrono::NaiveDate</code></a> type and can hold
 values such as <code>2018-11-13</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date64Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Date64Array" async></script></section></div></main [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Decimal128Array.html b/arrow_array/array/type.Decimal128Array.html
index 161bf61f05f..b6d1882c739 100644
--- a/arrow_array/array/type.Decimal128Array.html
+++ b/arrow_array/array/type.Decimal128Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Decimal128Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal128Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Decimal128Array" async></script></section></div></ [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Decimal256Array.html b/arrow_array/array/type.Decimal256Array.html
index 686958f93ea..a93246dc525 100644
--- a/arrow_array/array/type.Decimal256Array.html
+++ b/arrow_array/array/type.Decimal256Array.html
@@ -11,8 +11,8 @@
 </span><span class="kw">let </span>arr: Decimal256Array = std::iter::repeat(i256::from(<span class="number">42</span>)).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal256Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;i256&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;i256&gt;</code></span><div class="docblock"><p>Values data</p>
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Decimal256Array" async></script></section></div></ [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.DurationMicrosecondArray.html b/arrow_array/array/type.DurationMicrosecondArray.html
index aa19eb664e5..0a4c70c8db2 100644
--- a/arrow_array/array/type.DurationMicrosecondArray.html
+++ b/arrow_array/array/type.DurationMicrosecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in microseconds"><title>DurationMicrosecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c14 [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMicrosecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationMicrosecondArray" async></script></section [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.DurationMillisecondArray.html b/arrow_array/array/type.DurationMillisecondArray.html
index dd1f17dcbc9..37e6ffe41ca 100644
--- a/arrow_array/array/type.DurationMillisecondArray.html
+++ b/arrow_array/array/type.DurationMillisecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in milliseconds"><title>DurationMillisecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c14 [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMillisecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationMillisecondArray" async></script></section [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.DurationNanosecondArray.html b/arrow_array/array/type.DurationNanosecondArray.html
index fe4dab9a0b3..47fd477d742 100644
--- a/arrow_array/array/type.DurationNanosecondArray.html
+++ b/arrow_array/array/type.DurationNanosecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in nanoseconds"><title>DurationNanosecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141b [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationNanosecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationNanosecondArray" async></script></section> [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.DurationSecondArray.html b/arrow_array/array/type.DurationSecondArray.html
index da0adce1d58..c0d0667cf3d 100644
--- a/arrow_array/array/type.DurationSecondArray.html
+++ b/arrow_array/array/type.DurationSecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of elapsed durations in seconds"><title>DurationSecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationSecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::DurationSecondArray" async></script></section></di [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Float16Array.html b/arrow_array/array/type.Float16Array.html
index b73d6cedb2c..4882959eb5e 100644
--- a/arrow_array/array/type.Float16Array.html
+++ b/arrow_array/array/type.Float16Array.html
@@ -14,8 +14,8 @@
 <span class="kw">let </span>arr : Float16Array = [<span class="prelude-val">Some</span>(f16::from_f64(<span class="number">1.0</span>)), <span class="prelude-val">Some</span>(f16::from_f64(<span class="number">2.0</span>))].into_iter().collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float16Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct half::binary16::f16">f16</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/s [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Float16Array" async></script></section></div></mai [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Float32Array.html b/arrow_array/array/type.Float32Array.html
index 4e5835b47be..231cb7bfed2 100644
--- a/arrow_array/array/type.Float32Array.html
+++ b/arrow_array/array/type.Float32Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Float32Array = std::iter::repeat(<span class="number">42.0</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float32Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Float32Array" async></script></section></div></mai [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Float64Array.html b/arrow_array/array/type.Float64Array.html
index 478f9bb7fa5..0fe11484461 100644
--- a/arrow_array/array/type.Float64Array.html
+++ b/arrow_array/array/type.Float64Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Float32Array = std::iter::repeat(<span class="number">42.0</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float64Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Float64Array" async></script></section></div></mai [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.GenericBinaryArray.html b/arrow_array/array/type.GenericBinaryArray.html
index 68e7098e81a..368e6fa6f45 100644
--- a/arrow_array/array/type.GenericBinaryArray.html
+++ b/arrow_array/array/type.GenericBinaryArray.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericBinaryArray` for storing `[u8]`"><title>GenericBinaryArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,Fir [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct GenericBinaryArray&lt;OffsetSize&gt; {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../types/struct.GenericBinaryType.html" title="struct arrow_array::types::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt; as <a class="trait" href="../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.val [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../types/struct.G [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_vec" class="method"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#36-38">source</a><h4 class="code-header">pub fn <a href="#method.from_vec" class="fn">from_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std [...]
 <p>See also <a href="byte_array/struct.GenericByteArray.html#method.from_iter_values" title="associated function arrow_array::array::byte_array::GenericByteArray::from_iter_values"><code>Self::from_iter_values</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_opt_vec" class="method"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#41-43">source</a><h4 class="code-header">pub fn <a href="#method.from_opt_vec" class="fn">from_opt_vec</a>(v: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/co [...]
diff --git a/arrow_array/array/type.GenericStringArray.html b/arrow_array/array/type.GenericStringArray.html
index 76740749974..c401e3973e3 100644
--- a/arrow_array/array/type.GenericStringArray.html
+++ b/arrow_array/array/type.GenericStringArray.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericByteArray` for storing `str`"><title>GenericStringArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSa [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct GenericStringArray&lt;OffsetSize&gt; {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../types/struct.GenericStringType.html" title="struct arrow_array::types::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt; as <a class="trait" href="../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../types/trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.val [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;&lt;<a class="struct" href="../types/struct.G [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_chars" class="method"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#37-39">source</a><h4 class="code-header">pub fn <a href="#method.num_chars" class="fn">num_chars</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usiz [...]
 <h5 id="performance"><a class="doc-anchor" href="#performance">§</a>Performance</h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -22,7 +22,7 @@ please use the function <a href="#method.value_length"><code>value_length</code>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_binary" class="method"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#62-65">source</a><h4 class="code-header">pub fn <a href="#method.try_from_binary" class="fn">try_from_binary</a>(
     v: <a class="type" href="binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray">GenericBinaryArray</a>&lt;OffsetSize&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="string_array/type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray< [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Fallibly creates a <a href="string_array/type.GenericStringArray.html" title="type arrow_array::array::string_array::GenericStringArray"><code>GenericStringArray</code></a> from a <a href="binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::Ge [...]
 an error if <a href="binary_array/type.GenericBinaryArray.html" title="type arrow_array::array::binary_array::GenericBinaryArray"><code>GenericBinaryArray</code></a> contains invalid UTF-8 data</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CGenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/string_ar [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
diff --git a/arrow_array/array/type.Int16Array.html b/arrow_array/array/type.Int16Array.html
index e55413c3dab..82f6f951529 100644
--- a/arrow_array/array/type.Int16Array.html
+++ b/arrow_array/array/type.Int16Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int16Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int16Array" async></script></section></div></main> [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int16DictionaryArray.html b/arrow_array/array/type.Int16DictionaryArray.html
index a489675055c..8a54d94508b 100644
--- a/arrow_array/array/type.Int16DictionaryArray.html
+++ b/arrow_array/array/type.Int16DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.Int16Type.html" title="struct arrow_array::types::Int16Type">Int16Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.Int16RunArray.html b/arrow_array/array/type.Int16RunArray.html
index a84e5fcb2ac..8979c91c2fd 100644
--- a/arrow_array/array/type.Int16RunArray.html
+++ b/arrow_array/array/type.Int16RunArray.html
@@ -6,7 +6,7 @@
 <span class="macro">assert_eq!</span>(array.run_ends().values(), <span class="kw-2">&amp;</span>[<span class="number">2</span>, <span class="number">3</span>, <span class="number">5</span>]);
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16RunArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int32Array.html b/arrow_array/array/type.Int32Array.html
index 19cf225ecde..062c88c7082 100644
--- a/arrow_array/array/type.Int32Array.html
+++ b/arrow_array/array/type.Int32Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int32Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int32Array" async></script></section></div></main> [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int32DictionaryArray.html b/arrow_array/array/type.Int32DictionaryArray.html
index 6072c6f7813..96fac3408f0 100644
--- a/arrow_array/array/type.Int32DictionaryArray.html
+++ b/arrow_array/array/type.Int32DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.Int32Type.html" title="struct arrow_array::types::Int32Type">Int32Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.Int32RunArray.html b/arrow_array/array/type.Int32RunArray.html
index c93d386ca0d..24800d4d3a3 100644
--- a/arrow_array/array/type.Int32RunArray.html
+++ b/arrow_array/array/type.Int32RunArray.html
@@ -6,7 +6,7 @@
 <span class="macro">assert_eq!</span>(array.run_ends().values(), <span class="kw-2">&amp;</span>[<span class="number">2</span>, <span class="number">3</span>, <span class="number">5</span>]);
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32RunArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int64Array.html b/arrow_array/array/type.Int64Array.html
index 857a9d6226a..fb20dbfcd79 100644
--- a/arrow_array/array/type.Int64Array.html
+++ b/arrow_array/array/type.Int64Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int64Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int64Array" async></script></section></div></main> [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int64DictionaryArray.html b/arrow_array/array/type.Int64DictionaryArray.html
index 32635b6f143..1f173b57cd3 100644
--- a/arrow_array/array/type.Int64DictionaryArray.html
+++ b/arrow_array/array/type.Int64DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.Int64Type.html" title="struct arrow_array::types::Int64Type">Int64Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.Int64RunArray.html b/arrow_array/array/type.Int64RunArray.html
index 0e243d38e03..9def0ad1db9 100644
--- a/arrow_array/array/type.Int64RunArray.html
+++ b/arrow_array/array/type.Int64RunArray.html
@@ -6,7 +6,7 @@
 <span class="macro">assert_eq!</span>(array.run_ends().values(), <span class="kw-2">&amp;</span>[<span class="number">2</span>, <span class="number">3</span>, <span class="number">5</span>]);
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64RunArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.run_ends" class="structfield section-header"><a href="#structfield.run_ends" class="anchor field">§</a><code>run_ends: RunEndBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int8Array.html b/arrow_array/array/type.Int8Array.html
index c3502902c5c..a940be37edb 100644
--- a/arrow_array/array/type.Int8Array.html
+++ b/arrow_array/array/type.Int8Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: Int8Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int8Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Int8Array" async></script></section></div></main>< [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Int8DictionaryArray.html b/arrow_array/array/type.Int8DictionaryArray.html
index 550a8ff05c6..f91a132aced 100644
--- a/arrow_array/array/type.Int8DictionaryArray.html
+++ b/arrow_array/array/type.Int8DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int8DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.Int8Type.html" title="struct arrow_array::types::Int8Type">Int8Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.IntervalDayTimeArray.html b/arrow_array/array/type.IntervalDayTimeArray.html
index b5673c544e6..7ad35df15f0 100644
--- a/arrow_array/array/type.IntervalDayTimeArray.html
+++ b/arrow_array/array/type.IntervalDayTimeArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of “calendar” intervals in days and milliseconds"><title>IntervalDayTimeArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regula [...]
 <p>See <a href="../types/struct.IntervalDayTimeType.html" title="struct arrow_array::types::IntervalDayTimeType"><code>IntervalDayTimeType</code></a> for details on representation and caveats.</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalDayTimeArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;IntervalDayTime&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;IntervalDayTime&gt;</code></span><div class="docblock"><p>Values data</p>
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::IntervalDayTimeArray" async></script></section></d [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.IntervalMonthDayNanoArray.html b/arrow_array/array/type.IntervalMonthDayNanoArray.html
index 576c84a14a0..c9f2d071d62 100644
--- a/arrow_array/array/type.IntervalMonthDayNanoArray.html
+++ b/arrow_array/array/type.IntervalMonthDayNanoArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of “calendar” intervals in  months, days, and nanoseconds."><title>IntervalMonthDayNanoArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2, [...]
 <p>See <a href="../types/struct.IntervalMonthDayNanoType.html" title="struct arrow_array::types::IntervalMonthDayNanoType"><code>IntervalMonthDayNanoType</code></a> for details on representation and caveats.</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalMonthDayNanoArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;IntervalMonthDayNano&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;IntervalMonthDayNano&gt;</code></span><div class="docblock"><p>Val [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::IntervalMonthDayNanoArray" async></script></sectio [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.IntervalYearMonthArray.html b/arrow_array/array/type.IntervalYearMonthArray.html
index 087cb1bdc27..64e75b77239 100644
--- a/arrow_array/array/type.IntervalYearMonthArray.html
+++ b/arrow_array/array/type.IntervalYearMonthArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of “calendar” intervals in months"><title>IntervalYearMonthArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf08 [...]
 <p>See <a href="../types/struct.IntervalYearMonthType.html" title="struct arrow_array::types::IntervalYearMonthType"><code>IntervalYearMonthType</code></a> for details on representation and caveats.</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalYearMonthArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::IntervalYearMonthArray" async></script></section>< [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.LargeBinaryArray.html b/arrow_array/array/type.LargeBinaryArray.html
index ce7261d8fcd..4e1aaeb7dbd 100644
--- a/arrow_array/array/type.LargeBinaryArray.html
+++ b/arrow_array/array/type.LargeBinaryArray.html
@@ -29,8 +29,8 @@
 <span class="macro">assert!</span>(!array.is_null(<span class="number">4</span>));</code></pre></div>
 <p>See <a href="byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct LargeBinaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.val [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.LargeListArray.html b/arrow_array/array/type.LargeListArray.html
index 06068d91fe2..ce0f365e414 100644
--- a/arrow_array/array/type.LargeListArray.html
+++ b/arrow_array/array/type.LargeListArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericListArray` of variable size lists, storing offsets as `i64`."><title>LargeListArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-0 [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct LargeListArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" clas [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.LargeStringArray.html b/arrow_array/array/type.LargeStringArray.html
index edffce9ef37..e02dffe5041 100644
--- a/arrow_array/array/type.LargeStringArray.html
+++ b/arrow_array/array/type.LargeStringArray.html
@@ -15,8 +15,8 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">2</span>), <span class="string">"bar"</span>);</code></pre></div>
 <p>See <a href="byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct LargeStringArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.val [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.ListArray.html b/arrow_array/array/type.ListArray.html
index 93dc50948cf..c804caef3b5 100644
--- a/arrow_array/array/type.ListArray.html
+++ b/arrow_array/array/type.ListArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `GenericListArray` of variable size lists, storing offsets as `i32`."><title>ListArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c14 [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct ListArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" clas [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.StringArray.html b/arrow_array/array/type.StringArray.html
index ea4b5dabf99..a02ec9dc58a 100644
--- a/arrow_array/array/type.StringArray.html
+++ b/arrow_array/array/type.StringArray.html
@@ -14,8 +14,8 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">0</span>), <span class="string">"foo"</span>);</code></pre></div>
 <p>See <a href="byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray"><code>GenericByteArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct StringArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     value_data: Buffer,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.val [...]
\ No newline at end of file
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.value_offsets" class="structfield section-header"><a href="#structfield.value_offsets" class="anchor field">§</a><code>value_offsets: OffsetBuffer&lt;<a class="primitive" href="https://doc.rust-l [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.StringViewArray.html b/arrow_array/array/type.StringViewArray.html
index 6314589615c..61ac173d390 100644
--- a/arrow_array/array/type.StringViewArray.html
+++ b/arrow_array/array/type.StringViewArray.html
@@ -5,10 +5,10 @@
 <span class="macro">assert_eq!</span>(array.value(<span class="number">0</span>), <span class="string">"hello"</span>);
 <span class="macro">assert_eq!</span>(array.value(<span class="number">3</span>), <span class="string">"large payload over 12 bytes"</span>);</code></pre></div>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct StringViewArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>&gt;,
     buffers: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;,
     phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;<a class="struct" href="../types/struct.StringViewType.html" title="struct arrow_array::types::StringViewType">StringViewType</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" clas [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.views" class="structfield section-header"><a href="#structfield.views" class="anchor field">§</a><code>views: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/prim [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%26str%3E%3E-for-GenericByteViewArray%3CStringViewType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/byte_view_array.rs.html#511-515">source</a><a href="#impl-From%3 [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Time32MillisecondArray.html b/arrow_array/array/type.Time32MillisecondArray.html
index a00d992d85c..aa882c83ea5 100644
--- a/arrow_array/array/type.Time32MillisecondArray.html
+++ b/arrow_array/array/type.Time32MillisecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00.123</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32MillisecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time32MillisecondArray" async></script></section>< [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Time32SecondArray.html b/arrow_array/array/type.Time32SecondArray.html
index 8c37f103409..66e2ac56bfe 100644
--- a/arrow_array/array/type.Time32SecondArray.html
+++ b/arrow_array/array/type.Time32SecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32SecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time32SecondArray" async></script></section></div> [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Time64MicrosecondArray.html b/arrow_array/array/type.Time64MicrosecondArray.html
index c919a3a5784..ea618282b04 100644
--- a/arrow_array/array/type.Time64MicrosecondArray.html
+++ b/arrow_array/array/type.Time64MicrosecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00.123456</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64MicrosecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time64MicrosecondArray" async></script></section>< [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.Time64NanosecondArray.html b/arrow_array/array/type.Time64NanosecondArray.html
index 5ac1f4b88b0..b878a0022ae 100644
--- a/arrow_array/array/type.Time64NanosecondArray.html
+++ b/arrow_array/array/type.Time64NanosecondArray.html
@@ -2,8 +2,8 @@
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/naive/time/struct.NaiveTime.html" title="struct chrono::naive::time::NaiveTime"><code>chrono::NaiveTime</code></a> type and can
 hold values such as <code>00:02:00.123456789</code></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64NanosecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::Time64NanosecondArray" async></script></section></ [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.TimestampMicrosecondArray.html b/arrow_array/array/type.TimestampMicrosecondArray.html
index 98a4a413095..0e53e77502f 100644
--- a/arrow_array/array/type.TimestampMicrosecondArray.html
+++ b/arrow_array/array/type.TimestampMicrosecondArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of microseconds since UNIX epoch stored as `i64`"><title>TimestampMicrosecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-R [...]
 <p>See examples for <a href="primitive_array/type.TimestampSecondArray.html" title="type arrow_array::array::primitive_array::TimestampSecondArray"><code>TimestampSecondArray</code></a></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMicrosecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampMicrosecondArray" async></script></sectio [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.TimestampMillisecondArray.html b/arrow_array/array/type.TimestampMillisecondArray.html
index ebb60ad2d2e..5a6a3a3b93f 100644
--- a/arrow_array/array/type.TimestampMillisecondArray.html
+++ b/arrow_array/array/type.TimestampMillisecondArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of milliseconds since UNIX epoch stored as `i64`"><title>TimestampMillisecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-R [...]
 <p>See examples for <a href="primitive_array/type.TimestampSecondArray.html" title="type arrow_array::array::primitive_array::TimestampSecondArray"><code>TimestampSecondArray</code></a></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMillisecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampMillisecondArray" async></script></sectio [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.TimestampNanosecondArray.html b/arrow_array/array/type.TimestampNanosecondArray.html
index 11ac1832086..40a1f1d923d 100644
--- a/arrow_array/array/type.TimestampNanosecondArray.html
+++ b/arrow_array/array/type.TimestampNanosecondArray.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of nanoseconds since UNIX epoch stored as `i64`"><title>TimestampNanosecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Reg [...]
 <p>See examples for <a href="primitive_array/type.TimestampSecondArray.html" title="type arrow_array::array::primitive_array::TimestampSecondArray"><code>TimestampSecondArray</code></a></p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampNanosecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampNanosecondArray" async></script></section [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.TimestampSecondArray.html b/arrow_array/array/type.TimestampSecondArray.html
index 53493155cee..6ea08c5a039 100644
--- a/arrow_array/array/type.TimestampSecondArray.html
+++ b/arrow_array/array/type.TimestampSecondArray.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `PrimitiveArray` of seconds since UNIX epoch stored as `i64`"><title>TimestampSecondArray in arrow_array::array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018 [...]
 <p>This type is similar to the <a href="https://docs.rs/chrono/latest/chrono/datetime/struct.DateTime.html" title="struct chrono::datetime::DateTime"><code>chrono::DateTime</code></a> type and can hold
 values such as <code>1970-05-09 14:25:11 +01:00</code></p>
-<p>See also <a href="../../arrow_schema/datatype/enum.DataType.html#variant.Timestamp" title="variant arrow_schema::datatype::DataType::Timestamp"><code>Timestamp</code></a>.</p>
+<p>See also <a href="arrow_schema::DataType::Timestamp"><code>Timestamp</code></a>.</p>
 <h2 id="example-utc-timestamps-post-epoch"><a class="doc-anchor" href="#example-utc-timestamps-post-epoch">§</a>Example: UTC timestamps post epoch</h2>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::timezone::Tz;
 <span class="comment">// Corresponds to single element array with entry 1970-05-09T14:25:11+0:00
@@ -31,8 +31,8 @@ values such as <code>1970-05-09 14:25:11 +01:00</code></p>
 <span class="macro">assert_eq!</span>(arr.value_as_datetime_with_tz(<span class="number">0</span>, sydney_tz).map(|v| v.to_string()).unwrap(), <span class="string">"1970-05-10 00:25:11 +10:00"</span>)</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampSecondArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::TimestampSecondArray" async></script></section></d [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.UInt16Array.html b/arrow_array/array/type.UInt16Array.html
index 4cc12360623..0c7a6811fbd 100644
--- a/arrow_array/array/type.UInt16Array.html
+++ b/arrow_array/array/type.UInt16Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt16Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt16Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt16Array" async></script></section></div></main [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.UInt16DictionaryArray.html b/arrow_array/array/type.UInt16DictionaryArray.html
index 26ba4a057ca..bb7b0292735 100644
--- a/arrow_array/array/type.UInt16DictionaryArray.html
+++ b/arrow_array/array/type.UInt16DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt16DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.UInt16Type.html" title="struct arrow_array::types::UInt16Type">UInt16Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.UInt32Array.html b/arrow_array/array/type.UInt32Array.html
index a8ed2de5428..20405ec128d 100644
--- a/arrow_array/array/type.UInt32Array.html
+++ b/arrow_array/array/type.UInt32Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt32Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt32Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt32Array" async></script></section></div></main [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.UInt32DictionaryArray.html b/arrow_array/array/type.UInt32DictionaryArray.html
index 6b0195f5d44..2568db4bdac 100644
--- a/arrow_array/array/type.UInt32DictionaryArray.html
+++ b/arrow_array/array/type.UInt32DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt32DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.UInt32Type.html" title="struct arrow_array::types::UInt32Type">UInt32Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.UInt64Array.html b/arrow_array/array/type.UInt64Array.html
index 8572507a516..08463571fa8 100644
--- a/arrow_array/array/type.UInt64Array.html
+++ b/arrow_array/array/type.UInt64Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt64Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt64Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt64Array" async></script></section></div></main [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.UInt64DictionaryArray.html b/arrow_array/array/type.UInt64DictionaryArray.html
index 22d351321af..4e4fdce8481 100644
--- a/arrow_array/array/type.UInt64DictionaryArray.html
+++ b/arrow_array/array/type.UInt64DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt64DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.UInt64Type.html" title="struct arrow_array::types::UInt64Type">UInt64Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/type.UInt8Array.html b/arrow_array/array/type.UInt8Array.html
index 4a57f2366eb..911396735ec 100644
--- a/arrow_array/array/type.UInt8Array.html
+++ b/arrow_array/array/type.UInt8Array.html
@@ -10,8 +10,8 @@
 </span><span class="kw">let </span>arr: UInt8Array = std::iter::repeat(<span class="number">42</span>).take(<span class="number">10</span>).collect();</code></pre></div>
 <p>See <a href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt8Array {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;,
     nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" class="anchor field">§</a><code>values: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/p [...]
 </div><span id="structfield.nulls" class="structfield section-header"><a href="#structfield.nulls" class="anchor field">§</a><code>nulls: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;NullBuffer&gt;</code></span><script src="../../type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js" data-self-path="arrow_array::array::primitive_array::UInt8Array" async></script></section></div></main> [...]
\ No newline at end of file
diff --git a/arrow_array/array/type.UInt8DictionaryArray.html b/arrow_array/array/type.UInt8DictionaryArray.html
index b248cb58d4d..3f9d91195b0 100644
--- a/arrow_array/array/type.UInt8DictionaryArray.html
+++ b/arrow_array/array/type.UInt8DictionaryArray.html
@@ -7,11 +7,11 @@
 <span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>values);</code></pre></div>
 <p>See <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> for more information and examples</p>
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt8DictionaryArray {
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../types/struct.UInt8Type.html" title="struct arrow_array::types::UInt8Type">UInt8Type</a>&gt;,
     values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;,
     is_ordered: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class= [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.keys" class="structfield section-header"><a href="#structfield.keys" class="anchor field">§</a><code>keys: <a class="struct" href="primitive_array/struct.PrimitiveArray.html" title="struct arrow_ [...]
 buffer and null bitmap of <code>data</code>.  Also, note that these do
 not correspond to the true values of this array. Rather, they
 map to the real values.</p>
diff --git a/arrow_array/array/union_array/struct.UnionArray.html b/arrow_array/array/union_array/struct.UnionArray.html
index 7674f705ff9..8213394ad79 100644
--- a/arrow_array/array/union_array/struct.UnionArray.html
+++ b/arrow_array/array/union_array/struct.UnionArray.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An array of values of varying types"><title>UnionArray in arrow_array::array::union_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,Fira [...]
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     offsets: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;,
     fields: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;&gt;,
@@ -85,8 +85,8 @@ for examples.</p>
 
 <span class="kw">let </span>value = array.value(<span class="number">2</span>).as_any().downcast_ref::&lt;Int32Array&gt;().unwrap().value(<span class="number">0</span>);
 <span class="macro">assert_eq!</span>(<span class="number">34</span>, value);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><span id="structfield.type_ids" class="structfield section-header"><a href="#structfield.typ [...]
-    fields: <a class="struct" href="../../../arrow_schema/fields/struct.UnionFields.html" title="struct arrow_schema::fields::UnionFields">UnionFields</a>,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><span id="structfield.type_ids" class="structfield section-header"><a href="#structfield.type_ids" class="anchor field">§</a><code>type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/night [...]
+    fields: UnionFields,
     type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     offsets: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;,
     children: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
@@ -104,11 +104,11 @@ corresponding array.</p>
 <p>In both cases above we use signed integer types to maintain compatibility with other
 Arrow implementations.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#174-230">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    fields: <a class="struct" href="../../../arrow_schema/fields/struct.UnionFields.html" title="struct arrow_schema::fields::UnionFields">UnionFields</a>,
+    fields: UnionFields,
     type_ids: ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     offsets: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;,
     children: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Attempts to create a new <code>UnionArray</code>, validating the inputs provided.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempts to create a new <code>UnionArray</code>, validating the inputs provided.</p>
 <p>The order of child arrays child array order must match the fields order</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.child" class="method"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#238-242">source</a><h4 class="code-header">pub fn <a href="#method.child" class="fn">child</a>(&amp;self, type_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>) -&gt; &amp;<a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::Array [...]
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
@@ -130,7 +130,7 @@ in the <code>Union</code>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#307-328">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#358-382">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self,
-) -&gt; (<a class="struct" href="../../../arrow_schema/fields/struct.UnionFields.html" title="struct arrow_schema::fields::UnionFields">UnionFields</a>, ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i3 [...]
+) -&gt; (UnionFields, ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;ScalarBuffer&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;&gt;, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc:: [...]
 <h5 id="example"><a class="doc-anchor" href="#example">§</a>Example</h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span><span class="kw-2">mut </span>builder = UnionBuilder::new_dense();
 builder.append::&lt;Int32Type&gt;(<span class="string">"a"</span>, <span class="number">1</span>).unwrap();
@@ -153,7 +153,7 @@ To check validity correctly you must check the underlying vector.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#496-498">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" class="fn">null_count</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></ [...]
 To get null count correctly you must check the underlying vector.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.as_any" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#446-448">source</a><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.as_any" class="fn">as_any</a>(&amp;self) -&gt; &amp;dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::an [...]
-downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#450-452">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class [...]
+downcasted to a specific implementation. <a href="../trait.Array.html#tymethod.as_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.to_data" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#450-452">source</a><a href="#method.to_data" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; <a class [...]
 Note that the underlying data can be shared by many arrays.
 This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nulls" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#478-480">source</a><a href="#method.nulls" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.nulls" class="fn">nulls</a>(&amp;self) -&gt; <a class="enum" href="ht [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
diff --git a/arrow_array/builder/boolean_builder/struct.BooleanBuilder.html b/arrow_array/builder/boolean_builder/struct.BooleanBuilder.html
index 4463a37a44c..6a4291c22dc 100644
--- a/arrow_array/builder/boolean_builder/struct.BooleanBuilder.html
+++ b/arrow_array/builder/boolean_builder/struct.BooleanBuilder.html
@@ -39,7 +39,7 @@ b.append_value(<span class="bool-val">true</span>);
     &amp;mut self,
     values: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>],
     is_valid: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>],
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends values from a slice of type <code>T</code> and a validity boole [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends values from a slice of type <code>T</code> and a validity boolean slice.</p>
 <p>Returns an error if the slices are of different lengths</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/boolean_builder.rs.html#143-153">source</a><h4 class="code-header">pub fn <a href="#method.finish" class="fn">finish</a>(&amp;mut self) -&gt; <a class="struct" href="../../array/boolean_array/struct.BooleanArray.html" title="struct arrow_array::array::boolean_array::BooleanArray">BooleanArray</a></h4></section></sum [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish_cloned" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/boolean_builder.rs.html#156-167">source</a><h4 class="code-header">pub fn <a href="#method.finish_cloned" class="fn">finish_cloned</a>(&amp;self) -&gt; <a class="struct" href="../../array/boolean_array/struct.BooleanArray.html" title="struct arrow_array::array::boolean_array::BooleanArray">BooleanArray</a></h [...]
diff --git a/arrow_array/builder/fixed_size_binary_builder/struct.FixedSizeBinaryBuilder.html b/arrow_array/builder/fixed_size_binary_builder/struct.FixedSizeBinaryBuilder.html
index 4393c279747..2a8bf6fa25d 100644
--- a/arrow_array/builder/fixed_size_binary_builder/struct.FixedSizeBinaryBuilder.html
+++ b/arrow_array/builder/fixed_size_binary_builder/struct.FixedSizeBinaryBuilder.html
@@ -20,7 +20,7 @@ that can be appended without reallocating</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_value" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/fixed_size_binary_builder.rs.html#75-86">source</a><h4 class="code-header">pub fn <a href="#method.append_value" class="fn">append_value</a>(
     &amp;mut self,
     value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends a byte slice into the builder.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends a byte slice into the builder.</p>
 <p>Automatically update the null buffer to delimit the slice appended in as a
 distinct value element.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_null" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/fixed_size_binary_builder.rs.html#90-94">source</a><h4 class="code-header">pub fn <a href="#method.append_null" class="fn">append_null</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Append a null value to the array.</p>
diff --git a/arrow_array/builder/fixed_size_list_builder/struct.FixedSizeListBuilder.html b/arrow_array/builder/fixed_size_list_builder/struct.FixedSizeListBuilder.html
index 48ee11f9ec2..507c17b2066 100644
--- a/arrow_array/builder/fixed_size_list_builder/struct.FixedSizeListBuilder.html
+++ b/arrow_array/builder/fixed_size_list_builder/struct.FixedSizeListBuilder.html
@@ -2,7 +2,7 @@
     null_buffer_builder: NullBufferBuilder,
     values_builder: T,
     list_len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
-    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>&gt;,
+    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;FieldRef&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../../array/fixed_size_list_array/struct.FixedSizeListArray.html" title="struct arrow_array::array::fixed_size_list_array::FixedSizeListArray"><code>FixedSizeListArray</code></a></p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{builder::{Int32Builder, FixedSizeListBuilder}, Array, Int32Array};
@@ -40,7 +40,7 @@ builder.append(<span class="bool-val">true</span>);
     <span class="kw-2">*</span>list_array.value(<span class="number">3</span>),
     Int32Array::from(<span class="macro">vec!</span>[<span class="prelude-val">Some</span>(<span class="number">6</span>), <span class="prelude-val">Some</span>(<span class="number">7</span>), <span class="prelude-val">None</span>])
 )</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.null_buffer_builder" class="structfield section-header"><a href="#structfield.null_buffer_builder" class="anchor field">§</a><code>null_buffer_builder: NullBufferBuilder</code></span><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: T</code></span><s [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.null_buffer_builder" class="structfield section-header"><a href="#structfield.null_buffer_builder" class="anchor field">§</a><code>null_buffer_builder: NullBufferBuilder</code></span><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: T</code></span><s [...]
 <code>value_length</code> is the number of values within each array</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/fixed_size_list_builder.rs.html#87-94">source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(
     values_builder: T,
@@ -49,7 +49,7 @@ builder.append(<span class="bool-val">true</span>);
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <a href="struct.FixedSizeListBuilder.html" title="struct arrow_array::builder::fixed_size_list_builder::FixedSizeListBuilder"><code>FixedSizeListBuilder</code></a> from a given values array builder
 <code>value_length</code> is the number of values within each array
 <code>capacity</code> is the number of items to pre-allocate space for in this builder</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/fixed_size_list_builder.rs.html#102-107">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="type" href="../ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/fixed_size_list_builder.rs.html#102-107">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;FieldRef&gt;) -&gt; Self< [...]
 <p>By default, a nullable field is created with the name <code>item</code></p>
 <p>Note: <a href="struct.FixedSizeListBuilder.html#method.finish" title="method arrow_array::builder::fixed_size_list_builder::FixedSizeListBuilder::finish"><code>Self::finish</code></a> and <a href="struct.FixedSizeListBuilder.html#method.finish_cloned" title="method arrow_array::builder::fixed_size_list_builder::FixedSizeListBuilder::finish_cloned"><code>Self::finish_cloned</code></a> will panic if the
 field’s data type does not match that of <code>T</code></p>
diff --git a/arrow_array/builder/fn.make_builder.html b/arrow_array/builder/fn.make_builder.html
index 9137cd25a03..05008b169df 100644
--- a/arrow_array/builder/fn.make_builder.html
+++ b/arrow_array/builder/fn.make_builder.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Returns a builder with capacity `capacity` that corresponds to the datatype `DataType` This function is useful to construct arrays from an arbitrary vectors with known/expected schema."><title>make_builder in arrow_array::builder - Rust</title><script>if(window.location.protocol!=="file: [...]
-    datatype: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    datatype: &amp;DataType,
     capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 ) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns a builder with capacity <code>capacity</code> that corresponds to the datatype <code [...]
 This function is useful to construct arrays from an arbitrary vectors with known/expected
diff --git a/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.html b/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.html
index 5b5bd931e8f..e813e9e6dd9 100644
--- a/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.html
+++ b/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.html
@@ -26,7 +26,7 @@ API is used to store keys w.r.t the hash of the strings themselves</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_with_dictionary" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_bytes_dictionary_builder.rs.html#119-162">source</a><h4 class="code-header">pub fn <a href="#method.new_with_dictionary" class="fn">new_with_dictionary</a>(
     keys_capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     dictionary_values: &amp;<a class="struct" href="../../array/byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray">GenericByteArray</a>&lt;T&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a new <code>GenericByteDictionaryBuilder</code> from a keys capacity and a dictionary
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a new <code>GenericByteDictionaryBuilder</code> from a keys capacity and a dictionary
 which is initialized with the given values.
 The indices of those dictionary values are used as keys.</p>
 <h5 id="example"><a class="doc-anchor" href="#example">§</a>Example</h5>
@@ -48,7 +48,7 @@ builder.append(<span class="string">"abc"</span>).unwrap();
     T: <a class="trait" href="../../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_bytes_dictionary_builder.rs.html#211-240">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(
     &amp;mut self,
     value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;T::<a class="associatedtype" href="../../types/trait.ByteArrayType.html#associatedtype.Native" title="type arrow_array::types::ByteArrayType::Native">Native</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;K::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblo [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;K::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Append a value to the array. Return an existing index
 if already present in the values array or a new index if the
 value is appended to the values array.</p>
 <p>Returns an error if the new index would overflow the key type.</p>
diff --git a/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.html b/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.html
index bf30553c0cc..0673b056955 100644
--- a/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.html
+++ b/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.html
@@ -57,7 +57,7 @@ builder.try_append_view(block, <span class="number">0</span>, <span class="numbe
     block: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
     offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Try to append a view of the given <code>block</code>, <code>offset</cod [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Try to append a view of the given <code>block</code>, <code>offset</code> and <code>length</code></p>
 <p>See <a href="struct.GenericByteViewBuilder.html#method.append_block" title="method arrow_array::builder::generic_bytes_view_builder::GenericByteViewBuilder::append_block"><code>Self::append_block</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.flush_in_progress" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_bytes_view_builder.rs.html#180-185">source</a><h4 class="code-header">fn <a href="#method.flush_in_progress" class="fn">flush_in_progress</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Flushes the in progress block if any</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.push_completed" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_bytes_view_builder.rs.html#189-193">source</a><h4 class="code-header">fn <a href="#method.push_completed" class="fn">push_completed</a>(&amp;mut self, block: Buffer)</h4></section></summary><div class="docblock"><p>Append a block to <code>self.completed</code>, checking for overflow</p>
diff --git a/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.html b/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.html
index 16fab67366e..7f4d586a614 100644
--- a/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.html
+++ b/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.html
@@ -2,7 +2,7 @@
     offsets_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;OffsetSize&gt;,
     null_buffer_builder: NullBufferBuilder,
     values_builder: T,
-    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>&gt;,
+    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;FieldRef&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../../array/list_array/struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a></p>
 <p>Use <a href="../type.ListBuilder.html" title="type arrow_array::builder::ListBuilder"><code>ListBuilder</code></a> to build <a href="../../array/list_array/type.ListArray.html" title="type arrow_array::array::list_array::ListArray"><code>ListArray</code></a>s and <a href="../type.LargeListBuilder.html" title="type arrow_array::builder::LargeListBuilder"><code>LargeListBuilder</code></a> to build <a href="../../array/list_array/type.LargeListArray.html" title="type arrow_array::array:: [...]
 <h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
@@ -53,10 +53,10 @@ builder.append(<span class="bool-val">true</span>);
   array.value_offsets(),
   <span class="kw-2">&amp;</span>[<span class="number">0</span>, <span class="number">3</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">7</span>]
 );</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;OffsetSize&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sec [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;OffsetSize&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sec [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_list_builder.rs.html#112-121">source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(values_builder: T, capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div cla [...]
 <code>capacity</code> is the number of items to pre-allocate space for in this builder</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_list_builder.rs.html#129-134">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="type" href="../../ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/generic_list_builder.rs.html#129-134">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;FieldRef&gt;) -&gt; Self</h4 [...]
 <p>By default a nullable field is created with the name <code>item</code></p>
 <p>Note: <a href="struct.GenericListBuilder.html#method.finish" title="method arrow_array::builder::generic_list_builder::GenericListBuilder::finish"><code>Self::finish</code></a> and <a href="struct.GenericListBuilder.html#method.finish_cloned" title="method arrow_array::builder::generic_list_builder::GenericListBuilder::finish_cloned"><code>Self::finish_cloned</code></a> will panic if the
 field’s data type does not match that of <code>T</code></p>
diff --git a/arrow_array/builder/index.html b/arrow_array/builder/index.html
index 142d205dd33..7544d8a4bd1 100644
--- a/arrow_array/builder/index.html
+++ b/arrow_array/builder/index.html
@@ -103,6 +103,6 @@ you want to convert to Arrow arrays.</p>
     builder.extend(rows);
     RecordBatch::from(<span class="kw-2">&amp;</span>builder.finish())
 }</code></pre></div>
-</div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="boolean_builder/index.html" title="mod arrow_array::builder::boolean_builder">boolean_builder</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="mod" href="buffer_builder/index.html" title="mod arrow_array::builder::buffer_builder">buffer_builder</a><span title=" [...]
+</div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="boolean_builder/index.html" title="mod arrow_array::builder::boolean_builder">boolean_builder</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="mod" href="buffer_builder/index.html" title="mod arrow_array::builder::buffer_builder">buffer_builder</a><span title=" [...]
 This function is useful to construct arrays from an arbitrary vectors with known/expected
 schema.</div></li></ul><h2 id="types" class="section-header">Type Aliases<a href="#types" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="type" href="type.BinaryBuilder.html" title="type arrow_array::builder::BinaryBuilder">BinaryBuilder</a></div><div class="desc docblock-short">Builder for <a href="../array/binary_array/type.BinaryArray.html" title="type arrow_array::array::binary_array::BinaryArray"><code>BinaryArray</code></a></div></li><li><div cl [...]
\ No newline at end of file
diff --git a/arrow_array/builder/map_builder/index.html b/arrow_array/builder/map_builder/index.html
index d10709f4cf9..ff422d70dc3 100644
--- a/arrow_array/builder/map_builder/index.html
+++ b/arrow_array/builder/map_builder/index.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `map_builder` mod in crate `arrow_array`."><title>arrow_array::builder::map_builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-01 [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `map_builder` mod in crate `arrow_array`."><title>arrow_array::builder::map_builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-01 [...]
\ No newline at end of file
diff --git a/arrow_array/builder/map_builder/struct.MapBuilder.html b/arrow_array/builder/map_builder/struct.MapBuilder.html
index 250fbb9c8a8..b93a8bb74be 100644
--- a/arrow_array/builder/map_builder/struct.MapBuilder.html
+++ b/arrow_array/builder/map_builder/struct.MapBuilder.html
@@ -4,7 +4,7 @@
     field_names: <a class="struct" href="struct.MapFieldNames.html" title="struct arrow_array::builder::map_builder::MapFieldNames">MapFieldNames</a>,
     key_builder: K,
     value_builder: V,
-    value_field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>&gt;,
+    value_field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;FieldRef&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
@@ -31,7 +31,7 @@ builder.append(<span class="bool-val">false</span>).unwrap();
 <span class="macro">assert_eq!</span>(array.values().as_ref(), <span class="kw-2">&amp;</span>Int32Array::from(<span class="macro">vec!</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">4</span>]));
 <span class="macro">assert_eq!</span>(array.keys().as_ref(), <span class="kw-2">&amp;</span>StringArray::from(<span class="macro">vec!</span>[<span class="string">"joe"</span>, <span class="string">"blogs"</span>, <span class="string">"foo"</span>]));
 </code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>& [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>& [...]
     field_names: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.MapFieldNames.html" title="struct arrow_array::builder::map_builder::MapFieldNames">MapFieldNames</a>&gt;,
     key_builder: K,
     value_builder: V,
@@ -42,14 +42,14 @@ builder.append(<span class="bool-val">false</span>).unwrap();
     value_builder: V,
     capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>MapBuilder</code> with capacity</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_values_field" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#120-125">source</a><h4 class="code-header">pub fn <a href="#method.with_values_field" class="fn">with_values_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="type"  [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_values_field" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#120-125">source</a><h4 class="code-header">pub fn <a href="#method.with_values_field" class="fn">with_values_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;FieldRef&gt;) -& [...]
 <p>By default a nullable field is created with the name <code>values</code></p>
 <p>Note: <a href="struct.MapBuilder.html#method.finish" title="method arrow_array::builder::map_builder::MapBuilder::finish"><code>Self::finish</code></a> and <a href="struct.MapBuilder.html#method.finish_cloned" title="method arrow_array::builder::map_builder::MapBuilder::finish_cloned"><code>Self::finish_cloned</code></a> will panic if the
 field’s data type does not match that of <code>V</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.keys" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#128-130">source</a><h4 class="code-header">pub fn <a href="#method.keys" class="fn">keys</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut K</a></h4></section></summary><div class="docblock"><p>Returns the key array builder  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#133-135">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut V</a></h4></section></summary><div class="docblock"><p>Returns the value array  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.entries" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#138-140">source</a><h4 class="code-header">pub fn <a href="#method.entries" class="fn">entries</a>(&amp;mut self) -&gt; (<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut K</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/pri [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#146-157">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(&amp;mut self, is_valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum. [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#146-157">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(&amp;mut self, is_valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum. [...]
 <p>Returns an error if the key and values builders are in an inconsistent state.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#160-170">source</a><h4 class="code-header">pub fn <a href="#method.finish" class="fn">finish</a>(&amp;mut self) -&gt; <a class="struct" href="../../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h4></section></summary><div class="docbloc [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish_cloned" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#173-181">source</a><h4 class="code-header">pub fn <a href="#method.finish_cloned" class="fn">finish_cloned</a>(&amp;self) -&gt; <a class="struct" href="../../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h4></section></summary><d [...]
diff --git a/arrow_array/builder/map_builder/struct.MapFieldNames.html b/arrow_array/builder/map_builder/struct.MapFieldNames.html
index 7808a0ea31f..75a7016c3dd 100644
--- a/arrow_array/builder/map_builder/struct.MapFieldNames.html
+++ b/arrow_array/builder/map_builder/struct.MapFieldNames.html
@@ -2,10 +2,10 @@
     pub entry: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
     pub key: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
     pub value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
-}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The <a href="../../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field"><code>Field</code></a> names for a <a href="../../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.entry" class="structfield section-header"><a href="#structfield.entry" class="anchor field">§</a><code>entry: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p><a href="../../../arrow_schema/field/struct.Field.html" title="struct ar [...]
-</div><span id="structfield.key" class="structfield section-header"><a href="#structfield.key" class="anchor field">§</a><code>key: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p><a href="../../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field"><code>Field</code></a> name for map key</p>
-</div><span id="structfield.value" class="structfield section-header"><a href="#structfield.value" class="anchor field">§</a><code>value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p><a href="../../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field"><code>Field</code></a> name for map value</p>
+}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The [<code>Field</code>] names for a <a href="../../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.entry" class="structfield section-header"><a href="#structfield.entry" class="anchor field">§</a><code>entry: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p>[<code>Field</code>] name for map entries</p>
+</div><span id="structfield.key" class="structfield section-header"><a href="#structfield.key" class="anchor field">§</a><code>key: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p>[<code>Field</code>] name for map key</p>
+</div><span id="structfield.value" class="structfield section-header"><a href="#structfield.value" class="anchor field">§</a><code>value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p>[<code>Field</code>] name for map value</p>
 </div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-MapFieldNames" class="impl"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#68">source</a><a href="#impl-Clone-for-MapFieldNames" class="anchor">§</a><h3 class="code-header">impl <a class="trait [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.html b/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.html
index ecb24d38bb0..8d7b4d09f66 100644
--- a/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.html
+++ b/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.html
@@ -1,18 +1,18 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Builder for `PrimitiveArray`"><title>PrimitiveBuilder in arrow_array::builder::primitive_builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.wof [...]
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../../array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Nati [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Nati [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#148-154">source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Creat [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_from_buffer" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#157-172">source</a><h4 class="code-header">pub fn <a href="#method.new_from_buffer" class="fn">new_from_buffer</a>(
     values_buffer: MutableBuffer,
     null_buffer: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;MutableBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new primitive array builder from buffers</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#183-191">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; Self</h4></sec [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#183-191">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: DataType) -&gt; Self</h4></section></summary><div class="docblock"><p>By default <a href="struct.PrimitiveBuilder.html" title="struct arrow_array::builde [...]
 data type of the generated array.</p>
 <p>This method allows overriding the data type, to allow specifying timezones
-for <a href="../../../arrow_schema/datatype/enum.DataType.html#variant.Timestamp" title="variant arrow_schema::datatype::DataType::Timestamp"><code>DataType::Timestamp</code></a> or precision and scale for <a href="../../../arrow_schema/datatype/enum.DataType.html#variant.Decimal128" title="variant arrow_schema::datatype::DataType::Decimal128"><code>DataType::Decimal128</code></a> and <a href="../../../arrow_schema/datatype/enum.DataType.html#variant.Decimal256" title="variant arrow_sche [...]
+for [<code>DataType::Timestamp</code>] or precision and scale for [<code>DataType::Decimal128</code>] and [<code>DataType::Decimal256</code>]</p>
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>This method panics if <code>data_type</code> is not <a href="../../array/primitive_array/struct.PrimitiveArray.html#method.is_compatible" title="associated function arrow_array::array::primitive_array::PrimitiveArray::is_compatible">PrimitiveArray::is_compatible</a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.capacity" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#194-196">source</a><h4 class="code-header">pub fn <a href="#method.capacity" class="fn">capacity</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the capacity of t [...]
@@ -42,7 +42,7 @@ the iterator implement <code>TrustedLen</code> once that is stabilized.</p>
     self,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
     scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Sets the precision and scale</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Sets the precision and scale</p>
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PrimitiveBuilder%3CP%3E-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#335-348">source</a><a href="#impl-PrimitiveBuilder%3CP%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;P: <a class="trait" href="../../types/trait.ArrowTimestampType.html" title="trait arrow_array::types::ArrowTimestampType">ArrowTimestampType< [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_timezone_opt" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#342-347">source</a><h4 class="code-header">pub fn <a href="#method.with_timezone_opt" class="fn">with_timezone_opt</a>&lt;S: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrayBuilder-for-PrimitiveBuilder%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_builder.rs.html#103-133">source</a><a href="#impl-ArrayBuilder-for-PrimitiveBui [...]
diff --git a/arrow_array/builder/primitive_builder/type.Date32Builder.html b/arrow_array/builder/primitive_builder/type.Date32Builder.html
index 7038e9ca38f..ec20ee86266 100644
--- a/arrow_array/builder/primitive_builder/type.Date32Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Date32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date32Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Date64Builder.html b/arrow_array/builder/primitive_builder/type.Date64Builder.html
index 103de428970..d7d3182ad18 100644
--- a/arrow_array/builder/primitive_builder/type.Date64Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Date64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date64Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Decimal128Builder.html b/arrow_array/builder/primitive_builder/type.Decimal128Builder.html
index 282c7c6302b..87a4363440f 100644
--- a/arrow_array/builder/primitive_builder/type.Decimal128Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Decimal128Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal128Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt; [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt; [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Decimal256Builder.html b/arrow_array/builder/primitive_builder/type.Decimal256Builder.html
index b18bad6b4d8..c36efa84fe8 100644
--- a/arrow_array/builder/primitive_builder/type.Decimal256Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Decimal256Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal256Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;i256&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;i256&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield section-header [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;i256&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield section-header [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.DurationMicrosecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationMicrosecondBuilder.html
index 6c2e0a604f5..9869e7bd554 100644
--- a/arrow_array/builder/primitive_builder/type.DurationMicrosecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.DurationMicrosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMicrosecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.DurationMillisecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationMillisecondBuilder.html
index 0526e7a3369..d03a1f06b8e 100644
--- a/arrow_array/builder/primitive_builder/type.DurationMillisecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.DurationMillisecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMillisecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.DurationNanosecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationNanosecondBuilder.html
index 49d21e3b525..1361bd2f2cf 100644
--- a/arrow_array/builder/primitive_builder/type.DurationNanosecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.DurationNanosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationNanosecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.DurationSecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationSecondBuilder.html
index b951aca03e0..df64ba159fb 100644
--- a/arrow_array/builder/primitive_builder/type.DurationSecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.DurationSecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationSecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Float16Builder.html b/arrow_array/builder/primitive_builder/type.Float16Builder.html
index 787553d4c66..278d05f27b9 100644
--- a/arrow_array/builder/primitive_builder/type.Float16Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Float16Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float16Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct half::binary16::f16">f16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct ha [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct ha [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Float32Builder.html b/arrow_array/builder/primitive_builder/type.Float32Builder.html
index 7eb75291999..173c1962773 100644
--- a/arrow_array/builder/primitive_builder/type.Float32Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Float32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float32Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Float64Builder.html b/arrow_array/builder/primitive_builder/type.Float64Builder.html
index e942102255f..310edcfa172 100644
--- a/arrow_array/builder/primitive_builder/type.Float64Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Float64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float64Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Int16Builder.html b/arrow_array/builder/primitive_builder/type.Int16Builder.html
index e89aa2188c7..9d7a3379f72 100644
--- a/arrow_array/builder/primitive_builder/type.Int16Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Int16Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Int32Builder.html b/arrow_array/builder/primitive_builder/type.Int32Builder.html
index 0e5e5bbd32a..5742b5d8484 100644
--- a/arrow_array/builder/primitive_builder/type.Int32Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Int32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Int64Builder.html b/arrow_array/builder/primitive_builder/type.Int64Builder.html
index 45feb12e5fe..4ded404bd87 100644
--- a/arrow_array/builder/primitive_builder/type.Int64Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Int64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Int8Builder.html b/arrow_array/builder/primitive_builder/type.Int8Builder.html
index 084e0c8f2d2..ce1af28c0ad 100644
--- a/arrow_array/builder/primitive_builder/type.Int8Builder.html
+++ b/arrow_array/builder/primitive_builder/type.Int8Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int8Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;</co [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;</co [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.IntervalDayTimeBuilder.html b/arrow_array/builder/primitive_builder/type.IntervalDayTimeBuilder.html
index 6b5cfff9921..cb09f84f72c 100644
--- a/arrow_array/builder/primitive_builder/type.IntervalDayTimeBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.IntervalDayTimeBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalDayTimeBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalDayTime&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalDayTime&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sec [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalDayTime&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sec [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.IntervalMonthDayNanoBuilder.html b/arrow_array/builder/primitive_builder/type.IntervalMonthDayNanoBuilder.html
index 31db0349f77..69845727e6c 100644
--- a/arrow_array/builder/primitive_builder/type.IntervalMonthDayNanoBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.IntervalMonthDayNanoBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalMonthDayNanoBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalMonthDayNano&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalMonthDayNano&gt;</code></span><span id="structfield.null_buffer_builder" class="structfiel [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalMonthDayNano&gt;</code></span><span id="structfield.null_buffer_builder" class="structfiel [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.IntervalYearMonthBuilder.html b/arrow_array/builder/primitive_builder/type.IntervalYearMonthBuilder.html
index bc93201cf60..018d4d3bb4e 100644
--- a/arrow_array/builder/primitive_builder/type.IntervalYearMonthBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.IntervalYearMonthBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalYearMonthBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Time32MillisecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time32MillisecondBuilder.html
index c8a1a6ff9ff..cb19204a45a 100644
--- a/arrow_array/builder/primitive_builder/type.Time32MillisecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.Time32MillisecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32MillisecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Time32SecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time32SecondBuilder.html
index 05c0f2fe838..dcd5491177e 100644
--- a/arrow_array/builder/primitive_builder/type.Time32SecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.Time32SecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32SecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Time64MicrosecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time64MicrosecondBuilder.html
index 3b8e5c06ba2..d1a28b3630f 100644
--- a/arrow_array/builder/primitive_builder/type.Time64MicrosecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.Time64MicrosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64MicrosecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.Time64NanosecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time64NanosecondBuilder.html
index a74c45da949..25ee201c207 100644
--- a/arrow_array/builder/primitive_builder/type.Time64NanosecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.Time64NanosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64NanosecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.TimestampMicrosecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampMicrosecondBuilder.html
index 9222936ef81..60eed9d25b3 100644
--- a/arrow_array/builder/primitive_builder/type.TimestampMicrosecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.TimestampMicrosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMicrosecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.TimestampMillisecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampMillisecondBuilder.html
index ed15f7daf4a..d5939d769f4 100644
--- a/arrow_array/builder/primitive_builder/type.TimestampMillisecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.TimestampMillisecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMillisecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.TimestampNanosecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampNanosecondBuilder.html
index 754e3f055cb..82eb1d0cbab 100644
--- a/arrow_array/builder/primitive_builder/type.TimestampNanosecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.TimestampNanosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampNanosecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.TimestampSecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampSecondBuilder.html
index 032ef3eb5d4..1e8b66a3fdd 100644
--- a/arrow_array/builder/primitive_builder/type.TimestampSecondBuilder.html
+++ b/arrow_array/builder/primitive_builder/type.TimestampSecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampSecondBuilder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.UInt16Builder.html b/arrow_array/builder/primitive_builder/type.UInt16Builder.html
index 419a911be26..13231c0c01b 100644
--- a/arrow_array/builder/primitive_builder/type.UInt16Builder.html
+++ b/arrow_array/builder/primitive_builder/type.UInt16Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt16Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.UInt32Builder.html b/arrow_array/builder/primitive_builder/type.UInt32Builder.html
index 53edbc5b29e..e4803885720 100644
--- a/arrow_array/builder/primitive_builder/type.UInt32Builder.html
+++ b/arrow_array/builder/primitive_builder/type.UInt32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt32Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.UInt64Builder.html b/arrow_array/builder/primitive_builder/type.UInt64Builder.html
index 988f2ad99d7..451949152d6 100644
--- a/arrow_array/builder/primitive_builder/type.UInt64Builder.html
+++ b/arrow_array/builder/primitive_builder/type.UInt64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt64Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;</ [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_builder/type.UInt8Builder.html b/arrow_array/builder/primitive_builder/type.UInt8Builder.html
index 625350982d8..63a2dcb7359 100644
--- a/arrow_array/builder/primitive_builder/type.UInt8Builder.html
+++ b/arrow_array/builder/primitive_builder/type.UInt8Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt8Builder {
     values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;</co [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="../struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;</co [...]
\ No newline at end of file
diff --git a/arrow_array/builder/primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html b/arrow_array/builder/primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html
index 472accfbe68..b5c4a1357f4 100644
--- a/arrow_array/builder/primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html
+++ b/arrow_array/builder/primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html
@@ -49,7 +49,7 @@
 <code>values_capacity</code>: the number of distinct dictionary values, i.e. size of dictionary</p>
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PrimitiveDictionaryBuilder%3CK,+V%3E-1" class="impl"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#208-310">source</a><a href="#impl-PrimitiveDictionaryBuilder%3CK,+V%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;K, V&gt; <a class="struct" href="struct.PrimitiveDictionaryBuilder.html" title="struct arrow_array::buil [...]
     K: <a class="trait" href="../../types/trait.ArrowDictionaryKeyType.html" title="trait arrow_array::types::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,
-    V: <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#217-231">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append [...]
+    V: <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#217-231">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append [...]
 if already present in the values array or a new index if the
 value is appended to the values array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_value" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#239-241">source</a><h4 class="code-header">pub fn <a href="#method.append_value" class="fn">append_value</a>(&amp;mut self, value: V::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimit [...]
diff --git a/arrow_array/builder/struct.BooleanBuilder.html b/arrow_array/builder/struct.BooleanBuilder.html
index 5be30bcc9e5..ab9b3b04ccd 100644
--- a/arrow_array/builder/struct.BooleanBuilder.html
+++ b/arrow_array/builder/struct.BooleanBuilder.html
@@ -39,7 +39,7 @@ b.append_value(<span class="bool-val">true</span>);
     &amp;mut self,
     values: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>],
     is_valid: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>],
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends values from a slice of type <code>T</code> and a validity boolean  [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends values from a slice of type <code>T</code> and a validity boolean slice.</p>
 <p>Returns an error if the slices are of different lengths</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish" class="method"><a class="src rightside" href="../../src/arrow_array/builder/boolean_builder.rs.html#143-153">source</a><h4 class="code-header">pub fn <a href="#method.finish" class="fn">finish</a>(&amp;mut self) -&gt; <a class="struct" href="../array/boolean_array/struct.BooleanArray.html" title="struct arrow_array::array::boolean_array::BooleanArray">BooleanArray</a></h4></section></summary>< [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish_cloned" class="method"><a class="src rightside" href="../../src/arrow_array/builder/boolean_builder.rs.html#156-167">source</a><h4 class="code-header">pub fn <a href="#method.finish_cloned" class="fn">finish_cloned</a>(&amp;self) -&gt; <a class="struct" href="../array/boolean_array/struct.BooleanArray.html" title="struct arrow_array::array::boolean_array::BooleanArray">BooleanArray</a></h4></se [...]
diff --git a/arrow_array/builder/struct.FixedSizeBinaryBuilder.html b/arrow_array/builder/struct.FixedSizeBinaryBuilder.html
index 480cbd7c464..af96090d98e 100644
--- a/arrow_array/builder/struct.FixedSizeBinaryBuilder.html
+++ b/arrow_array/builder/struct.FixedSizeBinaryBuilder.html
@@ -20,7 +20,7 @@ that can be appended without reallocating</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_value" class="method"><a class="src rightside" href="../../src/arrow_array/builder/fixed_size_binary_builder.rs.html#75-86">source</a><h4 class="code-header">pub fn <a href="#method.append_value" class="fn">append_value</a>(
     &amp;mut self,
     value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends a byte slice into the builder.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends a byte slice into the builder.</p>
 <p>Automatically update the null buffer to delimit the slice appended in as a
 distinct value element.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_null" class="method"><a class="src rightside" href="../../src/arrow_array/builder/fixed_size_binary_builder.rs.html#90-94">source</a><h4 class="code-header">pub fn <a href="#method.append_null" class="fn">append_null</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Append a null value to the array.</p>
diff --git a/arrow_array/builder/struct.FixedSizeListBuilder.html b/arrow_array/builder/struct.FixedSizeListBuilder.html
index 02d6b42fc4d..08527d2a710 100644
--- a/arrow_array/builder/struct.FixedSizeListBuilder.html
+++ b/arrow_array/builder/struct.FixedSizeListBuilder.html
@@ -2,7 +2,7 @@
     null_buffer_builder: NullBufferBuilder,
     values_builder: T,
     list_len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
-    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>&gt;,
+    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;FieldRef&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../array/fixed_size_list_array/struct.FixedSizeListArray.html" title="struct arrow_array::array::fixed_size_list_array::FixedSizeListArray"><code>FixedSizeListArray</code></a></p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{builder::{Int32Builder, FixedSizeListBuilder}, Array, Int32Array};
@@ -40,7 +40,7 @@ builder.append(<span class="bool-val">true</span>);
     <span class="kw-2">*</span>list_array.value(<span class="number">3</span>),
     Int32Array::from(<span class="macro">vec!</span>[<span class="prelude-val">Some</span>(<span class="number">6</span>), <span class="prelude-val">Some</span>(<span class="number">7</span>), <span class="prelude-val">None</span>])
 )</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.null_buffer_builder" class="structfield section-header"><a href="#structfield.null_buffer_builder" class="anchor field">§</a><code>null_buffer_builder: NullBufferBuilder</code></span><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: T</code></span><s [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.null_buffer_builder" class="structfield section-header"><a href="#structfield.null_buffer_builder" class="anchor field">§</a><code>null_buffer_builder: NullBufferBuilder</code></span><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: T</code></span><s [...]
 <code>value_length</code> is the number of values within each array</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../../src/arrow_array/builder/fixed_size_list_builder.rs.html#87-94">source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(
     values_builder: T,
@@ -49,7 +49,7 @@ builder.append(<span class="bool-val">true</span>);
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <a href="fixed_size_list_builder/struct.FixedSizeListBuilder.html" title="struct arrow_array::builder::fixed_size_list_builder::FixedSizeListBuilder"><code>FixedSizeListBuilder</code></a> from a given values array builder
 <code>value_length</code> is the number of values within each array
 <code>capacity</code> is the number of items to pre-allocate space for in this builder</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../src/arrow_array/builder/fixed_size_list_builder.rs.html#102-107">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="type" href="../../ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../src/arrow_array/builder/fixed_size_list_builder.rs.html#102-107">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;FieldRef&gt;) -&gt; Self</h4 [...]
 <p>By default, a nullable field is created with the name <code>item</code></p>
 <p>Note: <a href="fixed_size_list_builder/struct.FixedSizeListBuilder.html#method.finish" title="method arrow_array::builder::fixed_size_list_builder::FixedSizeListBuilder::finish"><code>Self::finish</code></a> and <a href="fixed_size_list_builder/struct.FixedSizeListBuilder.html#method.finish_cloned" title="method arrow_array::builder::fixed_size_list_builder::FixedSizeListBuilder::finish_cloned"><code>Self::finish_cloned</code></a> will panic if the
 field’s data type does not match that of <code>T</code></p>
diff --git a/arrow_array/builder/struct.GenericByteDictionaryBuilder.html b/arrow_array/builder/struct.GenericByteDictionaryBuilder.html
index 1cff3ca6a47..b9748108ea5 100644
--- a/arrow_array/builder/struct.GenericByteDictionaryBuilder.html
+++ b/arrow_array/builder/struct.GenericByteDictionaryBuilder.html
@@ -26,7 +26,7 @@ API is used to store keys w.r.t the hash of the strings themselves</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_with_dictionary" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_bytes_dictionary_builder.rs.html#119-162">source</a><h4 class="code-header">pub fn <a href="#method.new_with_dictionary" class="fn">new_with_dictionary</a>(
     keys_capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     dictionary_values: &amp;<a class="struct" href="../array/byte_array/struct.GenericByteArray.html" title="struct arrow_array::array::byte_array::GenericByteArray">GenericByteArray</a>&lt;T&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a new <code>GenericByteDictionaryBuilder</code> from a keys capacity and a dictionary
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a new <code>GenericByteDictionaryBuilder</code> from a keys capacity and a dictionary
 which is initialized with the given values.
 The indices of those dictionary values are used as keys.</p>
 <h5 id="example"><a class="doc-anchor" href="#example">§</a>Example</h5>
@@ -48,7 +48,7 @@ builder.append(<span class="string">"abc"</span>).unwrap();
     T: <a class="trait" href="../types/trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_bytes_dictionary_builder.rs.html#211-240">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(
     &amp;mut self,
     value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;T::<a class="associatedtype" href="../types/trait.ByteArrayType.html#associatedtype.Native" title="type arrow_array::types::ByteArrayType::Native">Native</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;K::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;K::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Append a value to the array. Return an existing index
 if already present in the values array or a new index if the
 value is appended to the values array.</p>
 <p>Returns an error if the new index would overflow the key type.</p>
diff --git a/arrow_array/builder/struct.GenericByteViewBuilder.html b/arrow_array/builder/struct.GenericByteViewBuilder.html
index e2ee78030c2..847c2d4362f 100644
--- a/arrow_array/builder/struct.GenericByteViewBuilder.html
+++ b/arrow_array/builder/struct.GenericByteViewBuilder.html
@@ -57,7 +57,7 @@ builder.try_append_view(block, <span class="number">0</span>, <span class="numbe
     block: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
     offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Try to append a view of the given <code>block</code>, <code>offset</code>  [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Try to append a view of the given <code>block</code>, <code>offset</code> and <code>length</code></p>
 <p>See <a href="generic_bytes_view_builder/struct.GenericByteViewBuilder.html#method.append_block" title="method arrow_array::builder::generic_bytes_view_builder::GenericByteViewBuilder::append_block"><code>Self::append_block</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.flush_in_progress" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_bytes_view_builder.rs.html#180-185">source</a><h4 class="code-header">fn <a href="#method.flush_in_progress" class="fn">flush_in_progress</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Flushes the in progress block if any</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.push_completed" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_bytes_view_builder.rs.html#189-193">source</a><h4 class="code-header">fn <a href="#method.push_completed" class="fn">push_completed</a>(&amp;mut self, block: Buffer)</h4></section></summary><div class="docblock"><p>Append a block to <code>self.completed</code>, checking for overflow</p>
diff --git a/arrow_array/builder/struct.GenericListBuilder.html b/arrow_array/builder/struct.GenericListBuilder.html
index f868fbba895..2fb70595686 100644
--- a/arrow_array/builder/struct.GenericListBuilder.html
+++ b/arrow_array/builder/struct.GenericListBuilder.html
@@ -2,7 +2,7 @@
     offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;OffsetSize&gt;,
     null_buffer_builder: NullBufferBuilder,
     values_builder: T,
-    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>&gt;,
+    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;FieldRef&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../array/list_array/struct.GenericListArray.html" title="struct arrow_array::array::list_array::GenericListArray"><code>GenericListArray</code></a></p>
 <p>Use <a href="type.ListBuilder.html" title="type arrow_array::builder::ListBuilder"><code>ListBuilder</code></a> to build <a href="../array/list_array/type.ListArray.html" title="type arrow_array::array::list_array::ListArray"><code>ListArray</code></a>s and <a href="type.LargeListBuilder.html" title="type arrow_array::builder::LargeListBuilder"><code>LargeListBuilder</code></a> to build <a href="../array/list_array/type.LargeListArray.html" title="type arrow_array::array::list_array:: [...]
 <h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
@@ -53,10 +53,10 @@ builder.append(<span class="bool-val">true</span>);
   array.value_offsets(),
   <span class="kw-2">&amp;</span>[<span class="number">0</span>, <span class="number">3</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">7</span>]
 );</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;OffsetSize&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sectio [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;OffsetSize&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sectio [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_list_builder.rs.html#112-121">source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(values_builder: T, capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class= [...]
 <code>capacity</code> is the number of items to pre-allocate space for in this builder</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_list_builder.rs.html#129-134">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="type" href="../../arr [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_field" class="method"><a class="src rightside" href="../../src/arrow_array/builder/generic_list_builder.rs.html#129-134">source</a><h4 class="code-header">pub fn <a href="#method.with_field" class="fn">with_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;FieldRef&gt;) -&gt; Self</h4></ [...]
 <p>By default a nullable field is created with the name <code>item</code></p>
 <p>Note: <a href="generic_list_builder/struct.GenericListBuilder.html#method.finish" title="method arrow_array::builder::generic_list_builder::GenericListBuilder::finish"><code>Self::finish</code></a> and <a href="generic_list_builder/struct.GenericListBuilder.html#method.finish_cloned" title="method arrow_array::builder::generic_list_builder::GenericListBuilder::finish_cloned"><code>Self::finish_cloned</code></a> will panic if the
 field’s data type does not match that of <code>T</code></p>
diff --git a/arrow_array/builder/struct.MapBuilder.html b/arrow_array/builder/struct.MapBuilder.html
index e957b65d906..d0714fe2b0d 100644
--- a/arrow_array/builder/struct.MapBuilder.html
+++ b/arrow_array/builder/struct.MapBuilder.html
@@ -4,7 +4,7 @@
     field_names: <a class="struct" href="map_builder/struct.MapFieldNames.html" title="struct arrow_array::builder::map_builder::MapFieldNames">MapFieldNames</a>,
     key_builder: K,
     value_builder: V,
-    value_field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>&gt;,
+    value_field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;FieldRef&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
@@ -31,7 +31,7 @@ builder.append(<span class="bool-val">false</span>).unwrap();
 <span class="macro">assert_eq!</span>(array.values().as_ref(), <span class="kw-2">&amp;</span>Int32Array::from(<span class="macro">vec!</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">4</span>]));
 <span class="macro">assert_eq!</span>(array.keys().as_ref(), <span class="kw-2">&amp;</span>StringArray::from(<span class="macro">vec!</span>[<span class="string">"joe"</span>, <span class="string">"blogs"</span>, <span class="string">"foo"</span>]));
 </code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt; [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt; [...]
     field_names: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="map_builder/struct.MapFieldNames.html" title="struct arrow_array::builder::map_builder::MapFieldNames">MapFieldNames</a>&gt;,
     key_builder: K,
     value_builder: V,
@@ -42,14 +42,14 @@ builder.append(<span class="bool-val">false</span>).unwrap();
     value_builder: V,
     capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>MapBuilder</code> with capacity</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_values_field" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#120-125">source</a><h4 class="code-header">pub fn <a href="#method.with_values_field" class="fn">with_values_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="type" hre [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_values_field" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#120-125">source</a><h4 class="code-header">pub fn <a href="#method.with_values_field" class="fn">with_values_field</a>(self, field: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;FieldRef&gt;) -&gt; [...]
 <p>By default a nullable field is created with the name <code>values</code></p>
 <p>Note: <a href="map_builder/struct.MapBuilder.html#method.finish" title="method arrow_array::builder::map_builder::MapBuilder::finish"><code>Self::finish</code></a> and <a href="map_builder/struct.MapBuilder.html#method.finish_cloned" title="method arrow_array::builder::map_builder::MapBuilder::finish_cloned"><code>Self::finish_cloned</code></a> will panic if the
 field’s data type does not match that of <code>V</code></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.keys" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#128-130">source</a><h4 class="code-header">pub fn <a href="#method.keys" class="fn">keys</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut K</a></h4></section></summary><div class="docblock"><p>Returns the key array builder of  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.values" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#133-135">source</a><h4 class="code-header">pub fn <a href="#method.values" class="fn">values</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut V</a></h4></section></summary><div class="docblock"><p>Returns the value array bui [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.entries" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#138-140">source</a><h4 class="code-header">pub fn <a href="#method.entries" class="fn">entries</a>(&amp;mut self) -&gt; (<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut K</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primit [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#146-157">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(&amp;mut self, is_valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Res [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#146-157">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(&amp;mut self, is_valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Res [...]
 <p>Returns an error if the key and values builders are in an inconsistent state.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#160-170">source</a><h4 class="code-header">pub fn <a href="#method.finish" class="fn">finish</a>(&amp;mut self) -&gt; <a class="struct" href="../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h4></section></summary><div class="docblock"><p> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.finish_cloned" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#173-181">source</a><h4 class="code-header">pub fn <a href="#method.finish_cloned" class="fn">finish_cloned</a>(&amp;self) -&gt; <a class="struct" href="../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray">MapArray</a></h4></section></summary><div cla [...]
diff --git a/arrow_array/builder/struct.MapFieldNames.html b/arrow_array/builder/struct.MapFieldNames.html
index 0fd8402b00f..65d8fcd9a04 100644
--- a/arrow_array/builder/struct.MapFieldNames.html
+++ b/arrow_array/builder/struct.MapFieldNames.html
@@ -2,10 +2,10 @@
     pub entry: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
     pub key: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
     pub value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
-}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The <a href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field"><code>Field</code></a> names for a <a href="../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.entry" class="structfield section-header"><a href="#structfield.entry" class="anchor field">§</a><code>entry: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p><a href="../../arrow_schema/field/struct.Field.html" title="struct arrow [...]
-</div><span id="structfield.key" class="structfield section-header"><a href="#structfield.key" class="anchor field">§</a><code>key: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p><a href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field"><code>Field</code></a> name for map key</p>
-</div><span id="structfield.value" class="structfield section-header"><a href="#structfield.value" class="anchor field">§</a><code>value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p><a href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field"><code>Field</code></a> name for map value</p>
+}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The [<code>Field</code>] names for a <a href="../array/map_array/struct.MapArray.html" title="struct arrow_array::array::map_array::MapArray"><code>MapArray</code></a></p>
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.entry" class="structfield section-header"><a href="#structfield.entry" class="anchor field">§</a><code>entry: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p>[<code>Field</code>] name for map entries</p>
+</div><span id="structfield.key" class="structfield section-header"><a href="#structfield.key" class="anchor field">§</a><code>key: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p>[<code>Field</code>] name for map key</p>
+</div><span id="structfield.value" class="structfield section-header"><a href="#structfield.value" class="anchor field">§</a><code>value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><div class="docblock"><p>[<code>Field</code>] name for map value</p>
 </div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-MapFieldNames" class="impl"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#68">source</a><a href="#impl-Clone-for-MapFieldNames" class="anchor">§</a><h3 class="code-header">impl <a class="trait" h [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/arrow_array/builder/struct.PrimitiveBuilder.html b/arrow_array/builder/struct.PrimitiveBuilder.html
index 1104821292f..033034d1923 100644
--- a/arrow_array/builder/struct.PrimitiveBuilder.html
+++ b/arrow_array/builder/struct.PrimitiveBuilder.html
@@ -1,18 +1,18 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Builder for `PrimitiveArray`"><title>PrimitiveBuilder in arrow_array::builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium- [...]
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" ti [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" ti [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#148-154">source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates  [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.new_from_buffer" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#157-172">source</a><h4 class="code-header">pub fn <a href="#method.new_from_buffer" class="fn">new_from_buffer</a>(
     values_buffer: MutableBuffer,
     null_buffer: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;MutableBuffer&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new primitive array builder from buffers</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#183-191">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>) -&gt; Self</h4></section>< [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_type" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#183-191">source</a><h4 class="code-header">pub fn <a href="#method.with_data_type" class="fn">with_data_type</a>(self, data_type: DataType) -&gt; Self</h4></section></summary><div class="docblock"><p>By default <a href="primitive_builder/struct.PrimitiveBuilder.html" title="struct arro [...]
 data type of the generated array.</p>
 <p>This method allows overriding the data type, to allow specifying timezones
-for <a href="../../arrow_schema/datatype/enum.DataType.html#variant.Timestamp" title="variant arrow_schema::datatype::DataType::Timestamp"><code>DataType::Timestamp</code></a> or precision and scale for <a href="../../arrow_schema/datatype/enum.DataType.html#variant.Decimal128" title="variant arrow_schema::datatype::DataType::Decimal128"><code>DataType::Decimal128</code></a> and <a href="../../arrow_schema/datatype/enum.DataType.html#variant.Decimal256" title="variant arrow_schema::datat [...]
+for [<code>DataType::Timestamp</code>] or precision and scale for [<code>DataType::Decimal128</code>] and [<code>DataType::Decimal256</code>]</p>
 <h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
 <p>This method panics if <code>data_type</code> is not <a href="../array/primitive_array/struct.PrimitiveArray.html#method.is_compatible" title="associated function arrow_array::array::primitive_array::PrimitiveArray::is_compatible">PrimitiveArray::is_compatible</a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.capacity" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#194-196">source</a><h4 class="code-header">pub fn <a href="#method.capacity" class="fn">capacity</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the capacity of this [...]
@@ -42,7 +42,7 @@ the iterator implement <code>TrustedLen</code> once that is stabilized.</p>
     self,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
     scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Sets the precision and scale</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Sets the precision and scale</p>
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PrimitiveBuilder%3CP%3E-1" class="impl"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#335-348">source</a><a href="#impl-PrimitiveBuilder%3CP%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;P: <a class="trait" href="../types/trait.ArrowTimestampType.html" title="trait arrow_array::types::ArrowTimestampType">ArrowTimestampType</a>&gt [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_timezone_opt" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#342-347">source</a><h4 class="code-header">pub fn <a href="#method.with_timezone_opt" class="fn">with_timezone_opt</a>&lt;S: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="h [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrayBuilder-for-PrimitiveBuilder%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/builder/primitive_builder.rs.html#103-133">source</a><a href="#impl-ArrayBuilder-for-PrimitiveBuilde [...]
diff --git a/arrow_array/builder/struct.PrimitiveDictionaryBuilder.html b/arrow_array/builder/struct.PrimitiveDictionaryBuilder.html
index 3ad38894be2..9d29e0ac504 100644
--- a/arrow_array/builder/struct.PrimitiveDictionaryBuilder.html
+++ b/arrow_array/builder/struct.PrimitiveDictionaryBuilder.html
@@ -49,7 +49,7 @@
 <code>values_capacity</code>: the number of distinct dictionary values, i.e. size of dictionary</p>
 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PrimitiveDictionaryBuilder%3CK,+V%3E-1" class="impl"><a class="src rightside" href="../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#208-310">source</a><a href="#impl-PrimitiveDictionaryBuilder%3CK,+V%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;K, V&gt; <a class="struct" href="primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html" title [...]
     K: <a class="trait" href="../types/trait.ArrowDictionaryKeyType.html" title="trait arrow_array::types::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,
-    V: <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#217-231">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(& [...]
+    V: <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.append" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#217-231">source</a><h4 class="code-header">pub fn <a href="#method.append" class="fn">append</a>(& [...]
 if already present in the values array or a new index if the
 value is appended to the values array.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_value" class="method"><a class="src rightside" href="../../src/arrow_array/builder/primitive_dictionary_builder.rs.html#239-241">source</a><h4 class="code-header">pub fn <a href="#method.append_value" class="fn">append_value</a>(&amp;mut self, value: V::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveTyp [...]
diff --git a/arrow_array/builder/struct.StructBuilder.html b/arrow_array/builder/struct.StructBuilder.html
index 8a896e96910..fd128759e8c 100644
--- a/arrow_array/builder/struct.StructBuilder.html
+++ b/arrow_array/builder/struct.StructBuilder.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Builder for `StructArray`"><title>StructBuilder in arrow_array::builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a78 [...]
-    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+    fields: Fields,
     field_builders: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;&gt;,
     null_buffer_builder: NullBufferBuilder,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../array/struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a></p>
@@ -72,11 +72,11 @@ To construct a collection builder (<a href="type.ListBuilder.html" title="type a
   <span class="kw">let </span>array = example_col.finish();
 
   <span class="macro">println!</span>(<span class="string">"My array: {:?}"</span>, array);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.fields" class="structfield section-header"><a href="#structfield.fields" class="anchor field">§</a><code>fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a></code></span><span id="structfield.field_builders" class="structfield section-header"><a href="#structfield.field_builder [...]
-    fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>&gt;,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.fields" class="structfield section-header"><a href="#structfield.fields" class="anchor field">§</a><code>fields: Fields</code></span><span id="structfield.field_builders" class="structfield section-header"><a href="#structfield.field_builders" class="anchor field">§</a><code>field_builders: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec [...]
+    fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Fields&gt;,
     field_builders: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>StructBuilder</code></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.from_fields" class="method"><a class="src rightside" href="../../src/arrow_array/builder/struct_builder.rs.html#293-300">source</a><h4 class="code-header">pub fn <a href="#method.from_fields" class="fn">from_fields</a>(fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="../../arrow_sch [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.from_fields" class="method"><a class="src rightside" href="../../src/arrow_array/builder/struct_builder.rs.html#293-300">source</a><h4 class="code-header">pub fn <a href="#method.from_fields" class="fn">from_fields</a>(fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Fields&gt;, capacity: <a class="primiti [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.field_builder" class="method"><a class="src rightside" href="../../src/arrow_array/builder/struct_builder.rs.html#305-307">source</a><h4 class="code-header">pub fn <a href="#method.field_builder" class="fn">field_builder</a>&lt;T: <a class="trait" href="trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;(&amp;mut self, i: <a class="primitive" href="https://do [...]
 Result will be <code>None</code> if the input type <code>T</code> provided doesn’t match the actual
 field builder’s type.</p>
diff --git a/arrow_array/builder/struct.UnionBuilder.html b/arrow_array/builder/struct.UnionBuilder.html
index 54c448d85e4..edffa4e36aa 100644
--- a/arrow_array/builder/struct.UnionBuilder.html
+++ b/arrow_array/builder/struct.UnionBuilder.html
@@ -48,7 +48,7 @@ builder.append::&lt;Int32Type&gt;(<span class="string">"a"</span>, <span class="
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_null" class="method"><a class="src rightside" href="../../src/arrow_array/builder/union_builder.rs.html#195-200">source</a><h4 class="code-header">pub fn <a href="#method.append_null" class="fn">append_null</a>&lt;T: <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;(
     &amp;mut self,
     type_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends a null to this builder, encoding the null in the array
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends a null to this builder, encoding the null in the array
 of the <code>type_name</code> child / field.</p>
 <p>Since <code>UnionArray</code> encodes nulls as an entry in its children
 (it doesn’t have a validity bitmap itself), and where the null
@@ -58,12 +58,12 @@ specifying which field (child) to use.</p>
     &amp;mut self,
     type_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
     v: T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends a value to this builder.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends a value to this builder.</p>
 </div></details><section id="method.append_option" class="method"><a class="src rightside" href="../../src/arrow_array/builder/union_builder.rs.html#212-275">source</a><h4 class="code-header">fn <a href="#method.append_option" class="fn">append_option</a>&lt;T: <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;(
     &amp;mut self,
     type_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
     v: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.build" class="method"><a class="src r [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.build" class="method"><a class="src rightside" href="../../src/arrow_array/builder/union_builder.rs.html#278-312">source</a><h4 class="code-header">pub fn  [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-UnionBuilder" class="impl"><a class="src rightside" href="../../src/arrow_array/builder/union_builder.rs.html#141">source</a><a href="#impl-Debug-for-UnionBuilder" class="anchor">§</a><h3 class="cod [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/arrow_array/builder/struct_builder/fn.make_builder.html b/arrow_array/builder/struct_builder/fn.make_builder.html
index 66dcd0ca1b8..c95b702749f 100644
--- a/arrow_array/builder/struct_builder/fn.make_builder.html
+++ b/arrow_array/builder/struct_builder/fn.make_builder.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Returns a builder with capacity `capacity` that corresponds to the datatype `DataType` This function is useful to construct arrays from an arbitrary vectors with known/expected schema."><title>make_builder in arrow_array::builder::struct_builder - Rust</title><script>if(window.location.p [...]
-    datatype: &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    datatype: &amp;DataType,
     capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 ) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="../trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns a builder with capacity <code>capacity</code> that corresponds to the datatype <c [...]
 This function is useful to construct arrays from an arbitrary vectors with known/expected
diff --git a/arrow_array/builder/struct_builder/struct.StructBuilder.html b/arrow_array/builder/struct_builder/struct.StructBuilder.html
index 69c0b27da26..f1b0bc1a5e3 100644
--- a/arrow_array/builder/struct_builder/struct.StructBuilder.html
+++ b/arrow_array/builder/struct_builder/struct.StructBuilder.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Builder for `StructArray`"><title>StructBuilder in arrow_array::builder::struct_builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSa [...]
-    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
+    fields: Fields,
     field_builders: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="../trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;&gt;,
     null_buffer_builder: NullBufferBuilder,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Builder for <a href="../../array/struct_array/struct.StructArray.html" title="struct arrow_array::array::struct_array::StructArray"><code>StructArray</code></a></p>
@@ -72,11 +72,11 @@ To construct a collection builder (<a href="../type.ListBuilder.html" title="typ
   <span class="kw">let </span>array = example_col.finish();
 
   <span class="macro">println!</span>(<span class="string">"My array: {:?}"</span>, array);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.fields" class="structfield section-header"><a href="#structfield.fields" class="anchor field">§</a><code>fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a></code></span><span id="structfield.field_builders" class="structfield section-header"><a href="#structfield.field_buil [...]
-    fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>&gt;,
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.fields" class="structfield section-header"><a href="#structfield.fields" class="anchor field">§</a><code>fields: Fields</code></span><span id="structfield.field_builders" class="structfield section-header"><a href="#structfield.field_builders" class="anchor field">§</a><code>field_builders: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec [...]
+    fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Fields&gt;,
     field_builders: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="../trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;&gt;,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>StructBuilder</code></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.from_fields" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/struct_builder.rs.html#293-300">source</a><h4 class="code-header">pub fn <a href="#method.from_fields" class="fn">from_fields</a>(fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="../../../arr [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.from_fields" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/struct_builder.rs.html#293-300">source</a><h4 class="code-header">pub fn <a href="#method.from_fields" class="fn">from_fields</a>(fields: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Fields&gt;, capacity: <a class="prim [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.field_builder" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/struct_builder.rs.html#305-307">source</a><h4 class="code-header">pub fn <a href="#method.field_builder" class="fn">field_builder</a>&lt;T: <a class="trait" href="../trait.ArrayBuilder.html" title="trait arrow_array::builder::ArrayBuilder">ArrayBuilder</a>&gt;(&amp;mut self, i: <a class="primitive" href="http [...]
 Result will be <code>None</code> if the input type <code>T</code> provided doesn’t match the actual
 field builder’s type.</p>
diff --git a/arrow_array/builder/type.Date32Builder.html b/arrow_array/builder/type.Date32Builder.html
index 6ba444ffb74..817bc91d2d3 100644
--- a/arrow_array/builder/type.Date32Builder.html
+++ b/arrow_array/builder/type.Date32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date32Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Date64Builder.html b/arrow_array/builder/type.Date64Builder.html
index 2abbd33314e..57ec2b3090a 100644
--- a/arrow_array/builder/type.Date64Builder.html
+++ b/arrow_array/builder/type.Date64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Date64Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Decimal128Builder.html b/arrow_array/builder/type.Decimal128Builder.html
index d02287a6042..45e164d976a 100644
--- a/arrow_array/builder/type.Decimal128Builder.html
+++ b/arrow_array/builder/type.Decimal128Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal128Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;</c [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;</c [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Decimal256Builder.html b/arrow_array/builder/type.Decimal256Builder.html
index ac0357ac125..cbcee7f2874 100644
--- a/arrow_array/builder/type.Decimal256Builder.html
+++ b/arrow_array/builder/type.Decimal256Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Decimal256Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;i256&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;i256&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield section-header">< [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;i256&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield section-header">< [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.DurationMicrosecondBuilder.html b/arrow_array/builder/type.DurationMicrosecondBuilder.html
index 1448c3334c6..580ef9fa856 100644
--- a/arrow_array/builder/type.DurationMicrosecondBuilder.html
+++ b/arrow_array/builder/type.DurationMicrosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMicrosecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.DurationMillisecondBuilder.html b/arrow_array/builder/type.DurationMillisecondBuilder.html
index 18b040c42c7..bc7f83410ad 100644
--- a/arrow_array/builder/type.DurationMillisecondBuilder.html
+++ b/arrow_array/builder/type.DurationMillisecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationMillisecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.DurationNanosecondBuilder.html b/arrow_array/builder/type.DurationNanosecondBuilder.html
index 65caf6818b8..5ad97d42c56 100644
--- a/arrow_array/builder/type.DurationNanosecondBuilder.html
+++ b/arrow_array/builder/type.DurationNanosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationNanosecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.DurationSecondBuilder.html b/arrow_array/builder/type.DurationSecondBuilder.html
index 9841fc77082..a36dd583df4 100644
--- a/arrow_array/builder/type.DurationSecondBuilder.html
+++ b/arrow_array/builder/type.DurationSecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct DurationSecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Float16Builder.html b/arrow_array/builder/type.Float16Builder.html
index a41de3350ba..865fd0b5a10 100644
--- a/arrow_array/builder/type.Float16Builder.html
+++ b/arrow_array/builder/type.Float16Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float16Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct half::binary16::f16">f16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct half: [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="struct" href="https://docs.rs/half/2.4.1/half/binary16/struct.f16.html" title="struct half: [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Float32Builder.html b/arrow_array/builder/type.Float32Builder.html
index 764d1e960d0..7b1b5cfcf5e 100644
--- a/arrow_array/builder/type.Float32Builder.html
+++ b/arrow_array/builder/type.Float32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float32Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Float64Builder.html b/arrow_array/builder/type.Float64Builder.html
index 788fd5dc842..ddb525fcecd 100644
--- a/arrow_array/builder/type.Float64Builder.html
+++ b/arrow_array/builder/type.Float64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Float64Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Int16Builder.html b/arrow_array/builder/type.Int16Builder.html
index a01ba17ce19..9996201724b 100644
--- a/arrow_array/builder/type.Int16Builder.html
+++ b/arrow_array/builder/type.Int16Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int16Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Int32Builder.html b/arrow_array/builder/type.Int32Builder.html
index bb3f3a9c90c..c8d9abe152a 100644
--- a/arrow_array/builder/type.Int32Builder.html
+++ b/arrow_array/builder/type.Int32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int32Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Int64Builder.html b/arrow_array/builder/type.Int64Builder.html
index 1be2f690af5..cb584f05391 100644
--- a/arrow_array/builder/type.Int64Builder.html
+++ b/arrow_array/builder/type.Int64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int64Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Int8Builder.html b/arrow_array/builder/type.Int8Builder.html
index 15b5df8b2a0..d55138e119b 100644
--- a/arrow_array/builder/type.Int8Builder.html
+++ b/arrow_array/builder/type.Int8Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Int8Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;</code> [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>&gt;</code> [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.IntervalDayTimeBuilder.html b/arrow_array/builder/type.IntervalDayTimeBuilder.html
index 942e8b6247b..53a8e02975b 100644
--- a/arrow_array/builder/type.IntervalDayTimeBuilder.html
+++ b/arrow_array/builder/type.IntervalDayTimeBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalDayTimeBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalDayTime&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalDayTime&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sectio [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalDayTime&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield sectio [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.IntervalMonthDayNanoBuilder.html b/arrow_array/builder/type.IntervalMonthDayNanoBuilder.html
index 3ab03e5a537..c6969b94269 100644
--- a/arrow_array/builder/type.IntervalMonthDayNanoBuilder.html
+++ b/arrow_array/builder/type.IntervalMonthDayNanoBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalMonthDayNanoBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalMonthDayNano&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalMonthDayNano&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield s [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;IntervalMonthDayNano&gt;</code></span><span id="structfield.null_buffer_builder" class="structfield s [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.IntervalYearMonthBuilder.html b/arrow_array/builder/type.IntervalYearMonthBuilder.html
index a7dac344124..a3e1a8a5353 100644
--- a/arrow_array/builder/type.IntervalYearMonthBuilder.html
+++ b/arrow_array/builder/type.IntervalYearMonthBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct IntervalYearMonthBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.LargeListBuilder.html b/arrow_array/builder/type.LargeListBuilder.html
index 2b09809bbcf..b1215e6d27a 100644
--- a/arrow_array/builder/type.LargeListBuilder.html
+++ b/arrow_array/builder/type.LargeListBuilder.html
@@ -3,5 +3,5 @@
     offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
     values_builder: T,
-    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>&gt;&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
+    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Field&gt;&gt;,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.ListBuilder.html b/arrow_array/builder/type.ListBuilder.html
index df7a7f33252..4b42622dc18 100644
--- a/arrow_array/builder/type.ListBuilder.html
+++ b/arrow_array/builder/type.ListBuilder.html
@@ -3,5 +3,5 @@
     offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
     values_builder: T,
-    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>&gt;&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
+    field: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Field&gt;&gt;,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets_builder" class="structfield section-header"><a href="#structfield.offsets_builder" class="anchor field">§</a><code>offsets_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</ [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Time32MillisecondBuilder.html b/arrow_array/builder/type.Time32MillisecondBuilder.html
index 2ac6116faa5..b6e6871119d 100644
--- a/arrow_array/builder/type.Time32MillisecondBuilder.html
+++ b/arrow_array/builder/type.Time32MillisecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32MillisecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Time32SecondBuilder.html b/arrow_array/builder/type.Time32SecondBuilder.html
index 8c68f023f9c..1c62cf3bb20 100644
--- a/arrow_array/builder/type.Time32SecondBuilder.html
+++ b/arrow_array/builder/type.Time32SecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time32SecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Time64MicrosecondBuilder.html b/arrow_array/builder/type.Time64MicrosecondBuilder.html
index 72921fa5b33..1522a36680e 100644
--- a/arrow_array/builder/type.Time64MicrosecondBuilder.html
+++ b/arrow_array/builder/type.Time64MicrosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64MicrosecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.Time64NanosecondBuilder.html b/arrow_array/builder/type.Time64NanosecondBuilder.html
index 293a70959b3..b105ab8589f 100644
--- a/arrow_array/builder/type.Time64NanosecondBuilder.html
+++ b/arrow_array/builder/type.Time64NanosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct Time64NanosecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.TimestampMicrosecondBuilder.html b/arrow_array/builder/type.TimestampMicrosecondBuilder.html
index d19e09acb2f..6d81e3aa962 100644
--- a/arrow_array/builder/type.TimestampMicrosecondBuilder.html
+++ b/arrow_array/builder/type.TimestampMicrosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMicrosecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.TimestampMillisecondBuilder.html b/arrow_array/builder/type.TimestampMillisecondBuilder.html
index 86cee3eeb54..da2961f9241 100644
--- a/arrow_array/builder/type.TimestampMillisecondBuilder.html
+++ b/arrow_array/builder/type.TimestampMillisecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampMillisecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.TimestampNanosecondBuilder.html b/arrow_array/builder/type.TimestampNanosecondBuilder.html
index e1004f5cd89..9abd7c02ab5 100644
--- a/arrow_array/builder/type.TimestampNanosecondBuilder.html
+++ b/arrow_array/builder/type.TimestampNanosecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampNanosecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.TimestampSecondBuilder.html b/arrow_array/builder/type.TimestampSecondBuilder.html
index 30d697359f1..837ca09679c 100644
--- a/arrow_array/builder/type.TimestampSecondBuilder.html
+++ b/arrow_array/builder/type.TimestampSecondBuilder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct TimestampSecondBuilder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.UInt16Builder.html b/arrow_array/builder/type.UInt16Builder.html
index 815abd53fff..4494acfaa80 100644
--- a/arrow_array/builder/type.UInt16Builder.html
+++ b/arrow_array/builder/type.UInt16Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt16Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.UInt32Builder.html b/arrow_array/builder/type.UInt32Builder.html
index 3f9f8f829fb..f13cf806bc0 100644
--- a/arrow_array/builder/type.UInt32Builder.html
+++ b/arrow_array/builder/type.UInt32Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt32Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.UInt64Builder.html b/arrow_array/builder/type.UInt64Builder.html
index 407eb487038..49658865131 100644
--- a/arrow_array/builder/type.UInt64Builder.html
+++ b/arrow_array/builder/type.UInt64Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt64Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;</cod [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;</cod [...]
\ No newline at end of file
diff --git a/arrow_array/builder/type.UInt8Builder.html b/arrow_array/builder/type.UInt8Builder.html
index 1e9753d6ae4..c9b1404f581 100644
--- a/arrow_array/builder/type.UInt8Builder.html
+++ b/arrow_array/builder/type.UInt8Builder.html
@@ -2,5 +2,5 @@
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>struct UInt8Builder {
     values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;</code> [...]
\ No newline at end of file
+    data_type: DataType,
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.values_builder" class="structfield section-header"><a href="#structfield.values_builder" class="anchor field">§</a><code>values_builder: <a class="struct" href="struct.BufferBuilder.html" title="struct arrow_array::builder::BufferBuilder">BufferBuilder</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;</code> [...]
\ No newline at end of file
diff --git a/arrow_array/builder/union_builder/struct.FieldData.html b/arrow_array/builder/union_builder/struct.FieldData.html
index 52cb1615440..f1a8a2db18b 100644
--- a/arrow_array/builder/union_builder/struct.FieldData.html
+++ b/arrow_array/builder/union_builder/struct.FieldData.html
@@ -1,18 +1,18 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`FieldData` is a helper struct to track the state of the fields in the `UnionBuilder`."><title>FieldData in arrow_array::builder::union_builder - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295. [...]
     type_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     values_buffer: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="trait.FieldDataValues.html" title="trait arrow_array::builder::union_builder::FieldDataValues">FieldDataValues</a>&gt;,
     slots: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     null_buffer_builder: NullBufferBuilder,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>FieldData</code> is a helper struct to track the state of the fields in the <code>UnionBuilder</code>.</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.type_id" class="structfield section-header"><a href="#structfield.type_id" class="anchor field">§</a><code>type_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></code></span><div class="docblock"><p>The type id for this field</p>
-</div><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></code></span><div class="docblock"><p>The Arrow data type represented in the <code>values_buffer</code>, which is untyped</p>
+</div><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anchor field">§</a><code>data_type: DataType</code></span><div class="docblock"><p>The Arrow data type represented in the <code>values_buffer</code>, which is untyped</p>
 </div><span id="structfield.values_buffer" class="structfield section-header"><a href="#structfield.values_buffer" class="anchor field">§</a><code>values_buffer: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="trait.FieldDataValues.html" title="trait arrow_array::builder::union_builder::FieldDataValues">FieldDataValues</a>&gt;</code></span><div class="docblock"><p>A buffer contai [...]
 </div><span id="structfield.slots" class="structfield section-header"><a href="#structfield.slots" class="anchor field">§</a><code>slots: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><div class="docblock"><p>The number of array slots represented by the buffer</p>
 </div><span id="structfield.null_buffer_builder" class="structfield section-header"><a href="#structfield.null_buffer_builder" class="anchor field">§</a><code>null_buffer_builder: NullBufferBuilder</code></span><div class="docblock"><p>A builder for the null bitmap</p>
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-FieldData" class="impl"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#67-97">source</a><a href="#impl-FieldData" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.FieldData.html" title="struct a [...]
     type_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>FieldData</code>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_value" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#80-89">source</a><h4 class="code-header">fn <a href="#method.append_value" class="fn">append_value</a>&lt;T: <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;(&amp;mut self, v: T::<a class="ass [...]
diff --git a/arrow_array/builder/union_builder/struct.UnionBuilder.html b/arrow_array/builder/union_builder/struct.UnionBuilder.html
index 05d5af92644..0688a3f2f15 100644
--- a/arrow_array/builder/union_builder/struct.UnionBuilder.html
+++ b/arrow_array/builder/union_builder/struct.UnionBuilder.html
@@ -48,7 +48,7 @@ builder.append::&lt;Int32Type&gt;(<span class="string">"a"</span>, <span class="
 </div></details><details class="toggle method-toggle" open><summary><section id="method.append_null" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#195-200">source</a><h4 class="code-header">pub fn <a href="#method.append_null" class="fn">append_null</a>&lt;T: <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;(
     &amp;mut self,
     type_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends a null to this builder, encoding the null in the array
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends a null to this builder, encoding the null in the array
 of the <code>type_name</code> child / field.</p>
 <p>Since <code>UnionArray</code> encodes nulls as an entry in its children
 (it doesn’t have a validity bitmap itself), and where the null
@@ -58,12 +58,12 @@ specifying which field (child) to use.</p>
     &amp;mut self,
     type_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
     v: T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Appends a value to this builder.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Appends a value to this builder.</p>
 </div></details><section id="method.append_option" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#212-275">source</a><h4 class="code-header">fn <a href="#method.append_option" class="fn">append_option</a>&lt;T: <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;(
     &amp;mut self,
     type_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
     v: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.build" class="method"><a class="sr [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.build" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#278-312">source</a><h4 class="code-header">pub  [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-UnionBuilder" class="impl"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#141">source</a><a href="#impl-Debug-for-UnionBuilder" class="anchor">§</a><h3 class=" [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/arrow_array/ffi/fn.bit_width.html b/arrow_array/ffi/fn.bit_width.html
index c7eab9b0397..afa85cd8f37 100644
--- a/arrow_array/ffi/fn.bit_width.html
+++ b/arrow_array/ffi/fn.bit_width.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `bit_width` fn in crate `arrow_array`."><title>bit_width in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `bit_width` fn in crate `arrow_array`."><title>bit_width in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf [...]
\ No newline at end of file
diff --git a/arrow_array/ffi/fn.export_array_into_raw.html b/arrow_array/ffi/fn.export_array_into_raw.html
index a971a62e014..981ceb6f7d4 100644
--- a/arrow_array/ffi/fn.export_array_into_raw.html
+++ b/arrow_array/ffi/fn.export_array_into_raw.html
@@ -2,7 +2,7 @@
     src: <a class="type" href="../array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     out_array: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>,
     out_schema: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</code></pre><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated: Use FFI_Arro [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</code></pre><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated: Use FFI_ArrowArray::new and FFI_ArrowSchema::try_from</span></div></span><details class="toggle top-doc" open><summary class="hide [...]
 <h2 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h2>
 <p>Assumes that these pointers represent valid C Data Interfaces, both in memory
 representation and lifetime via the <code>release</code> mechanism.</p>
diff --git a/arrow_array/ffi/fn.from_ffi.html b/arrow_array/ffi/fn.from_ffi.html
index 7527f484549..ea537e42e23 100644
--- a/arrow_array/ffi/fn.from_ffi.html
+++ b/arrow_array/ffi/fn.from_ffi.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Import ArrayData from the C Data Interface"><title>from_ffi in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Mediu [...]
     array: <a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>,
     schema: &amp;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand desc [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>, ArrowError&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Import <a href="../../arrow_data/data/struct.ArrayData.html" title="s [...]
 <h2 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h2>
 <p>This struct assumes that the incoming data agrees with the C data interface.</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/ffi/fn.from_ffi_and_data_type.html b/arrow_array/ffi/fn.from_ffi_and_data_type.html
index 6bd9b67e0e5..bf71238f05e 100644
--- a/arrow_array/ffi/fn.from_ffi_and_data_type.html
+++ b/arrow_array/ffi/fn.from_ffi_and_data_type.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Import ArrayData from the C Data Interface"><title>from_ffi_and_data_type in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2, [...]
     array: <a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand desc [...]
+    data_type: DataType,
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>, ArrowError&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Import <a href="../../arrow_data/data/struct.ArrayData.html" title="s [...]
 <h2 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h2>
 <p>This struct assumes that the incoming data agrees with the C data interface.</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/ffi/fn.to_ffi.html b/arrow_array/ffi/fn.to_ffi.html
index a600a7c9801..c2674460d7b 100644
--- a/arrow_array/ffi/fn.to_ffi.html
+++ b/arrow_array/ffi/fn.to_ffi.html
@@ -1,4 +1,4 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Export to the C Data Interface"><title>to_ffi in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970 [...]
     data: &amp;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;(<a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>, <a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>), <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::Arr [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;(<a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>, <a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>), ArrowError&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand desc [...]
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/ffi/struct.FFI_ArrowSchema.html b/arrow_array/ffi/struct.FFI_ArrowSchema.html
index 15d9703d8c0..0dfc742f0e8 100644
--- a/arrow_array/ffi/struct.FFI_ArrowSchema.html
+++ b/arrow_array/ffi/struct.FFI_ArrowSchema.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="ABI-compatible struct for `ArrowSchema` from C Data Interface See https://arrow.apache.org/docs/format/CDataInterface.html#structure-definitions"><title>FFI_ArrowSchema in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("befor [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="ABI-compatible struct for `ArrowSchema` from C Data Interface See https://arrow.apache.org/docs/format/CDataInterface.html#structure-definitions"><title>FFI_ArrowSchema in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("befor [...]
     format: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
     name: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
     metadata: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
@@ -14,18 +14,18 @@ See <a href="https://arrow.apache.org/docs/format/CDataInterface.html#structure-
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>array_schema(data_type: <span class="kw-2">&amp;</span>DataType) -&gt; FFI_ArrowSchema {
     FFI_ArrowSchema::try_from(data_type).unwrap()
 }</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.format" class="structfield section-header"><a href="#structfield.format" class="anchor field">§</a><code>format: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></code></span><span id="structfield.name" class="structf [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.format" class="structfield section-header"><a href="#structfield.format" class="anchor field">§</a><code>format: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></code></span><span id="structfield.name" class="structf [...]
     format: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
     children: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>&gt;,
     dictionary: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>create a new <a href="struct.FFI_ArrowSchema. [...]
-<a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> is not supported.</p>
-</div></details><section id="method.with_name" class="method"><a class="src rightside" href="../../src/arrow_schema/ffi.rs.html#158">source</a><h4 class="code-header">pub fn <a href="#method.with_name" class="fn">with_name</a>(self, name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="stru [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>create a new <a href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema"><code>FFI_ArrowSchema</code></a>. This fails if the fields’
+[<code>DataType</code>] is not supported.</p>
+</div></details><section id="method.with_name" class="method"><h4 class="code-header">pub fn <a href="#method.with_name" class="fn">with_name</a>(self, name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowS [...]
     self,
     metadata: I,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;<div class="where">where
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>, ArrowError&gt;<div class="where">where
     I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(S, S)</a>&gt;,
-    S: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,</div></h4></section><details class="toggle method-toggle" open><summary><section id="method.from_raw" class="method"><a class="src rightside" href="../../src/arrow_schema/ffi.rs.html#236">source</a><h4 class="code-header">pub unsafe fn <a href="#metho [...]
+    S: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,</div></h4></section><details class="toggle method-toggle" open><summary><section id="method.from_raw" class="method"><h4 class="code-header">pub unsafe fn <a href="#method.from_raw" class="fn">from_raw</a>(schema: <a class="primitive" href="https://do [...]
 <p>This acts to <a href="https://arrow.apache.org/docs/format/CDataInterface.html#moving-an-array">move</a> the data out of <code>schema</code>, setting the release callback to NULL</p>
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <ul>
@@ -33,12 +33,12 @@ See <a href="https://arrow.apache.org/docs/format/CDataInterface.html#structure-
 <li><code>schema</code> must be properly aligned</li>
 <li><code>schema</code> must point to a properly initialized value of <a href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema"><code>FFI_ArrowSchema</code></a></li>
 </ul>
-</div></details><section id="method.empty" class="method"><a class="src rightside" href="../../src/arrow_schema/ffi.rs.html#240">source</a><h4 class="code-header">pub fn <a href="#method.empty" class="fn">empty</a>() -&gt; <a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.format" class="method"><a class="src rightside" href="../../s [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.name" class="method"><a class="src rightside" href="../../src/arrow_schema/ffi.rs.html#264">source</a><h4 class="code-header">pub fn <a href="#method.name" class="fn">name</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section></summary><div class="docblock"><p>returns the name of this schema.</p>
-</div></details><section id="method.flags" class="method"><a class="src rightside" href="../../src/arrow_schema/ffi.rs.html#272">source</a><h4 class="code-header">pub fn <a href="#method.flags" class="fn">flags</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../arrow_schema/ffi/flags/struct.Flags.html" title="struct arrow_schema::ffi::flags::Flags">Flags</ [...]
-    value: &amp;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>, &lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="t [...]
-</div></details><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a></h4></section></summary><di [...]
+</div></details><section id="method.empty" class="method"><h4 class="code-header">pub fn <a href="#method.empty" class="fn">empty</a>() -&gt; <a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.format" class="method"><h4 class="code-header">pub fn <a href="#method.format" class="fn">format</a>(&amp;self) -&gt; &amp;<a class="primitive [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.name" class="method"><h4 class="code-header">pub fn <a href="#method.name" class="fn">name</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section></summary><div class="docblock"><p>returns the name of this schema.</p>
+</div></details><section id="method.flags" class="method"><h4 class="code-header">pub fn <a href="#method.flags" class="fn">flags</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Flags&gt;</h4></section><section id="method.child" class="method"><h4 class="code-header">pub fn <a href="#method.child" class="fn">child</a>(&amp;self, index: <a class="primitive" href="https://doc.rust-lan [...]
+    value: &amp;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Field&gt;,
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a>, &lt;<a class="struct" href="struct.FFI_ArrowSchema.html" title="struct arrow_array::ffi::FFI_ArrowSchema">FFI_ArrowSchema</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="t [...]
+</div></details><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = ArrowError</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details></div></details><details class [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/ffi/struct.ImportedArrowArray.html b/arrow_array/ffi/struct.ImportedArrowArray.html
index 27ac22eebfd..a93115b2820 100644
--- a/arrow_array/ffi/struct.ImportedArrowArray.html
+++ b/arrow_array/ffi/struct.ImportedArrowArray.html
@@ -1,24 +1,24 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ImportedArrowArray` struct in crate `arrow_array`."><title>ImportedArrowArray in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,Fira [...]
     array: &amp;'a <a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>,
-    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
+    data_type: DataType,
     owner: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.array" class="structfield section-header"><a href="#structfield.array" class="anchor field">§</a><code>array: &amp;'a <a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a></code></span><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anc [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.array" class="structfield section-header"><a href="#structfield.array" class="anchor field">§</a><code>array: &amp;'a <a class="struct" href="struct.FFI_ArrowArray.html" title="struct arrow_array::ffi::FFI_ArrowArray">FFI_ArrowArray</a></code></span><span id="structfield.data_type" class="structfield section-header"><a href="#structfield.data_type" class="anc [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    child_type: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.buff [...]
+    child_type: &amp;DataType,
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../arrow_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>, ArrowError&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.buffers" class="method"><a class="src rightside" href="../../src/arrow_array/ffi.rs.html#376-396">source</a><h4 class="cod [...]
     &amp;self,
     can_contain_null_mask: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>returns all buffers, as organ [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Buffer&gt;, ArrowError&gt;</h4></section></summary><div class="docblock"><p>returns all buffers, as organized by Rust (i.e. null buffer is skipped if it’s present
 in the spec of the type)</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.buffer_len" class="method"><a class="src rightside" href="../../src/arrow_array/ffi.rs.html#402-461">source</a><h4 class="code-header">fn <a href="#method.buffer_len" class="fn">buffer_len</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, dt: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_sc [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.buffer_len" class="method"><a class="src rightside" href="../../src/arrow_array/ffi.rs.html#402-461">source</a><h4 class="code-header">fn <a href="#method.buffer_len" class="fn">buffer_len</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, dt: &amp;DataType) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.R [...]
 Rust implementation uses fixed-sized buffers, which require knowledge of their <code>len</code>.
 for variable-sized buffers, such as the second buffer of a stringArray, we need
 to fetch offset buffer’s len to build the second buffer.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.null_bit_buffer" class="method"><a class="src rightside" href="../../src/arrow_array/ffi.rs.html#466-474">source</a><h4 class="code-header">fn <a href="#method.null_bit_buffer" class="fn">null_bit_buffer</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Buffer&gt;</h4></section></summary><div class [...]
 Rust implementation uses a buffer that is not part of the array of buffers.
 The C Data interface’s null buffer is part of the array of buffers.</p>
-</div></details><section id="method.dictionary" class="method"><a class="src rightside" href="../../src/arrow_array/ffi.rs.html#476-491">source</a><h4 class="code-header">fn <a href="#method.dictionary" class="fn">dictionary</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option:: [...]
+</div></details><section id="method.dictionary" class="method"><a class="src rightside" href="../../src/arrow_array/ffi.rs.html#476-491">source</a><h4 class="code-header">fn <a href="#method.dictionary" class="fn">dictionary</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option:: [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/ffi/type.Result.html b/arrow_array/ffi/type.Result.html
index 9aaf135cb03..0a84c720501 100644
--- a/arrow_array/ffi/type.Result.html
+++ b/arrow_array/ffi/type.Result.html
@@ -1,6 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Result` type in crate `arrow_array`."><title>Result in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Result` type in crate `arrow_array`."><title>Result in arrow_array::ffi - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843 [...]
     Ok(T),
-    Err(<a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>),
+    Err(ArrowError),
 }</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Ok" class="variant"><a href="#variant.Ok" class="anchor">§</a><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><h3 class="code-header">Ok(T)</h3></section><div class="docblock"><p>Contains the success value</p>
-</div><section id="variant.Err" class="variant"><a href="#variant.Err" class="anchor">§</a><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><h3 class="code-header">Err(<a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>)</h3></section><div class="docblock"><p>Contains the error value</p>
+</div><section id="variant.Err" class="variant"><a href="#variant.Err" class="anchor">§</a><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><h3 class="code-header">Err(ArrowError)</h3></section><div class="docblock"><p>Contains the error value</p>
 </div></div><script src="../../type.impl/core/result/enum.Result.js" data-self-path="arrow_array::ffi::Result" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/ffi_stream/fn.get_error_code.html b/arrow_array/ffi_stream/fn.get_error_code.html
index 95e4ae3a770..60459a3553d 100644
--- a/arrow_array/ffi_stream/fn.get_error_code.html
+++ b/arrow_array/ffi_stream/fn.get_error_code.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `get_error_code` fn in crate `arrow_array`."><title>get_error_code in arrow_array::ffi_stream - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans- [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `get_error_code` fn in crate `arrow_array`."><title>get_error_code in arrow_array::ffi_stream - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans- [...]
\ No newline at end of file
diff --git a/arrow_array/ffi_stream/fn.get_stream_schema.html b/arrow_array/ffi_stream/fn.get_stream_schema.html
index f65f78a0d37..ce23e11feb7 100644
--- a/arrow_array/ffi_stream/fn.get_stream_schema.html
+++ b/arrow_array/ffi_stream/fn.get_stream_schema.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Gets schema from a raw pointer of `FFI_ArrowArrayStream`. This is used when constructing `ArrowArrayStreamReader` to cache schema."><title>get_stream_schema in arrow_array::ffi_stream - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend" [...]
     stream_ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="struct" href="struct.FFI_ArrowArrayStream.html" title="struct arrow_array::ffi_stream::FFI_ArrowArrayStream">FFI_ArrowArrayStream</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand de [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;SchemaRef, ArrowError&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Gets schema from a raw pointer of <code>FFI_ArrowArrayStream</code>. This is used when constructing
 <code>ArrowArrayStreamReader</code> to cache schema.</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/ffi_stream/struct.ArrowArrayStreamReader.html b/arrow_array/ffi_stream/struct.ArrowArrayStreamReader.html
index e5fd0854452..8b6e92ae596 100644
--- a/arrow_array/ffi_stream/struct.ArrowArrayStreamReader.html
+++ b/arrow_array/ffi_stream/struct.ArrowArrayStreamReader.html
@@ -1,15 +1,15 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `RecordBatchReader` which imports Arrays from `FFI_ArrowArrayStream`. Struct used to fetch `RecordBatch` from the C Stream Interface. Its main responsibility is to expose `RecordBatchReader` functionality that requires FFI_ArrowArrayStream."><title>ArrowArrayStreamReader in arrow_array [...]
     stream: <a class="struct" href="struct.FFI_ArrowArrayStream.html" title="struct arrow_array::ffi_stream::FFI_ArrowArrayStream">FFI_ArrowArrayStream</a>,
-    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <code>RecordBatchReader</code> which imports Arrays from <code>FFI_ArrowArrayStream</code>.
 Struct used to fetch <code>RecordBatch</code> from the C Stream Interface.
 Its main responsibility is to expose <code>RecordBatchReader</code> functionality
 that requires <a href="struct.FFI_ArrowArrayStream.html" title="struct arrow_array::ffi_stream::FFI_ArrowArrayStream">FFI_ArrowArrayStream</a>.</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.stream" class="structfield section-header"><a href="#structfield.stream" class="anchor field">§</a><code>stream: <a class="struct" href="struct.FFI_ArrowArrayStream.html" title="struct arrow_array::ffi_stream::FFI_ArrowArrayStream">FFI_ArrowArrayStream</a></code></span><span id="structfield.schema" class="structfield section-header"><a href="#structfield.sc [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.stream" class="structfield section-header"><a href="#structfield.stream" class="anchor field">§</a><code>stream: <a class="struct" href="struct.FFI_ArrowArrayStream.html" title="struct arrow_array::ffi_stream::FFI_ArrowArrayStream">FFI_ArrowArrayStream</a></code></span><span id="structfield.schema" class="structfield section-header"><a href="#structfield.sc [...]
 This is used to import from the C Stream Interface.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_raw" class="method"><a class="src rightside" href="../../src/arrow_array/ffi_stream.rs.html#330-332">source</a><h4 class="code-header">pub unsafe fn <a href="#method.from_raw" class="fn">from_raw</a>(
     raw_stream: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="struct" href="struct.FFI_ArrowArrayStream.html" title="struct arrow_array::ffi_stream::FFI_ArrowArrayStream">FFI_ArrowArrayStream</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a new <code>ArrowArrayStreamReader</code> from a raw pointer of <code>FFI_ArrowArrayStream</code>.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a new <code>ArrowArrayStreamReader</code> from a raw pointer of <code>FFI_ArrowArrayStream</code>.</p>
 <p>Assumes that the pointer represents valid C Stream Interfaces.
 This function copies the content from the raw pointer and cleans up it to prevent
 double-dropping. The caller is responsible for freeing up the memory allocated for
@@ -17,7 +17,7 @@ the pointer.</p>
 <h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
 <p>See <a href="struct.FFI_ArrowArrayStream.html#method.from_raw" title="associated function arrow_array::ffi_stream::FFI_ArrowArrayStream::from_raw"><code>FFI_ArrowArrayStream::from_raw</code></a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_stream_last_error" class="method"><a class="src rightside" href="../../src/arrow_array/ffi_stream.rs.html#335-345">source</a><h4 class="code-header">fn <a href="#method.get_stream_last_error" class="fn">get_stream_last_error</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-ArrowArrayStreamReader" class="impl"><a class="src rightside" href="../../src/arrow_array/ffi_stream.rs.html#281">source</a><a href="#impl-Debug-for-ArrowArrayStreamReader" class="anchor">§</a><h3 c [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-ArrowArrayStreamReader" class="impl"><a class="src rightside" href="../../src/arrow_array/ffi_stream.rs.html#281">source</a><a href="#impl-Debug-for-ArrowArrayStreamReader" class="anchor">§</a><h3 c [...]
     &amp;mut self,
 ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;[Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">N</a>], <a class="struct" href="https://doc.rust-lang.o [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_next_chunk</code>)</span></div></span><div class='docblock'>Advances the iterator and returns an array containing the next <code>N</code> values. <a href="https://doc.rust-lang.org/n [...]
@@ -201,7 +201,7 @@ greater than or equal to those of another. <a href="https://doc.rust-lang.org/ni
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>) -&gt; K,
     K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>,</div></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>is_sorted</code>)</span></div></span><div class='docblock'>Checks if the elements of this iterator are sorted using the given key extraction
-function. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#method.is_sorted_by_key">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RecordBatchReader-for-ArrowArrayStreamReader" class="impl"><a class="src rightside" href="../../src/arrow_array/ffi_stream.rs.html#374-378">source</a><a href="#impl-RecordBatchReader-for-ArrowArrayStreamReader" class="anchor">§</a><h3 class="code- [...]
+function. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#method.is_sorted_by_key">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RecordBatchReader-for-ArrowArrayStreamReader" class="impl"><a class="src rightside" href="../../src/arrow_array/ffi_stream.rs.html#374-378">source</a><a href="#impl-RecordBatchReader-for-ArrowArrayStreamReader" class="anchor">§</a><h3 class="code- [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/ffi_stream/type.Result.html b/arrow_array/ffi_stream/type.Result.html
index 54f691eb0ef..1e7a3aff47c 100644
--- a/arrow_array/ffi_stream/type.Result.html
+++ b/arrow_array/ffi_stream/type.Result.html
@@ -1,6 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Result` type in crate `arrow_array`."><title>Result in arrow_array::ffi_stream - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c14 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Result` type in crate `arrow_array`."><title>Result in arrow_array::ffi_stream - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c14 [...]
     Ok(T),
-    Err(<a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>),
+    Err(ArrowError),
 }</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Ok" class="variant"><a href="#variant.Ok" class="anchor">§</a><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><h3 class="code-header">Ok(T)</h3></section><div class="docblock"><p>Contains the success value</p>
-</div><section id="variant.Err" class="variant"><a href="#variant.Err" class="anchor">§</a><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><h3 class="code-header">Err(<a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>)</h3></section><div class="docblock"><p>Contains the error value</p>
+</div><section id="variant.Err" class="variant"><a href="#variant.Err" class="anchor">§</a><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><h3 class="code-header">Err(ArrowError)</h3></section><div class="docblock"><p>Contains the error value</p>
 </div></div><script src="../../type.impl/core/result/enum.Result.js" data-self-path="arrow_array::ffi_stream::Result" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/index.html b/arrow_array/index.html
index d698484c890..5d299d94f18 100644
--- a/arrow_array/index.html
+++ b/arrow_array/index.html
@@ -106,16 +106,16 @@ it is often the case that you wish to interact with the concrete arrays directly
     array.as_primitive::&lt;Float32Type&gt;().values()
 }</code></pre></div>
 </div></details><h2 id="reexports" class="section-header">Re-exports<a href="#reexports" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><code>pub use <a class="mod" href="array/index.html" title="mod arrow_array::array">array</a>::*;</code></div></li></ul><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="arithmetic/index.html" title="mod arrow_array: [...]
-<a href="../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</div></li><li><div class="item-name"><a class="mod" href="run_iterator/index.html" title="mod arrow_array::run_iterator">run_iterator</a></div><div class="desc docblock-short">Idiomatic iterator for <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>RunArray</code></a></div></li><li><div class="item-name"><a class="mod" href="scalar/index.html" title="mo [...]
-a number of subsequent patterns to match the data type</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_integer.html" title="macro arrow_array::downcast_integer">downcast_integer</a></div><div class="desc docblock-short">Given one or more expressions evaluating to an integer <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> invokes the provided macro
-<code>m</code> with the corresponding integer <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_primitive.html" title="macro arrow_array::downcast_primitive">downcast_primitive</a></div><div class="desc docblock-short">Given one or more expressions evaluating to primitive <a href="../arrow_sch [...]
-<code>m</code> with the corresponding <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_primitive_array.html" title="macro arrow_array::downcast_primitive_array">downcast_primitive_array</a></div><div class="desc docblock-short">Downcast an <a href="array/trait.Array.html" title="trait arrow_a [...]
-accepts a number of subsequent patterns to match the data type</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_run_array.html" title="macro arrow_array::downcast_run_array">downcast_run_array</a></div><div class="desc docblock-short">Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/run_array/struct.RunArray.html" title="struct arrow_array::array::run_array::RunArray"><code>RunArray</ [...]
-a number of subsequent patterns to match the data type</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_run_end_index.html" title="macro arrow_array::downcast_run_end_index">downcast_run_end_index</a></div><div class="desc docblock-short">Given one or more expressions evaluating to an integer <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> invokes the provided macro
-<code>m</code> with the corresponding integer <a href="types/trait.RunEndIndexType.html" title="trait arrow_array::types::RunEndIndexType"><code>RunEndIndexType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_temporal.html" title="macro arrow_array::downcast_temporal">downcast_temporal</a></div><div class="desc docblock-short">Given one or more expressions evaluating to primitive <a href="../arrow_schema/datatype [...]
-<code>m</code> with the corresponding <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_temporal_array.html" title="macro arrow_array::downcast_temporal_array">downcast_temporal_array</a></div><div class="desc docblock-short">Downcast an <a href="array/trait.Array.html" title="trait arrow_arra [...]
+<a href="arrow_schema::Schema">schema</a>.</div></li><li><div class="item-name"><a class="mod" href="run_iterator/index.html" title="mod arrow_array::run_iterator">run_iterator</a></div><div class="desc docblock-short">Idiomatic iterator for <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>RunArray</code></a></div></li><li><div class="item-name"><a class="mod" href="scalar/index.html" title="mod arrow_array::scalar">scalar</a><span title="Restricted Visibili [...]
+a number of subsequent patterns to match the data type</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_integer.html" title="macro arrow_array::downcast_integer">downcast_integer</a></div><div class="desc docblock-short">Given one or more expressions evaluating to an integer <a href="arrow_schema::DataType"><code>DataType</code></a> invokes the provided macro
+<code>m</code> with the corresponding integer <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_primitive.html" title="macro arrow_array::downcast_primitive">downcast_primitive</a></div><div class="desc docblock-short">Given one or more expressions evaluating to primitive <a href="arrow_schema [...]
+<code>m</code> with the corresponding <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_primitive_array.html" title="macro arrow_array::downcast_primitive_array">downcast_primitive_array</a></div><div class="desc docblock-short">Downcast an <a href="array/trait.Array.html" title="trait arrow_a [...]
+accepts a number of subsequent patterns to match the data type</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_run_array.html" title="macro arrow_array::downcast_run_array">downcast_run_array</a></div><div class="desc docblock-short">Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/run_array/struct.RunArray.html" title="struct arrow_array::array::run_array::RunArray"><code>RunArray</ [...]
+a number of subsequent patterns to match the data type</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_run_end_index.html" title="macro arrow_array::downcast_run_end_index">downcast_run_end_index</a></div><div class="desc docblock-short">Given one or more expressions evaluating to an integer <a href="arrow_schema::DataType"><code>DataType</code></a> invokes the provided macro
+<code>m</code> with the corresponding integer <a href="types/trait.RunEndIndexType.html" title="trait arrow_array::types::RunEndIndexType"><code>RunEndIndexType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_temporal.html" title="macro arrow_array::downcast_temporal">downcast_temporal</a></div><div class="desc docblock-short">Given one or more expressions evaluating to primitive <a href="arrow_schema::DataType"> [...]
+<code>m</code> with the corresponding <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</div></li><li><div class="item-name"><a class="macro" href="macro.downcast_temporal_array.html" title="macro arrow_array::downcast_temporal_array">downcast_temporal_array</a></div><div class="desc docblock-short">Downcast an <a href="array/trait.Array.html" title="trait arrow_arra [...]
 accepts a number of subsequent patterns to match the data type</div></li></ul><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::RecordBatch">RecordBatch</a></div><div class="desc docblock-short">A two-dimensional batch of column-oriented data with a defined
-<a href="../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</div></li><li><div class="item-name"><a class="struct" href="struct.RecordBatchIterator.html" title="struct arrow_array::RecordBatchIterator">RecordBatchIterator</a></div><div class="desc docblock-short">Generic implementation of <a href="record_batch/trait.RecordBatchReader.html" title="trait arrow_array::record_batch::RecordBatchReader">RecordBatchReader</a> that wraps an iterato [...]
+<a href="arrow_schema::Schema">schema</a>.</div></li><li><div class="item-name"><a class="struct" href="struct.RecordBatchIterator.html" title="struct arrow_array::RecordBatchIterator">RecordBatchIterator</a></div><div class="desc docblock-short">Generic implementation of <a href="record_batch/trait.RecordBatchReader.html" title="trait arrow_array::record_batch::RecordBatchReader">RecordBatchReader</a> that wraps an iterator.</div></li><li><div class="item-name"><a class="struct" href="s [...]
 <a href="scalar/trait.Datum.html" title="trait arrow_array::scalar::Datum"><code>Datum</code></a> and indicates <a href="https://docs.rs/arrow/latest/arrow/compute/index.html">compute</a> kernels should treat this array
 as a scalar value (a single value).</div></li></ul><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.ArrowNativeTypeOp.html" title="trait arrow_array::ArrowNativeTypeOp">ArrowNativeTypeOp</a></div><div class="desc docblock-short">Trait for [<code>ArrowNativeType</code>] that adds checked and unchecked arithmetic operations,
 and totally ordered comparison operations</div></li><li><div class="item-name"><a class="trait" href="trait.ArrowNumericType.html" title="trait arrow_array::ArrowNumericType">ArrowNumericType</a></div><div class="desc docblock-short">A subtype of primitive type that represents numeric values.</div></li><li><div class="item-name"><a class="trait" href="trait.Datum.html" title="trait arrow_array::Datum">Datum</a></div><div class="desc docblock-short">A possibly <a href="scalar/struct.Scala [...]
\ No newline at end of file
diff --git a/arrow_array/macro.downcast_dictionary_array.html b/arrow_array/macro.downcast_dictionary_array.html
index fc55686f871..e58840671b8 100644
--- a/arrow_array/macro.downcast_dictionary_array.html
+++ b/arrow_array/macro.downcast_dictionary_array.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Downcast an `Array` to a `DictionaryArray` based on its `DataType`, accepts a number of subsequent patterns to match the data type"><title>downcast_dictionary_array in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","So [...]
     (<span class="macro-nonterminal">$values</span>:ident =&gt; <span class="macro-nonterminal">$e</span>:expr, $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
     (<span class="macro-nonterminal">$values</span>:ident =&gt; <span class="macro-nonterminal">$e</span>:block $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> based on its <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arr [...]
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray"><code>DictionaryArray</code></a> based on its <a href="arrow_schema::DataType"><code>DataType</code></a>, accepts
 a number of subsequent patterns to match the data type</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_integer.html b/arrow_array/macro.downcast_integer.html
index 3f470165ead..f5fe6f7eae9 100644
--- a/arrow_array/macro.downcast_integer.html
+++ b/arrow_array/macro.downcast_integer.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Given one or more expressions evaluating to an integer `DataType` invokes the provided macro `m` with the corresponding integer `ArrowPrimitiveType`, followed by any additional arguments"><title>downcast_integer in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")d [...]
     ($(<span class="macro-nonterminal">$data_type</span>:expr),+ =&gt; (<span class="macro-nonterminal">$m</span>:path $(, <span class="macro-nonterminal">$args</span>:tt)<span class="kw-2">*</span>), $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to an integer <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> invokes the provided macro
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to an integer <a href="arrow_schema::DataType"><code>DataType</code></a> invokes the provided macro
 <code>m</code> with the corresponding integer <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_primitive.html b/arrow_array/macro.downcast_primitive.html
index 212cbd31881..bd1e52a1eff 100644
--- a/arrow_array/macro.downcast_primitive.html
+++ b/arrow_array/macro.downcast_primitive.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Given one or more expressions evaluating to primitive `DataType` invokes the provided macro `m` with the corresponding `ArrowPrimitiveType`, followed by any additional arguments"><title>downcast_primitive in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document [...]
     ($(<span class="macro-nonterminal">$data_type</span>:expr),+ =&gt; (<span class="macro-nonterminal">$m</span>:path $(, <span class="macro-nonterminal">$args</span>:tt)<span class="kw-2">*</span>), $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to primitive <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> invokes the provided macro
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to primitive <a href="arrow_schema::DataType"><code>DataType</code></a> invokes the provided macro
 <code>m</code> with the corresponding <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_primitive_array.html b/arrow_array/macro.downcast_primitive_array.html
index 20a82cb0820..aec3662eef8 100644
--- a/arrow_array/macro.downcast_primitive_array.html
+++ b/arrow_array/macro.downcast_primitive_array.html
@@ -3,7 +3,7 @@
     (($(<span class="macro-nonterminal">$values</span>:ident),+) =&gt; <span class="macro-nonterminal">$e</span>:expr, $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
     ($(<span class="macro-nonterminal">$values</span>:ident),+ =&gt; <span class="macro-nonterminal">$e</span>:block $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
     (($(<span class="macro-nonterminal">$values</span>:ident),+) =&gt; <span class="macro-nonterminal">$e</span>:block $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> based on its <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_sc [...]
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> based on its <a href="arrow_schema::DataType"><code>DataType</code></a>
 accepts a number of subsequent patterns to match the data type</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_run_array.html b/arrow_array/macro.downcast_run_array.html
index ad1f597179b..4a654b59cd5 100644
--- a/arrow_array/macro.downcast_run_array.html
+++ b/arrow_array/macro.downcast_run_array.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Downcast an `Array` to a `RunArray` based on its `DataType`, accepts a number of subsequent patterns to match the data type"><title>downcast_run_array in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Reg [...]
     (<span class="macro-nonterminal">$values</span>:ident =&gt; <span class="macro-nonterminal">$e</span>:expr, $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
     (<span class="macro-nonterminal">$values</span>:ident =&gt; <span class="macro-nonterminal">$e</span>:block $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/run_array/struct.RunArray.html" title="struct arrow_array::array::run_array::RunArray"><code>RunArray</code></a> based on its <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><cod [...]
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a <a href="array/run_array/struct.RunArray.html" title="struct arrow_array::array::run_array::RunArray"><code>RunArray</code></a> based on its <a href="arrow_schema::DataType"><code>DataType</code></a>, accepts
 a number of subsequent patterns to match the data type</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_run_end_index.html b/arrow_array/macro.downcast_run_end_index.html
index 41a23d7818a..fe79258cad5 100644
--- a/arrow_array/macro.downcast_run_end_index.html
+++ b/arrow_array/macro.downcast_run_end_index.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Given one or more expressions evaluating to an integer `DataType` invokes the provided macro `m` with the corresponding integer `RunEndIndexType`, followed by any additional arguments"><title>downcast_run_end_index in arrow_array - Rust</title><script>if(window.location.protocol!=="file: [...]
     ($(<span class="macro-nonterminal">$data_type</span>:expr),+ =&gt; (<span class="macro-nonterminal">$m</span>:path $(, <span class="macro-nonterminal">$args</span>:tt)<span class="kw-2">*</span>), $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to an integer <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> invokes the provided macro
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to an integer <a href="arrow_schema::DataType"><code>DataType</code></a> invokes the provided macro
 <code>m</code> with the corresponding integer <a href="types/trait.RunEndIndexType.html" title="trait arrow_array::types::RunEndIndexType"><code>RunEndIndexType</code></a>, followed by any additional arguments</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_temporal.html b/arrow_array/macro.downcast_temporal.html
index c2362933866..ce843d4913b 100644
--- a/arrow_array/macro.downcast_temporal.html
+++ b/arrow_array/macro.downcast_temporal.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Given one or more expressions evaluating to primitive `DataType` invokes the provided macro `m` with the corresponding `ArrowPrimitiveType`, followed by any additional arguments"><title>downcast_temporal in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document. [...]
     ($(<span class="macro-nonterminal">$data_type</span>:expr),+ =&gt; (<span class="macro-nonterminal">$m</span>:path $(, <span class="macro-nonterminal">$args</span>:tt)<span class="kw-2">*</span>), $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to primitive <a href="../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a> invokes the provided macro
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given one or more expressions evaluating to primitive <a href="arrow_schema::DataType"><code>DataType</code></a> invokes the provided macro
 <code>m</code> with the corresponding <a href="types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType"><code>ArrowPrimitiveType</code></a>, followed by any additional arguments</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/macro.downcast_temporal_array.html b/arrow_array/macro.downcast_temporal_array.html
index 1b81d04b161..0c2784b66ab 100644
--- a/arrow_array/macro.downcast_temporal_array.html
+++ b/arrow_array/macro.downcast_temporal_array.html
@@ -3,7 +3,7 @@
     (($(<span class="macro-nonterminal">$values</span>:ident),+) =&gt; <span class="macro-nonterminal">$e</span>:expr, $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
     ($(<span class="macro-nonterminal">$values</span>:ident),+ =&gt; <span class="macro-nonterminal">$e</span>:block $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
     (($(<span class="macro-nonterminal">$values</span>:ident),+) =&gt; <span class="macro-nonterminal">$e</span>:block $(<span class="macro-nonterminal">$p</span>:pat =&gt; <span class="macro-nonterminal">$fallback</span>:expr $(,)<span class="kw-2">*</span>)<span class="kw-2">*</span>) =&gt; { ... };
-}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a temporal <a href="array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> based on its <a href="../arrow_schema/datatype/enum.DataType.html" title="enum [...]
+}</pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcast an <a href="array/trait.Array.html" title="trait arrow_array::array::Array"><code>Array</code></a> to a temporal <a href="array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> based on its <a href="arrow_schema::DataType"><code>DataType</code></a>
 accepts a number of subsequent patterns to match the data type</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
diff --git a/arrow_array/record_batch/index.html b/arrow_array/record_batch/index.html
index e7c7e7d1af5..770c3776ac0 100644
--- a/arrow_array/record_batch/index.html
+++ b/arrow_array/record_batch/index.html
@@ -1,4 +1,4 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A two-dimensional batch of column-oriented data with a defined schema."><title>arrow_array::record_batch - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf084 [...]
-<a href="../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</p>
+<a href="arrow_schema::Schema">schema</a>.</p>
 </div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a></div><div class="desc docblock-short">A two-dimensional batch of column-oriented data with a defined
-<a href="../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</div></li><li><div class="item-name"><a class="struct" href="struct.RecordBatchIterator.html" title="struct arrow_array::record_batch::RecordBatchIterator">RecordBatchIterator</a></div><div class="desc docblock-short">Generic implementation of <a href="trait.RecordBatchReader.html" title="trait arrow_array::record_batch::RecordBatchReader">RecordBatchReader</a> that wraps an ite [...]
\ No newline at end of file
+<a href="arrow_schema::Schema">schema</a>.</div></li><li><div class="item-name"><a class="struct" href="struct.RecordBatchIterator.html" title="struct arrow_array::record_batch::RecordBatchIterator">RecordBatchIterator</a></div><div class="desc docblock-short">Generic implementation of <a href="trait.RecordBatchReader.html" title="trait arrow_array::record_batch::RecordBatchReader">RecordBatchReader</a> that wraps an iterator.</div></li><li><div class="item-name"><a class="struct" href=" [...]
\ No newline at end of file
diff --git a/arrow_array/record_batch/struct.RecordBatch.html b/arrow_array/record_batch/struct.RecordBatch.html
index 1fb51e8c057..200abbf060a 100644
--- a/arrow_array/record_batch/struct.RecordBatch.html
+++ b/arrow_array/record_batch/struct.RecordBatch.html
@@ -1,21 +1,21 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A two-dimensional batch of column-oriented data with a defined schema."><title>RecordBatch in arrow_array::record_batch - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regul [...]
-    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../array/trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;&gt;,
     row_count: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A two-dimensional batch of column-oriented data with a defined
-<a href="../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</p>
+<a href="arrow_schema::Schema">schema</a>.</p>
 <p>A <code>RecordBatch</code> is a two-dimensional dataset of a number of
 contiguous arrays, each the same length.
 A record batch has a schema which must match its arrays’
 datatypes.</p>
 <p>Record batches are a convenient unit of work for various
 serialization and computation functions, possibly incremental.</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.schema" class="structfield section-header"><a href="#structfield.schema" class="anchor field">§</a><code>schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a></code></span><span id="structfield.columns" class="structfield section-header"><a href="#structfield.columns" class="a [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.schema" class="structfield section-header"><a href="#structfield.schema" class="anchor field">§</a><code>schema: SchemaRef</code></span><span id="structfield.columns" class="structfield section-header"><a href="#structfield.columns" class="anchor field">§</a><code>columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html"  [...]
 <p>This is stored separately from the columns to handle the case of no columns</p>
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#82-478">source</a><a href="#impl-RecordBatch" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.RecordBatch.html" title="struct arrow_ [...]
-    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns.</p>
 <p>Expects the following:</p>
 <ul>
 <li>the vec of columns to not be empty</li>
@@ -36,25 +36,25 @@ and match</li>
     <span class="macro">vec!</span>[Arc::new(id_array)]
 ).unwrap();</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new_with_options" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#119-125">source</a><h4 class="code-header">pub fn <a href="#method.try_new_with_options" class="fn">try_new_with_options</a>(
-    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     options: &amp;<a class="struct" href="struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions">RecordBatchOptions</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns, with additional options,
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns, with additional options,
 such as whether to strictly validate field names.</p>
 <p>See <a href="struct.RecordBatch.html#method.try_new" title="associated function arrow_array::record_batch::RecordBatch::try_new"><code>RecordBatch::try_new</code></a> for the expected conditions.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_empty" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#128-140">source</a><h4 class="code-header">pub fn <a href="#method.new_empty" class="fn">new_empty</a>(schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Crea [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_empty" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#128-140">source</a><h4 class="code-header">pub fn <a href="#method.new_empty" class="fn">new_empty</a>(schema: SchemaRef) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new empty <a href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>RecordBa [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new_impl" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#144-213">source</a><h4 class="code-header">fn <a href="#method.try_new_impl" class="fn">try_new_impl</a>(
-    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     options: &amp;<a class="struct" href="struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions">RecordBatchOptions</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Validate the schema and columns using <a href="struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions"><code>RecordBatchOptio [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Validate the schema and columns using <a href="struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions"><code>RecordBatchOptions</code></a>. Returns an error
 if any validation check fails, otherwise returns the created <a href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>Self</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_schema" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#219-232">source</a><h4 class="code-header">pub fn <a href="#method.with_schema" class="fn">with_schema</a>(self, schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>) -&gt; <a class="enum" href="https://doc.rust-lang.or [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_schema" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#219-232">source</a><h4 class="code-header">pub fn <a href="#method.with_schema" class="fn">with_schema</a>(self, schema: SchemaRef) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></sec [...]
 <p>Returns an error if <code>schema</code> is not a superset of the current schema
-as determined by <a href="../../arrow_schema/schema/struct.Schema.html#method.contains" title="method arrow_schema::schema::Schema::contains"><code>Schema::contains</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.schema" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#235-237">source</a><h4 class="code-header">pub fn <a href="#method.schema" class="fn">schema</a>(&amp;self) -&gt; <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a></h4></section></summary><div class="docblock"><p>Returns the <a h [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.schema_ref" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#240-242">source</a><h4 class="code-header">pub fn <a href="#method.schema_ref" class="fn">schema_ref</a>(&amp;self) -&gt; &amp;<a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a></h4></section></summary><div class="docblock"><p [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.project" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#245-268">source</a><h4 class="code-header">pub fn <a href="#method.project" class="fn">project</a>(&amp;self, indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Res [...]
+as determined by [<code>Schema::contains</code>]</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.schema" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#235-237">source</a><h4 class="code-header">pub fn <a href="#method.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef</h4></section></summary><div class="docblock"><p>Returns the [<code>Schema</code>] of the record batch.</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.schema_ref" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#240-242">source</a><h4 class="code-header">pub fn <a href="#method.schema_ref" class="fn">schema_ref</a>(&amp;self) -&gt; &amp;SchemaRef</h4></section></summary><div class="docblock"><p>Returns a reference to the [<code>Schema</code>] of the record batch.</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.project" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#245-268">source</a><h4 class="code-header">pub fn <a href="#method.project" class="fn">project</a>(&amp;self, indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Res [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_columns" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#288-290">source</a><h4 class="code-header">pub fn <a href="#method.num_columns" class="fn">num_columns</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the number of columns in [...]
 <h5 id="example-1"><a class="doc-anchor" href="#example-1">§</a>Example</h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
@@ -106,7 +106,7 @@ as determined by <a href="../../arrow_schema/schema/struct.Schema.html#method.co
 according to <code>offset</code> and <code>length</code></p>
 <h5 id="panics-2"><a class="doc-anchor" href="#panics-2">§</a>Panics</h5>
 <p>Panics if <code>offset</code> with <code>length</code> is greater than column length.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#414-428">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href= [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#414-428">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;<div cl [...]
     I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = (F, <a class="type" href="../array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>)&gt;,
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,</div></h4></section></summary><div class="docblock"><p>Create a <code>RecordBatch</code> from an iterable list of pairs of the
 form <code>(field_name, array)</code>, with the same requirements on
@@ -126,7 +126,7 @@ specify nullibility, use <a href="struct.RecordBatch.html#method.try_from_iter_w
   (<span class="string">"a"</span>, a),
   (<span class="string">"b"</span>, b),
 ]);</code></pre></div>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter_with_nullable" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#451-469">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter_with_nullable" class="fn">try_from_iter_with_nullable</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result" [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter_with_nullable" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#451-469">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter_with_nullable" class="fn">try_from_iter_with_nullable</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result" [...]
     I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = (F, <a class="type" href="../array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>)&gt;,
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,</div></h4></section></summary><div class="docblock"><p>Create a <code>RecordBatch</code> from an iterable list of tuples of the
 form <code>(field_name, array, nullable)</code>, with the same requirements on
diff --git a/arrow_array/record_batch/struct.RecordBatchIterator.html b/arrow_array/record_batch/struct.RecordBatchIterator.html
index d27205ff51e..f25a6a2426a 100644
--- a/arrow_array/record_batch/struct.RecordBatchIterator.html
+++ b/arrow_array/record_batch/struct.RecordBatchIterator.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Generic implementation of RecordBatchReader that wraps an iterator."><title>RecordBatchIterator in arrow_array::record_batch - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans- [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../../arrow_schema/ [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div>{
     inner: I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>,
-    inner_schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    inner_schema: SchemaRef,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generic implementation of <a href="trait.RecordBatchReader.html" title="trait arrow_array::record_batch::RecordBatchReader">RecordBatchReader</a> that wraps an iterator.</p>
 <h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span>a: ArrayRef = Arc::new(Int32Array::from(<span class="macro">vec!</span>[<span class="number">1</span>, <span class="number">2</span>]));
@@ -18,11 +18,11 @@
 
 <span class="macro">assert_eq!</span>(reader.schema(), record_batch.schema());
 <span class="macro">assert_eq!</span>(reader.next().unwrap().unwrap(), record_batch);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.inner" class="structfield section-header"><a href="#structfield.inner" class="anchor field">§</a><code>inner: I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code></span><span id="struc [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../../arrow_schema/ [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.inner" class="structfield section-header"><a href="#structfield.inner" class="anchor field">§</a><code>inner: I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code></span><span id="struc [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h3></section>< [...]
 <p>If <code>iter</code> is an infallible iterator, use <code>.map(Ok)</code>.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Iterator-for-RecordBatchIterator%3CI%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#600-613">source</a><a href="#impl-Iterator-for-RecordBatchIterator%3CI%3E" class [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../../arrow_schema/ [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h3></section>< [...]
     &amp;mut self,
 ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;[Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">N</a>], <a class="struct" href="https://doc.rust-lang.o [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_next_chunk</code>)</span></div></span><div class='docblock'>Advances the iterator and returns an array containing the next <code>N</code> values. <a href="https://doc.rust-lang.org/n [...]
@@ -198,7 +198,7 @@ greater than or equal to those of another. <a href="https://doc.rust-lang.org/ni
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>) -&gt; K,
     K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>,</div></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>is_sorted</code>)</span></div></span><div class='docblock'>Checks if the elements of this iterator are sorted using the given key extraction
 function. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#method.is_sorted_by_key">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RecordBatchReader-for-RecordBatchIterator%3CI%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#615-622">source</a><a href="#impl-RecordBatchReader-for-RecordBatchIterator%3CI%3E" class="anchor">§</a><h3 cl [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../../arrow_schema/ [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h3></section>< [...]
     &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait. [...]
     &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_ [...]
     &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait. [...]
diff --git a/arrow_array/record_batch/trait.RecordBatchReader.html b/arrow_array/record_batch/trait.RecordBatchReader.html
index 3b434c8a294..014b442cbbd 100644
--- a/arrow_array/record_batch/trait.RecordBatchReader.html
+++ b/arrow_array/record_batch/trait.RecordBatchReader.html
@@ -1,14 +1,14 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for types that can read `RecordBatch`’s."><title>RecordBatchReader in arrow_array::record_batch - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for types that can read `RecordBatch`’s."><title>RecordBatchReader in arrow_array::record_batch - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
     // Required method
-    fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>;
+    fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef;
 
     // Provided method
-    fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>&gt;, <a class="enum" h [...]
+    fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>&gt;, ArrowError&gt; { ... }
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for types that can read <code>RecordBatch</code>’s.</p>
 <p>To create from an iterator, see <a href="struct.RecordBatchIterator.html" title="struct arrow_array::record_batch::RecordBatchIterator">RecordBatchIterator</a>.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.schema" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#34">source</a><h4 class="code-header">fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; <a class="type" href="../../arrow_schema/schema/type.Schema [...]
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.schema" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#34">source</a><h4 class="code-header">fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef</h4></section></summary><div class="docblock"><p> [...]
 <p>Implementation of this trait should guarantee that all <code>RecordBatch</code>’s returned by this
 reader should have the same schema as returned from this method.</p>
-</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.next_batch" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#41-43">source</a><h4 class="code-header">fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust [...]
-</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-RecordBatchReader-for-Box%3CR%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#46-50">source</a><a href="#impl-RecordBatchReader-for-Box%3CR%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R: <a class="trait" href="trait. [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../../arrow_schema/ [...]
\ No newline at end of file
+</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.next_batch" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#41-43">source</a><h4 class="code-header">fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust [...]
+</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-RecordBatchReader-for-Box%3CR%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#46-50">source</a><a href="#impl-RecordBatchReader-for-Box%3CR%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R: <a class="trait" href="trait. [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h3></section>< [...]
\ No newline at end of file
diff --git a/arrow_array/record_batch/trait.RecordBatchWriter.html b/arrow_array/record_batch/trait.RecordBatchWriter.html
index da222a8e903..93976672ee2 100644
--- a/arrow_array/record_batch/trait.RecordBatchWriter.html
+++ b/arrow_array/record_batch/trait.RecordBatchWriter.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for types that can write `RecordBatch`’s."><title>RecordBatchWriter in arrow_array::record_batch - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843f [...]
     // Required methods
-    fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.Arrow [...]
-<span class="item-spacer"></span>    fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+    fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for types that can write <code>RecordBatch</code>’s.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.write" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#55">source</a><h4 class="code-header">fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="struct.RecordBatch.html" tit [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.close" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#58">source</a><h4 class="code-header">fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primiti [...]
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.write" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#55">source</a><h4 class="code-header">fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="struct.RecordBatch.html" tit [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.close" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#58">source</a><h4 class="code-header">fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primiti [...]
 </div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../trait.impl/arrow_array/record_batch/trait.RecordBatchWriter.js" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/struct.RecordBatch.html b/arrow_array/struct.RecordBatch.html
index b9a5eaf7a05..aa378834326 100644
--- a/arrow_array/struct.RecordBatch.html
+++ b/arrow_array/struct.RecordBatch.html
@@ -1,21 +1,21 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A two-dimensional batch of column-oriented data with a defined schema."><title>RecordBatch in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf08 [...]
-    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="array/trait.Array.html" title="trait arrow_array::array::Array">Array</a>&gt;&gt;,
     row_count: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A two-dimensional batch of column-oriented data with a defined
-<a href="../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</p>
+<a href="arrow_schema::Schema">schema</a>.</p>
 <p>A <code>RecordBatch</code> is a two-dimensional dataset of a number of
 contiguous arrays, each the same length.
 A record batch has a schema which must match its arrays’
 datatypes.</p>
 <p>Record batches are a convenient unit of work for various
 serialization and computation functions, possibly incremental.</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.schema" class="structfield section-header"><a href="#structfield.schema" class="anchor field">§</a><code>schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a></code></span><span id="structfield.columns" class="structfield section-header"><a href="#structfield.columns" class="anch [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.schema" class="structfield section-header"><a href="#structfield.schema" class="anchor field">§</a><code>schema: SchemaRef</code></span><span id="structfield.columns" class="structfield section-header"><a href="#structfield.columns" class="anchor field">§</a><code>columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html"  [...]
 <p>This is stored separately from the columns to handle the case of no columns</p>
 </div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-RecordBatch" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#82-478">source</a><a href="#impl-RecordBatch" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="record_batch/struct.RecordBatch.html" title="str [...]
-    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns.</p>
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns.</p>
 <p>Expects the following:</p>
 <ul>
 <li>the vec of columns to not be empty</li>
@@ -36,25 +36,25 @@ and match</li>
     <span class="macro">vec!</span>[Arc::new(id_array)]
 ).unwrap();</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new_with_options" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#119-125">source</a><h4 class="code-header">pub fn <a href="#method.try_new_with_options" class="fn">try_new_with_options</a>(
-    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     options: &amp;<a class="struct" href="record_batch/struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions">RecordBatchOptions</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns, with additional options,
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Creates a <code>RecordBatch</code> from a schema and columns, with additional options,
 such as whether to strictly validate field names.</p>
 <p>See <a href="record_batch/struct.RecordBatch.html#method.try_new" title="associated function arrow_array::record_batch::RecordBatch::try_new"><code>RecordBatch::try_new</code></a> for the expected conditions.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.new_empty" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#128-140">source</a><h4 class="code-header">pub fn <a href="#method.new_empty" class="fn">new_empty</a>(schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a  [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.new_empty" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#128-140">source</a><h4 class="code-header">pub fn <a href="#method.new_empty" class="fn">new_empty</a>(schema: SchemaRef) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new empty <a href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><cod [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.try_new_impl" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#144-213">source</a><h4 class="code-header">fn <a href="#method.try_new_impl" class="fn">try_new_impl</a>(
-    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    schema: SchemaRef,
     columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;,
     options: &amp;<a class="struct" href="record_batch/struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions">RecordBatchOptions</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Validate the schema and columns using <a href="record_batch/struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions"><code>Record [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Validate the schema and columns using <a href="record_batch/struct.RecordBatchOptions.html" title="struct arrow_array::record_batch::RecordBatchOptions"><code>RecordBatchOptions</code></a>. Returns an error
 if any validation check fails, otherwise returns the created <a href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch"><code>Self</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.with_schema" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#219-232">source</a><h4 class="code-header">pub fn <a href="#method.with_schema" class="fn">with_schema</a>(self, schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nigh [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.with_schema" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#219-232">source</a><h4 class="code-header">pub fn <a href="#method.with_schema" class="fn">with_schema</a>(self, schema: SchemaRef) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></sectio [...]
 <p>Returns an error if <code>schema</code> is not a superset of the current schema
-as determined by <a href="../arrow_schema/schema/struct.Schema.html#method.contains" title="method arrow_schema::schema::Schema::contains"><code>Schema::contains</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.schema" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#235-237">source</a><h4 class="code-header">pub fn <a href="#method.schema" class="fn">schema</a>(&amp;self) -&gt; <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a></h4></section></summary><div class="docblock"><p>Returns the <a href=". [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.schema_ref" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#240-242">source</a><h4 class="code-header">pub fn <a href="#method.schema_ref" class="fn">schema_ref</a>(&amp;self) -&gt; &amp;<a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a></h4></section></summary><div class="docblock"><p>Retur [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.project" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#245-268">source</a><h4 class="code-header">pub fn <a href="#method.project" class="fn">project</a>(&amp;self, indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result [...]
+as determined by [<code>Schema::contains</code>]</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.schema" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#235-237">source</a><h4 class="code-header">pub fn <a href="#method.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef</h4></section></summary><div class="docblock"><p>Returns the [<code>Schema</code>] of the record batch.</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.schema_ref" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#240-242">source</a><h4 class="code-header">pub fn <a href="#method.schema_ref" class="fn">schema_ref</a>(&amp;self) -&gt; &amp;SchemaRef</h4></section></summary><div class="docblock"><p>Returns a reference to the [<code>Schema</code>] of the record batch.</p>
+</div></details><details class="toggle method-toggle" open><summary><section id="method.project" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#245-268">source</a><h4 class="code-header">pub fn <a href="#method.project" class="fn">project</a>(&amp;self, indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.num_columns" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#288-290">source</a><h4 class="code-header">pub fn <a href="#method.num_columns" class="fn">num_columns</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the number of columns in th [...]
 <h5 id="example-1"><a class="doc-anchor" href="#example-1">§</a>Example</h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
@@ -106,7 +106,7 @@ as determined by <a href="../arrow_schema/schema/struct.Schema.html#method.conta
 according to <code>offset</code> and <code>length</code></p>
 <h5 id="panics-2"><a class="doc-anchor" href="#panics-2">§</a>Panics</h5>
 <p>Panics if <code>offset</code> with <code>length</code> is greater than column length.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#414-428">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href=".. [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#414-428">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter" class="fn">try_from_iter</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;<div class [...]
     I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = (F, <a class="type" href="array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>)&gt;,
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,</div></h4></section></summary><div class="docblock"><p>Create a <code>RecordBatch</code> from an iterable list of pairs of the
 form <code>(field_name, array)</code>, with the same requirements on
@@ -126,7 +126,7 @@ specify nullibility, use <a href="record_batch/struct.RecordBatch.html#method.tr
   (<span class="string">"a"</span>, a),
   (<span class="string">"b"</span>, b),
 ]);</code></pre></div>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter_with_nullable" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#451-469">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter_with_nullable" class="fn">try_from_iter_with_nullable</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Re [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_iter_with_nullable" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#451-469">source</a><h4 class="code-header">pub fn <a href="#method.try_from_iter_with_nullable" class="fn">try_from_iter_with_nullable</a>&lt;I, F&gt;(value: I) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Re [...]
     I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = (F, <a class="type" href="array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>)&gt;,
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,</div></h4></section></summary><div class="docblock"><p>Create a <code>RecordBatch</code> from an iterable list of tuples of the
 form <code>(field_name, array, nullable)</code>, with the same requirements on
diff --git a/arrow_array/struct.RecordBatchIterator.html b/arrow_array/struct.RecordBatchIterator.html
index 7f553134c56..4a16d110757 100644
--- a/arrow_array/struct.RecordBatchIterator.html
+++ b/arrow_array/struct.RecordBatchIterator.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Generic implementation of RecordBatchReader that wraps an iterator."><title>RecordBatchIterator in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c14 [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../arr [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div>{
     inner: I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>,
-    inner_schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
+    inner_schema: SchemaRef,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generic implementation of <a href="record_batch/trait.RecordBatchReader.html" title="trait arrow_array::record_batch::RecordBatchReader">RecordBatchReader</a> that wraps an iterator.</p>
 <h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span>a: ArrayRef = Arc::new(Int32Array::from(<span class="macro">vec!</span>[<span class="number">1</span>, <span class="number">2</span>]));
@@ -18,11 +18,11 @@
 
 <span class="macro">assert_eq!</span>(reader.schema(), record_batch.schema());
 <span class="macro">assert_eq!</span>(reader.next().unwrap().unwrap(), record_batch);</code></pre></div>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.inner" class="structfield section-header"><a href="#structfield.inner" class="anchor field">§</a><code>inner: I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code></span><span id="struc [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../arr [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.inner" class="structfield section-header"><a href="#structfield.inner" class="anchor field">§</a><code>inner: I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code></span><span id="struc [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h [...]
 <p>If <code>iter</code> is an infallible iterator, use <code>.map(Ok)</code>.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Iterator-for-RecordBatchIterator%3CI%3E" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#600-613">source</a><a href="#impl-Iterator-for-RecordBatchIterator%3CI%3E" class="a [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../arr [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h [...]
     &amp;mut self,
 ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;[Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">N</a>], <a class="struct" href="https://doc.rust-lang.o [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_next_chunk</code>)</span></div></span><div class='docblock'>Advances the iterator and returns an array containing the next <code>N</code> values. <a href="https://doc.rust-lang.org/n [...]
@@ -198,7 +198,7 @@ greater than or equal to those of another. <a href="https://doc.rust-lang.org/ni
     F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>) -&gt; K,
     K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>,</div></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>is_sorted</code>)</span></div></span><div class='docblock'>Checks if the elements of this iterator are sorted using the given key extraction
 function. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#method.is_sorted_by_key">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RecordBatchReader-for-RecordBatchIterator%3CI%3E" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#615-622">source</a><a href="#impl-RecordBatchReader-for-RecordBatchIterator%3CI%3E" class="anchor">§</a><h3 class [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../arr [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h [...]
     &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait. [...]
     &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_ [...]
     &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait. [...]
diff --git a/arrow_array/timezone/private/struct.Tz.html b/arrow_array/timezone/private/struct.Tz.html
index 732f3caf3f1..c0ef270ca9d 100644
--- a/arrow_array/timezone/private/struct.Tz.html
+++ b/arrow_array/timezone/private/struct.Tz.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An Arrow `TimeZone`"><title>Tz in arrow_array::timezone::private - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d [...]
-</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="enum" href="enum.TzInner.html" title="enum arrow_array::timezone::private::TzInner">TzInner</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><di [...]
+</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="enum" href="enum.TzInner.html" title="enum arrow_array::timezone::private::TzInner">TzInner</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><di [...]
 This type is used to store the actual offset in date and time types.
 The original <code>TimeZone</code> value can be recovered via <code>TimeZone::from_offset</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.from_offset" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/timezone.rs.html#112-114">source</a><a href="#method.from_offset" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/chrono/latest/chrono/offset/trait.TimeZone.html#tymethod.from_offset" clas [...]
     &amp;self,
diff --git a/arrow_array/timezone/struct.Tz.html b/arrow_array/timezone/struct.Tz.html
index d28367af65b..e467e86da0a 100644
--- a/arrow_array/timezone/struct.Tz.html
+++ b/arrow_array/timezone/struct.Tz.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An Arrow `TimeZone`"><title>Tz in arrow_array::timezone - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2 [...]
-</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="enum" href="private/enum.TzInner.html" title="enum arrow_array::timezone::private::TzInner">TzInner</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a> [...]
+</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="enum" href="private/enum.TzInner.html" title="enum arrow_array::timezone::private::TzInner">TzInner</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a> [...]
 This type is used to store the actual offset in date and time types.
 The original <code>TimeZone</code> value can be recovered via <code>TimeZone::from_offset</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.from_offset" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/timezone.rs.html#112-114">source</a><a href="#method.from_offset" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/chrono/latest/chrono/offset/trait.TimeZone.html#tymethod.from_offset" class=" [...]
     &amp;self,
diff --git a/arrow_array/trait.ArrowNativeTypeOp.html b/arrow_array/trait.ArrowNativeTypeOp.html
index 2d73a6035f8..afacfefa4ae 100644
--- a/arrow_array/trait.ArrowNativeTypeOp.html
+++ b/arrow_array/trait.ArrowNativeTypeOp.html
@@ -5,19 +5,19 @@
     const <a href="#associatedconstant.MAX_TOTAL_ORDER" class="constant">MAX_TOTAL_ORDER</a>: Self;
 <details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 22 methods</span></summary>
     // Required methods
-    fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+    fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.add_wrapping" class="fn">add_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.sub_wrapping" class="fn">sub_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.mul_wrapping" class="fn">mul_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.div_wrapping" class="fn">div_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.mod_wrapping" class="fn">mod_wrapping</a>(self, rhs: Self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.neg_wrapping" class="fn">neg_wrapping</a>(self) -&gt; Self;
-<span class="item-spacer"></span>    fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;;
 <span class="item-spacer"></span>    fn <a href="#tymethod.pow_wrapping" class="fn">pow_wrapping</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; Self;
 <span class="item-spacer"></span>    fn <a href="#tymethod.is_zero" class="fn">is_zero</a>(self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.compare" class="fn">compare</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>;
@@ -49,19 +49,19 @@ which means that this value is a negative NaN.</p>
 </div></details><details class="toggle" open><summary><section id="associatedconstant.MAX_TOTAL_ORDER" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#56">source</a><h4 class="code-header">const <a href="#associatedconstant.MAX_TOTAL_ORDER" class="constant">MAX_TOTAL_ORDER</a>: Self</h4></section></summary><div class="docblock"><p>The maximum value and identity for the <code>min</code> aggregation.
 Note that the aggregation uses the total order predicate for floating point values,
 which means that this value is a positive NaN.</p>
-</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#59">source</a><h4 class="code-header">fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rus [...]
+</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#59">source</a><h4 class="code-header">fn <a href="#tymethod.add_checked" class="fn">add_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rus [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.add_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#62">source</a><h4 class="code-header">fn <a href="#tymethod.add_wrapping" class="fn">add_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping addition operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.sub_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#65">source</a><h4 class="code-header">fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/erro [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.sub_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#65">source</a><h4 class="code-header">fn <a href="#tymethod.sub_checked" class="fn">sub_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><di [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.sub_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#68">source</a><h4 class="code-header">fn <a href="#tymethod.sub_wrapping" class="fn">sub_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping subtraction operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mul_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#71">source</a><h4 class="code-header">fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/erro [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mul_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#71">source</a><h4 class="code-header">fn <a href="#tymethod.mul_checked" class="fn">mul_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><di [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mul_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#74">source</a><h4 class="code-header">fn <a href="#tymethod.mul_wrapping" class="fn">mul_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping multiplication operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.div_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#77">source</a><h4 class="code-header">fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/erro [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.div_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#77">source</a><h4 class="code-header">fn <a href="#tymethod.div_checked" class="fn">div_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><di [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.div_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#80">source</a><h4 class="code-header">fn <a href="#tymethod.div_wrapping" class="fn">div_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping division operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mod_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#83">source</a><h4 class="code-header">fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/erro [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mod_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#83">source</a><h4 class="code-header">fn <a href="#tymethod.mod_checked" class="fn">mod_checked</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><di [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.mod_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#86">source</a><h4 class="code-header">fn <a href="#tymethod.mod_wrapping" class="fn">mod_wrapping</a>(self, rhs: Self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping remainder operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.neg_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#89">source</a><h4 class="code-header">fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="enum" href="../arrow_schema/error/enum.Arro [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.neg_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#89">source</a><h4 class="code-header">fn <a href="#tymethod.neg_checked" class="fn">neg_checked</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, ArrowError&gt;</h4></section></summary><div class="do [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.neg_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#92">source</a><h4 class="code-header">fn <a href="#tymethod.neg_wrapping" class="fn">neg_wrapping</a>(self) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping negation operation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.pow_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#95">source</a><h4 class="code-header">fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="e [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.pow_checked" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#95">source</a><h4 class="code-header">fn <a href="#tymethod.pow_checked" class="fn">pow_checked</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="e [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.pow_wrapping" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#98">source</a><h4 class="code-header">fn <a href="#tymethod.pow_wrapping" class="fn">pow_wrapping</a>(self, exp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Wrapping exponentiation operation</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.is_zero" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#101">source</a><h4 class="code-header">fn <a href="#tymethod.is_zero" class="fn">is_zero</a>(self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns true if zero else false</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.compare" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#104">source</a><h4 class="code-header">fn <a href="#tymethod.compare" class="fn">compare</a>(self, rhs: Self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class="docblock"><p>Compare opera [...]
@@ -71,4 +71,4 @@ which means that this value is a positive NaN.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_le" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#123-125">source</a><h4 class="code-header">fn <a href="#method.is_le" class="fn">is_le</a>(self, rhs: Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Less than equals operation</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_gt" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#129-131">source</a><h4 class="code-header">fn <a href="#method.is_gt" class="fn">is_gt</a>(self, rhs: Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Greater than operation</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_ge" class="method"><a class="src rightside" href="../src/arrow_array/arithmetic.rs.html#135-137">source</a><h4 class="code-header">fn <a href="#method.is_ge" class="fn">is_ge</a>(self, rhs: Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Greater than equals operation</p>
-</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="im [...]
\ No newline at end of file
+</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="im [...]
\ No newline at end of file
diff --git a/arrow_array/trait.RecordBatchReader.html b/arrow_array/trait.RecordBatchReader.html
index 7aab0babcad..a1f136fff2b 100644
--- a/arrow_array/trait.RecordBatchReader.html
+++ b/arrow_array/trait.RecordBatchReader.html
@@ -1,14 +1,14 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for types that can read `RecordBatch`’s."><title>RecordBatchReader in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSa [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for types that can read `RecordBatch`’s."><title>RecordBatchReader in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSa [...]
     // Required method
-    fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>;
+    fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef;
 
     // Provided method
-    fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>&gt;, <a c [...]
+    fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>&gt;, Arro [...]
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for types that can read <code>RecordBatch</code>’s.</p>
 <p>To create from an iterator, see <a href="record_batch/struct.RecordBatchIterator.html" title="struct arrow_array::record_batch::RecordBatchIterator">RecordBatchIterator</a>.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.schema" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#34">source</a><h4 class="code-header">fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; <a class="type" href="../arrow_schema/schema/type.SchemaRef.ht [...]
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.schema" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#34">source</a><h4 class="code-header">fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef</h4></section></summary><div class="docblock"><p>Ret [...]
 <p>Implementation of this trait should guarantee that all <code>RecordBatch</code>’s returned by this
 reader should have the same schema as returned from this method.</p>
-</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.next_batch" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#41-43">source</a><h4 class="code-header">fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-la [...]
-</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-RecordBatchReader-for-Box%3CR%3E" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#46-50">source</a><a href="#impl-RecordBatchReader-for-Box%3CR%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R: <a class="trait" href="record_ba [...]
-    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, <a class="enum" href="../arr [...]
\ No newline at end of file
+</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.next_batch" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#41-43">source</a><h4 class="code-header">fn <a href="#method.next_batch" class="fn">next_batch</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-la [...]
+</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-RecordBatchReader-for-Box%3CR%3E" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#46-50">source</a><a href="#impl-RecordBatchReader-for-Box%3CR%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R: <a class="trait" href="record_ba [...]
+    I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>, ArrowError&gt;&gt;,</div></h [...]
\ No newline at end of file
diff --git a/arrow_array/trait.RecordBatchWriter.html b/arrow_array/trait.RecordBatchWriter.html
index a769de8cec9..ba3b124a276 100644
--- a/arrow_array/trait.RecordBatchWriter.html
+++ b/arrow_array/trait.RecordBatchWriter.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for types that can write `RecordBatch`’s."><title>RecordBatchWriter in arrow_array - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraS [...]
     // Required methods
-    fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../arrow_schema/error/ [...]
-<span class="item-spacer"></span>    fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+    fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="record_batch/struct.RecordBatch.html" title="struct arrow_array::record_batch::RecordBatch">RecordBatch</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
+<span class="item-spacer"></span>    fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for types that can write <code>RecordBatch</code>’s.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.write" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#55">source</a><h4 class="code-header">fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="record_batch/struct.RecordBatch [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.close" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#58">source</a><h4 class="code-header">fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive. [...]
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.write" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#55">source</a><h4 class="code-header">fn <a href="#tymethod.write" class="fn">write</a>(&amp;mut self, batch: &amp;<a class="struct" href="record_batch/struct.RecordBatch [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.close" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#58">source</a><h4 class="code-header">fn <a href="#tymethod.close" class="fn">close</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive. [...]
 </div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../trait.impl/arrow_array/record_batch/trait.RecordBatchWriter.js" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/types/fn.validate_decimal_precision_and_scale.html b/arrow_array/types/fn.validate_decimal_precision_and_scale.html
index 31771d7bbe7..90870b0af0e 100644
--- a/arrow_array/types/fn.validate_decimal_precision_and_scale.html
+++ b/arrow_array/types/fn.validate_decimal_precision_and_scale.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Validate that `precision` and `scale` are valid for `T`"><title>validate_decimal_precision_and_scale in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Re [...]
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
     scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div clas [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Validate that <code>precision</code> and <code>scale</code> are valid for <code>T</code></p>
 <p>Returns an Error if:</p>
 <ul>
 <li><code>precision</code> is zero</li>
diff --git a/arrow_array/types/index.html b/arrow_array/types/index.html
index 3c30ff9cde1..95fe672ae02 100644
--- a/arrow_array/types/index.html
+++ b/arrow_array/types/index.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Zero-sized types used to parameterize generic array implementations"><title>arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2 [...]
 </div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="byte_view/index.html" title="mod arrow_array::types::byte_view">byte_view</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="mod" href="bytes/index.html" title="mod arrow_array::types::bytes">bytes</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div  [...]
 See <a href="https://arrow.apache.org/docs/format/Columnar.html">https://arrow.apache.org/docs/format/Columnar.html</a></div></li><li><div class="item-name"><a class="trait" href="trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a></div><div class="desc docblock-short">Trait for <a href="https://arrow.apache.org/docs/format/Columnar.html#fixed-size-primitive-layout">primitive values</a>, bridging the dynamic-typed nature of Arrow
-(via <a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a>) with the static-typed nature of rust types
+(via [<code>DataType</code>]) with the static-typed nature of rust types
 (<a href="arrow_buffer::ArrowNativeType"><code>ArrowNativeType</code></a>) for all types that implement <a href="arrow_buffer::ArrowNativeType"><code>ArrowNativeType</code></a>.</div></li><li><div class="item-name"><a class="trait" href="trait.ArrowTemporalType.html" title="trait arrow_array::types::ArrowTemporalType">ArrowTemporalType</a></div><div class="desc docblock-short">A subtype of primitive type that represents temporal values.</div></li><li><div class="item-name"><a class="trai [...]
 implementation across the various decimal types</div></li><li><div class="item-name"><a class="trait" href="trait.RunEndIndexType.html" title="trait arrow_array::types::RunEndIndexType">RunEndIndexType</a></div><div class="desc docblock-short">A subtype of primitive type that is used as run-ends index
 in <code>RunArray</code>.
diff --git a/arrow_array/types/struct.BinaryViewType.html b/arrow_array/types/struct.BinaryViewType.html
index 170971378ca..2affa37a22a 100644
--- a/arrow_array/types/struct.BinaryViewType.html
+++ b/arrow_array/types/struct.BinaryViewType.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`BinaryViewType` for string arrays"><title>BinaryViewType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Mediu [...]
 </div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ByteViewType-for-BinaryViewType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1580-1589">source</a><a href="#impl-ByteViewType-for-BinaryViewType" class="anchor">§</a><h3 class="code-header">impl [...]
 Utf8Array will have native type has &amp;str
-BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="trait.ByteViewType.html#associatedtype.Owned" class="associatedtype">Owned</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct. [...]
+BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="trait.ByteViewType.html#associatedtype.Owned" class="associatedtype">Owned</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct. [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Sealed-for-BinaryViewType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1530">source</a><a href="#impl-Sealed-for-BinaryViewType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="byte_view/trait.Sealed.html" title="trait arrow_array::types::byte_view::Sealed">Sealed</a> for <a class="struct" href="struct.BinaryViewTy [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/arrow_array/types/struct.BooleanType.html b/arrow_array/types/struct.BooleanType.html
index 8cbc4c22a70..2f126c8137d 100644
--- a/arrow_array/types/struct.BooleanType.html
+++ b/arrow_array/types/struct.BooleanType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A boolean datatype"><title>BooleanType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388. [...]
-</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-BooleanType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#45-48">source</a><a href="#impl-BooleanType" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.BooleanType.html" title="struct arro [...]
+</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-BooleanType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#45-48">source</a><a href="#impl-BooleanType" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.BooleanType.html" title="struct arro [...]
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-BooleanType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#42">source</a><a href="#impl-Debug-for-BooleanType" class="anchor">§</a><h3 class="code-header">impl <a c [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/arrow_array/types/struct.Date32Type.html b/arrow_array/types/struct.Date32Type.html
index aa29f555e20..b40ba1c818f 100644
--- a/arrow_array/types/struct.Date32Type.html
+++ b/arrow_array/types/struct.Date32Type.html
@@ -65,7 +65,7 @@
 <li><code>date</code> - The date on which to perform the operation</li>
 <li><code>delta</code> - The interval to subtract</li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Date32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#181-186">source</a><a href="#impl-ArrowPrimitiveType-for-Date32Type" class="anchor">§</a><h3  [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Date32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#181-186">source</a><a href="#impl-ArrowPrimitiveType-for-Date32Type" class="anchor">§</a><h3  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Date64Type.html b/arrow_array/types/struct.Date64Type.html
index 1d33797fcac..07cc2f159c7 100644
--- a/arrow_array/types/struct.Date64Type.html
+++ b/arrow_array/types/struct.Date64Type.html
@@ -65,7 +65,7 @@
 <li><code>date</code> - The date on which to perform the operation</li>
 <li><code>delta</code> - The interval to subtract</li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Date64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#187-192">source</a><a href="#impl-ArrowPrimitiveType-for-Date64Type" class="anchor">§</a><h3  [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Date64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#187-192">source</a><a href="#impl-ArrowPrimitiveType-for-Date64Type" class="anchor">§</a><h3  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Decimal128Type.html b/arrow_array/types/struct.Decimal128Type.html
index a0dfe740cc2..ac75784251f 100644
--- a/arrow_array/types/struct.Decimal128Type.html
+++ b/arrow_array/types/struct.Decimal128Type.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The decimal type for a Decimal128Array"><title>Decimal128Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-M [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Decimal128Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1319-1323">source</a><a href="#impl-ArrowPrimitiveType-for-Decimal128Type" class="anchor">§</a><h3 class="code- [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Decimal128Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1319-1323">source</a><a href="#impl-ArrowPrimitiveType-for-Decimal128Type" class="anchor">§</a><h3 class="code- [...]
     num: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class='docblock'>Validates that <code>value</code> contains no more than <code>precision</code [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class='docblock'>Validates that <code>value</code> contains no more than <code>precision</code> decimal digits</div></details></div></details><section id="impl-DecimalTypeSealed-for-Decimal128Type" class="impl">< [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Decimal256Type.html b/arrow_array/types/struct.Decimal256Type.html
index b379b15eb79..82f81a05b27 100644
--- a/arrow_array/types/struct.Decimal256Type.html
+++ b/arrow_array/types/struct.Decimal256Type.html
@@ -1,8 +1,8 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The decimal type for a Decimal256Array"><title>Decimal256Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-M [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Decimal256Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1349-1353">source</a><a href="#impl-ArrowPrimitiveType-for-Decimal256Type" class="anchor">§</a><h3 class="code- [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Decimal256Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1349-1353">source</a><a href="#impl-ArrowPrimitiveType-for-Decimal256Type" class="anchor">§</a><h3 class="code- [...]
     num: i256,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class='docblock'>Validates that <code>value</code> contains no more than <code>precision</code [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class='docblock'>Validates that <code>value</code> contains no more than <code>precision</code> decimal digits</div></details></div></details><section id="impl-DecimalTypeSealed-for-Decimal256Type" class="impl">< [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.DurationMicrosecondType.html b/arrow_array/types/struct.DurationMicrosecondType.html
index ff182b786e4..dce512f80a7 100644
--- a/arrow_array/types/struct.DurationMicrosecondType.html
+++ b/arrow_array/types/struct.DurationMicrosecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An elapsed time type in microseconds."><title>DurationMicrosecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,Fi [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationMicrosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#312-317">source</a><a href="#impl-ArrowPrimitiveType-for-DurationMicrosecondType" class="anchor">§</a> [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationMicrosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#312-317">source</a><a href="#impl-ArrowPrimitiveType-for-DurationMicrosecondType" class="anchor">§</a> [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.DurationMillisecondType.html b/arrow_array/types/struct.DurationMillisecondType.html
index 1aca7a2266a..f67d0c85508 100644
--- a/arrow_array/types/struct.DurationMillisecondType.html
+++ b/arrow_array/types/struct.DurationMillisecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An elapsed time type in milliseconds."><title>DurationMillisecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,Fi [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationMillisecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#306-311">source</a><a href="#impl-ArrowPrimitiveType-for-DurationMillisecondType" class="anchor">§</a> [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationMillisecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#306-311">source</a><a href="#impl-ArrowPrimitiveType-for-DurationMillisecondType" class="anchor">§</a> [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.DurationNanosecondType.html b/arrow_array/types/struct.DurationNanosecondType.html
index 2f11a56f60f..e124a7ac054 100644
--- a/arrow_array/types/struct.DurationNanosecondType.html
+++ b/arrow_array/types/struct.DurationNanosecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An elapsed time type in nanoseconds."><title>DurationNanosecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,Fira [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationNanosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#318-323">source</a><a href="#impl-ArrowPrimitiveType-for-DurationNanosecondType" class="anchor">§</a><h [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationNanosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#318-323">source</a><a href="#impl-ArrowPrimitiveType-for-DurationNanosecondType" class="anchor">§</a><h [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.DurationSecondType.html b/arrow_array/types/struct.DurationSecondType.html
index c8ae277f08e..aa9730a1314 100644
--- a/arrow_array/types/struct.DurationSecondType.html
+++ b/arrow_array/types/struct.DurationSecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An elapsed time type in seconds."><title>DurationSecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Med [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationSecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#300-305">source</a><a href="#impl-ArrowPrimitiveType-for-DurationSecondType" class="anchor">§</a><h3 class= [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-DurationSecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#300-305">source</a><a href="#impl-ArrowPrimitiveType-for-DurationSecondType" class="anchor">§</a><h3 class= [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Float16Type.html b/arrow_array/types/struct.Float16Type.html
index 431c062aa7c..1565ff5257b 100644
--- a/arrow_array/types/struct.Float16Type.html
+++ b/arrow_array/types/struct.Float16Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 16-bit floating point number type."><title>Float16Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Float16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#139-144">source</a><a href="#impl-ArrowPrimitiveType-for-Float16Type" class="anchor">§</a><h3 class="code-header"> [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Float16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#139-144">source</a><a href="#impl-ArrowPrimitiveType-for-Float16Type" class="anchor">§</a><h3 class="code-header"> [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Float32Type.html b/arrow_array/types/struct.Float32Type.html
index a985613b109..64efb6953b6 100644
--- a/arrow_array/types/struct.Float32Type.html
+++ b/arrow_array/types/struct.Float32Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 32-bit floating point number type."><title>Float32Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Float32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#145-150">source</a><a href="#impl-ArrowPrimitiveType-for-Float32Type" class="anchor">§</a><h3 class="code-header"> [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Float32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#145-150">source</a><a href="#impl-ArrowPrimitiveType-for-Float32Type" class="anchor">§</a><h3 class="code-header"> [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Float64Type.html b/arrow_array/types/struct.Float64Type.html
index 78c8be156ba..c6f1cd65fc0 100644
--- a/arrow_array/types/struct.Float64Type.html
+++ b/arrow_array/types/struct.Float64Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 64-bit floating point number type."><title>Float64Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Float64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#151-156">source</a><a href="#impl-ArrowPrimitiveType-for-Float64Type" class="anchor">§</a><h3 class="code-header"> [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Float64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#151-156">source</a><a href="#impl-ArrowPrimitiveType-for-Float64Type" class="anchor">§</a><h3 class="code-header"> [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.GenericBinaryType.html b/arrow_array/types/struct.GenericBinaryType.html
index 698f5284967..b06bcbc1c4f 100644
--- a/arrow_array/types/struct.GenericBinaryType.html
+++ b/arrow_array/types/struct.GenericBinaryType.html
@@ -3,10 +3,10 @@
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><a href="trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType"><code>ByteArrayType</code></a> for binary arrays</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.phantom" class="structfield section-header"><a href="#structfield.phantom" class="anchor field">§</a><code>phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;O&gt;</code></span><h2 id="trait-implementations" class="section-header">Trait Implement [...]
 Utf8Array will have native type has &amp;str
-BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="associatedconstant trait-impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1499">source</a><a href="#associatedconstant.PREFIX" class="anchor">§</a><h4 class="code-header">const <a href="trait.ByteArrayType.html#associatedconstant.PREFIX" class= [...]
+BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="associatedconstant trait-impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1499">source</a><a href="#associatedconstant.PREFIX" class="anchor">§</a><h4 class="code-header">const <a href="trait.ByteArrayType.html#associatedconstant.PREFIX" class= [...]
     offsets: &amp;OffsetBuffer&lt;Self::<a class="associatedtype" href="trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: &amp;Buffer,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class='docblock'>Verifies that every consecutive pair of <code>offsets</code> denotes a valid  [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class='docblock'>Verifies that every consecutive pair of <code>offsets</code> denotes a valid slice of <code>values</code></div></details></div></details><section id="impl-ByteArrayTypeSealed-for-GenericBinaryTyp [...]
     O: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a>,</div></h3></section><section id="impl-Send-for-GenericBinaryType%3CO%3E" class="impl"><a href="#impl-Send-for-GenericBinaryType%3CO%3E" class="anchor">§</a><h3 class="code-header">impl&lt;O&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker: [...]
     O: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h3></section><section id="impl-UnwindSafe-for-GenericBinaryType%3CO%3E" class="impl"><a href="#impl-UnwindSafe-for-GenericBinaryType%3CO%3E" class="anchor">§</a><h3 class="code-header">impl&lt;O&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::Unwin [...]
     O: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a>,</div></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src ri [...]
diff --git a/arrow_array/types/struct.GenericStringType.html b/arrow_array/types/struct.GenericStringType.html
index 77d6f46931f..728d18120d0 100644
--- a/arrow_array/types/struct.GenericStringType.html
+++ b/arrow_array/types/struct.GenericStringType.html
@@ -3,10 +3,10 @@
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><a href="trait.ByteArrayType.html" title="trait arrow_array::types::ByteArrayType"><code>ByteArrayType</code></a> for string arrays</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.phantom" class="structfield section-header"><a href="#structfield.phantom" class="anchor field">§</a><code>phantom: <a class="struct" href="https://doc.rust-lang.org/nightly/core/marker/struct.PhantomData.html" title="struct core::marker::PhantomData">PhantomData</a>&lt;O&gt;</code></span><h2 id="trait-implementations" class="section-header">Trait Implement [...]
 Utf8Array will have native type has &amp;str
-BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="associatedconstant trait-impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1453">source</a><a href="#associatedconstant.PREFIX" class="anchor">§</a><h4 class="code-header">const <a href="trait.ByteArrayType.html#associatedconstant.PREFIX" class= [...]
+BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="associatedconstant trait-impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1453">source</a><a href="#associatedconstant.PREFIX" class="anchor">§</a><h4 class="code-header">const <a href="trait.ByteArrayType.html#associatedconstant.PREFIX" class= [...]
     offsets: &amp;OffsetBuffer&lt;Self::<a class="associatedtype" href="trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: &amp;Buffer,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class='docblock'>Verifies that every consecutive pair of <code>offsets</code> denotes a valid  [...]
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class='docblock'>Verifies that every consecutive pair of <code>offsets</code> denotes a valid slice of <code>values</code></div></details></div></details><section id="impl-ByteArrayTypeSealed-for-GenericStringTyp [...]
     O: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a>,</div></h3></section><section id="impl-Send-for-GenericStringType%3CO%3E" class="impl"><a href="#impl-Send-for-GenericStringType%3CO%3E" class="anchor">§</a><h3 class="code-header">impl&lt;O&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker: [...]
     O: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h3></section><section id="impl-UnwindSafe-for-GenericStringType%3CO%3E" class="impl"><a href="#impl-UnwindSafe-for-GenericStringType%3CO%3E" class="anchor">§</a><h3 class="code-header">impl&lt;O&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::Unwin [...]
     O: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a>,</div></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src ri [...]
diff --git a/arrow_array/types/struct.Int16Type.html b/arrow_array/types/struct.Int16Type.html
index 947a50b8e2a..21005eb946c 100644
--- a/arrow_array/types/struct.Int16Type.html
+++ b/arrow_array/types/struct.Int16Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A signed 16-bit integer type."><title>Int16Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#97-102">source</a><a href="#impl-ArrowPrimitiveType-for-Int16Type" class="anchor">§</a><h3 class="code-header">impl  [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#97-102">source</a><a href="#impl-ArrowPrimitiveType-for-Int16Type" class="anchor">§</a><h3 class="code-header">impl  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Int32Type.html b/arrow_array/types/struct.Int32Type.html
index 83ae9aeae9a..2ae786eefa0 100644
--- a/arrow_array/types/struct.Int32Type.html
+++ b/arrow_array/types/struct.Int32Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A signed 32-bit integer type."><title>Int32Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#103-108">source</a><a href="#impl-ArrowPrimitiveType-for-Int32Type" class="anchor">§</a><h3 class="code-header">impl [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#103-108">source</a><a href="#impl-ArrowPrimitiveType-for-Int32Type" class="anchor">§</a><h3 class="code-header">impl [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Int64Type.html b/arrow_array/types/struct.Int64Type.html
index 53f5fb76c4b..e958ecd4e7f 100644
--- a/arrow_array/types/struct.Int64Type.html
+++ b/arrow_array/types/struct.Int64Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A signed 64-bit integer type."><title>Int64Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#109-114">source</a><a href="#impl-ArrowPrimitiveType-for-Int64Type" class="anchor">§</a><h3 class="code-header">impl [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#109-114">source</a><a href="#impl-ArrowPrimitiveType-for-Int64Type" class="anchor">§</a><h3 class="code-header">impl [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Int8Type.html b/arrow_array/types/struct.Int8Type.html
index b36481c773b..92ee3f2d666 100644
--- a/arrow_array/types/struct.Int8Type.html
+++ b/arrow_array/types/struct.Int8Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A signed 8-bit integer type."><title>Int8Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e49 [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int8Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#96">source</a><a href="#impl-ArrowPrimitiveType-for-Int8Type" class="anchor">§</a><h3 class="code-header">impl <a cla [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Int8Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#96">source</a><a href="#impl-ArrowPrimitiveType-for-Int8Type" class="anchor">§</a><h3 class="code-header">impl <a cla [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.IntervalDayTimeType.html b/arrow_array/types/struct.IntervalDayTimeType.html
index 5ff7ca77381..f8ebafc2c06 100644
--- a/arrow_array/types/struct.IntervalDayTimeType.html
+++ b/arrow_array/types/struct.IntervalDayTimeType.html
@@ -27,7 +27,7 @@ which can lead to surprising results. Please see the description of ordering on
 <ul>
 <li><code>i</code> - The IntervalDayTimeType to convert</li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-IntervalDayTimeType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#223-249">source</a><a href="#impl-ArrowPrimitiveType-for-IntervalDayTimeType" class= [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-IntervalDayTimeType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#223-249">source</a><a href="#impl-ArrowPrimitiveType-for-IntervalDayTimeType" class= [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.IntervalMonthDayNanoType.html b/arrow_array/types/struct.IntervalMonthDayNanoType.html
index 9e3ea07a48a..fa1d06729ae 100644
--- a/arrow_array/types/struct.IntervalMonthDayNanoType.html
+++ b/arrow_array/types/struct.IntervalMonthDayNanoType.html
@@ -50,7 +50,7 @@ is larger than the binary representation of 100 days.</p>
 <ul>
 <li><code>i</code> - The IntervalMonthDayNanoType to convert</li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-IntervalMonthDayNanoType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#250-299">source</a><a href="#impl-ArrowPrimitiveType-for-IntervalMonthDayNanoTy [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-IntervalMonthDayNanoType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#250-299">source</a><a href="#impl-ArrowPrimitiveType-for-IntervalMonthDayNanoTy [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.IntervalYearMonthType.html b/arrow_array/types/struct.IntervalYearMonthType.html
index a48f97f8d95..24e33395af7 100644
--- a/arrow_array/types/struct.IntervalYearMonthType.html
+++ b/arrow_array/types/struct.IntervalYearMonthType.html
@@ -16,7 +16,7 @@
 <ul>
 <li><code>i</code> - The IntervalYearMonthType::Native to convert</li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-IntervalYearMonthType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#217-222">source</a><a href="#impl-ArrowPrimitiveType-for-IntervalYearMonthType" cl [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-IntervalYearMonthType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#217-222">source</a><a href="#impl-ArrowPrimitiveType-for-IntervalYearMonthType" cl [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.StringViewType.html b/arrow_array/types/struct.StringViewType.html
index 45ab6dec926..23549d87cab 100644
--- a/arrow_array/types/struct.StringViewType.html
+++ b/arrow_array/types/struct.StringViewType.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`ByteViewType` for string arrays"><title>StringViewType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium- [...]
 </div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ByteViewType-for-StringViewType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1564-1574">source</a><a href="#impl-ByteViewType-for-StringViewType" class="anchor">§</a><h3 class="code-header">impl [...]
 Utf8Array will have native type has &amp;str
-BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="trait.ByteViewType.html#associatedtype.Owned" class="associatedtype">Owned</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/stru [...]
+BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></div></details><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="trait.ByteViewType.html#associatedtype.Owned" class="associatedtype">Owned</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/stru [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Sealed-for-StringViewType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1529">source</a><a href="#impl-Sealed-for-StringViewType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="byte_view/trait.Sealed.html" title="trait arrow_array::types::byte_view::Sealed">Sealed</a> for <a class="struct" href="struct.StringViewTy [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/arrow_array/types/struct.Time32MillisecondType.html b/arrow_array/types/struct.Time32MillisecondType.html
index ce248bb7660..2daeac13512 100644
--- a/arrow_array/types/struct.Time32MillisecondType.html
+++ b/arrow_array/types/struct.Time32MillisecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 32-bit time type representing the elapsed time since midnight in milliseconds."><title>Time32MillisecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,F [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time32MillisecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#199-204">source</a><a href="#impl-ArrowPrimitiveType-for-Time32MillisecondType" class="anchor">§</a><h3  [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time32MillisecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#199-204">source</a><a href="#impl-ArrowPrimitiveType-for-Time32MillisecondType" class="anchor">§</a><h3  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Time32SecondType.html b/arrow_array/types/struct.Time32SecondType.html
index e2adaec2c6c..c50c4343325 100644
--- a/arrow_array/types/struct.Time32SecondType.html
+++ b/arrow_array/types/struct.Time32SecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 32-bit time type representing the elapsed time since midnight in seconds."><title>Time32SecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Re [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time32SecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#193-198">source</a><a href="#impl-ArrowPrimitiveType-for-Time32SecondType" class="anchor">§</a><h3 class="cod [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time32SecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#193-198">source</a><a href="#impl-ArrowPrimitiveType-for-Time32SecondType" class="anchor">§</a><h3 class="cod [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Time64MicrosecondType.html b/arrow_array/types/struct.Time64MicrosecondType.html
index 76804dc42a7..c23c042c942 100644
--- a/arrow_array/types/struct.Time64MicrosecondType.html
+++ b/arrow_array/types/struct.Time64MicrosecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 64-bit time type representing the elapsed time since midnight in microseconds."><title>Time64MicrosecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,F [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time64MicrosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#205-210">source</a><a href="#impl-ArrowPrimitiveType-for-Time64MicrosecondType" class="anchor">§</a><h3  [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time64MicrosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#205-210">source</a><a href="#impl-ArrowPrimitiveType-for-Time64MicrosecondType" class="anchor">§</a><h3  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.Time64NanosecondType.html b/arrow_array/types/struct.Time64NanosecondType.html
index 678793aea5b..d3effb97d91 100644
--- a/arrow_array/types/struct.Time64NanosecondType.html
+++ b/arrow_array/types/struct.Time64NanosecondType.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A 64-bit time type representing the elapsed time since midnight in nanoseconds."><title>Time64NanosecondType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,Fir [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time64NanosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#211-216">source</a><a href="#impl-ArrowPrimitiveType-for-Time64NanosecondType" class="anchor">§</a><h3 cl [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-Time64NanosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#211-216">source</a><a href="#impl-ArrowPrimitiveType-for-Time64NanosecondType" class="anchor">§</a><h3 cl [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.TimestampMicrosecondType.html b/arrow_array/types/struct.TimestampMicrosecondType.html
index b17b6dcf8c7..1ea32f2dbd5 100644
--- a/arrow_array/types/struct.TimestampMicrosecondType.html
+++ b/arrow_array/types/struct.TimestampMicrosecondType.html
@@ -65,7 +65,7 @@
 <li><code>delta</code> - The interval to add</li>
 <li><code>tz</code> - The timezone in which to interpret <code>timestamp</code></li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampMicrosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#169-174">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampMicrosecondTy [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampMicrosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#169-174">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampMicrosecondTy [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.TimestampMillisecondType.html b/arrow_array/types/struct.TimestampMillisecondType.html
index 3fe3d10bf74..f3acbdce2cf 100644
--- a/arrow_array/types/struct.TimestampMillisecondType.html
+++ b/arrow_array/types/struct.TimestampMillisecondType.html
@@ -65,7 +65,7 @@
 <li><code>delta</code> - The interval to add</li>
 <li><code>tz</code> - The timezone in which to interpret <code>timestamp</code></li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampMillisecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#163-168">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampMillisecondTy [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampMillisecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#163-168">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampMillisecondTy [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.TimestampNanosecondType.html b/arrow_array/types/struct.TimestampNanosecondType.html
index cb17ef92a4e..7261a44a57a 100644
--- a/arrow_array/types/struct.TimestampNanosecondType.html
+++ b/arrow_array/types/struct.TimestampNanosecondType.html
@@ -65,7 +65,7 @@
 <li><code>delta</code> - The interval to add</li>
 <li><code>tz</code> - The timezone in which to interpret <code>timestamp</code></li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampNanosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#175-180">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampNanosecondType [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampNanosecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#175-180">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampNanosecondType [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.TimestampSecondType.html b/arrow_array/types/struct.TimestampSecondType.html
index b1816fc07c3..5a566013354 100644
--- a/arrow_array/types/struct.TimestampSecondType.html
+++ b/arrow_array/types/struct.TimestampSecondType.html
@@ -71,7 +71,7 @@
 <li><code>delta</code> - The interval to add</li>
 <li><code>tz</code> - The timezone in which to interpret <code>timestamp</code></li>
 </ul>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampSecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#157-162">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampSecondType" class= [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-TimestampSecondType" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#157-162">source</a><a href="#impl-ArrowPrimitiveType-for-TimestampSecondType" class= [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.UInt16Type.html b/arrow_array/types/struct.UInt16Type.html
index 07953646f5b..44d932a2119 100644
--- a/arrow_array/types/struct.UInt16Type.html
+++ b/arrow_array/types/struct.UInt16Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An unsigned 16-bit integer type."><title>UInt16Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#121-126">source</a><a href="#impl-ArrowPrimitiveType-for-UInt16Type" class="anchor">§</a><h3 class="code-header">im [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#121-126">source</a><a href="#impl-ArrowPrimitiveType-for-UInt16Type" class="anchor">§</a><h3 class="code-header">im [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.UInt32Type.html b/arrow_array/types/struct.UInt32Type.html
index 9a5f9551bdf..774a7b1e291 100644
--- a/arrow_array/types/struct.UInt32Type.html
+++ b/arrow_array/types/struct.UInt32Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An unsigned 32-bit integer type."><title>UInt32Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#127-132">source</a><a href="#impl-ArrowPrimitiveType-for-UInt32Type" class="anchor">§</a><h3 class="code-header">im [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#127-132">source</a><a href="#impl-ArrowPrimitiveType-for-UInt32Type" class="anchor">§</a><h3 class="code-header">im [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.UInt64Type.html b/arrow_array/types/struct.UInt64Type.html
index 822cc87cf12..46e662ce60e 100644
--- a/arrow_array/types/struct.UInt64Type.html
+++ b/arrow_array/types/struct.UInt64Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An unsigned 64-bit integer type."><title>UInt64Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#133-138">source</a><a href="#impl-ArrowPrimitiveType-for-UInt64Type" class="anchor">§</a><h3 class="code-header">im [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#133-138">source</a><a href="#impl-ArrowPrimitiveType-for-UInt64Type" class="anchor">§</a><h3 class="code-header">im [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/struct.UInt8Type.html b/arrow_array/types/struct.UInt8Type.html
index b360801afaa..0b3ed78b1c1 100644
--- a/arrow_array/types/struct.UInt8Type.html
+++ b/arrow_array/types/struct.UInt8Type.html
@@ -1,5 +1,5 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An unsigned 8-bit integer type."><title>UInt8Type in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a78 [...]
-</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt8Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#115-120">source</a><a href="#impl-ArrowPrimitiveType-for-UInt8Type" class="anchor">§</a><h3 class="code-header">impl [...]
+</div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ArrowPrimitiveType-for-UInt8Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#115-120">source</a><a href="#impl-ArrowPrimitiveType-for-UInt8Type" class="anchor">§</a><h3 class="code-header">impl [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
diff --git a/arrow_array/types/trait.ArrowPrimitiveType.html b/arrow_array/types/trait.ArrowPrimitiveType.html
index d3b52807412..1fdc8510df8 100644
--- a/arrow_array/types/trait.ArrowPrimitiveType.html
+++ b/arrow_array/types/trait.ArrowPrimitiveType.html
@@ -1,17 +1,17 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for primitive values, bridging the dynamic-typed nature of Arrow (via `DataType`) with the static-typed nature of rust types (`ArrowNativeType`) for all types that implement `ArrowNativeType`."><title>ArrowPrimitiveType in arrow_array::types - Rust</title><script>if(window.location [...]
     type <a href="#associatedtype.Native" class="associatedtype">Native</a>: <a class="trait" href="../arithmetic/trait.ArrowNativeTypeOp.html" title="trait arrow_array::arithmetic::ArrowNativeTypeOp">ArrowNativeTypeOp</a>;
 
-    const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>;
+    const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: DataType;
 
     // Provided methods
     fn <a href="#method.get_byte_width" class="fn">get_byte_width</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> { ... }
 <span class="item-spacer"></span>    fn <a href="#method.default_value" class="fn">default_value</a>() -&gt; Self::<a class="associatedtype" href="trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a> { ... }
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://arrow.apache.org/docs/format/Columnar.html#fixed-size-primitive-layout">primitive values</a>, bridging the dynamic-typed nature of Arrow
-(via <a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></a>) with the static-typed nature of rust types
+(via [<code>DataType</code>]) with the static-typed nature of rust types
 (<a href="arrow_buffer::ArrowNativeType"><code>ArrowNativeType</code></a>) for all types that implement <a href="arrow_buffer::ArrowNativeType"><code>ArrowNativeType</code></a>.</p>
 </div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Native" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#58">source</a><h4 class="code-header">type <a href="#associatedtype.Native" class="associatedtype">Native</a>: <a class="trait" href="../arithmetic/trait. [...]
-</div></details></div><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#61">source</a><h4 class="code-header">const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: <a class="enum" hre [...]
+</div></details></div><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#61">source</a><h4 class="code-header">const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: DataType</h4></sect [...]
 </div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.get_byte_width" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#65-67">source</a><h4 class="code-header">fn <a href="#method.get_byte_width" class="fn">get_byte_width</a>() -&gt; <a class="primitive" href="https://doc.rust-la [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.default_value" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#72-74">source</a><h4 class="code-header">fn <a href="#method.default_value" class="fn">default_value</a>() -&gt; Self::<a class="associatedtype" href="trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a></h4></section></summary><div cla [...]
 <p>This is useful for aggregate array ops like <code>sum()</code>, <code>mean()</code>.</p>
-</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
+</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
diff --git a/arrow_array/types/trait.ArrowTimestampType.html b/arrow_array/types/trait.ArrowTimestampType.html
index e9846965cd9..053c81e1114 100644
--- a/arrow_array/types/trait.ArrowTimestampType.html
+++ b/arrow_array/types/trait.ArrowTimestampType.html
@@ -1,14 +1,14 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A timestamp type allows us to create array builders that take a timestamp."><title>ArrowTimestampType in arrow_array::types - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-R [...]
-    const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: <a class="enum" href="../../arrow_schema/datatype/enum.TimeUnit.html" title="enum arrow_schema::datatype::TimeUnit">TimeUnit</a>;
+    const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: TimeUnit;
 
     // Required method
     fn <a href="#tymethod.make_value" class="fn">make_value</a>(naive: <a class="struct" href="https://docs.rs/chrono/latest/chrono/naive/datetime/struct.NaiveDateTime.html" title="struct chrono::naive::datetime::NaiveDateTime">NaiveDateTime</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;;
 
     // Provided method
-    fn <a href="#method.get_time_unit" class="fn">get_time_unit</a>() -&gt; <a class="enum" href="../../arrow_schema/datatype/enum.TimeUnit.html" title="enum arrow_schema::datatype::TimeUnit">TimeUnit</a> { ... }
+    fn <a href="#method.get_time_unit" class="fn">get_time_unit</a>() -&gt; TimeUnit { ... }
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A timestamp type allows us to create array builders that take a timestamp.</p>
-</div></details><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.UNIT" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#380">source</a><h4 class="code-header">const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: <a class="enum" href="../../arrow_schem [...]
+</div></details><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.UNIT" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#380">source</a><h4 class="code-header">const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: TimeUnit</h4></section></summary><div c [...]
 </div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.make_value" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#391">source</a><h4 class="code-header">fn <a href="#tymethod.make_value" class="fn">make_value</a>(naive: <a class="struct" href="https://docs.rs/chrono/latest/chr [...]
-<p>See <a href="../../arrow_schema/datatype/enum.DataType.html#variant.Timestamp" title="variant arrow_schema::datatype::DataType::Timestamp"><code>DataType::Timestamp</code></a> for more information on timezone handling</p>
-</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.get_time_unit" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#384-386">source</a><h4 class="code-header">fn <a href="#method.get_time_unit" class="fn">get_time_unit</a>() -&gt; <a class="enum" href="../../arrow_schema/dataty [...]
-</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
+<p>See [<code>DataType::Timestamp</code>] for more information on timezone handling</p>
+</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.get_time_unit" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#384-386">source</a><h4 class="code-header">fn <a href="#method.get_time_unit" class="fn">get_time_unit</a>() -&gt; TimeUnit</h4></section><span class="item-info"> [...]
+</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
diff --git a/arrow_array/types/trait.ByteArrayType.html b/arrow_array/types/trait.ByteArrayType.html
index 078dbe318fd..d1303bd8a1d 100644
--- a/arrow_array/types/trait.ByteArrayType.html
+++ b/arrow_array/types/trait.ByteArrayType.html
@@ -3,13 +3,13 @@
     type <a href="#associatedtype.Native" class="associatedtype">Native</a>: <a class="trait" href="bytes/trait.ByteArrayNativeType.html" title="trait arrow_array::types::bytes::ByteArrayNativeType">ByteArrayNativeType</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;Self::<a class="associatedtype" href="trait.ByteArrayType.html#associatedtype.Native" title="type arrow_array::types::ByteArrayType [...]
 
     const <a href="#associatedconstant.PREFIX" class="constant">PREFIX</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>;
-    const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>;
+    const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: DataType;
 
     // Required method
     fn <a href="#tymethod.validate" class="fn">validate</a>(
         offsets: &amp;OffsetBuffer&lt;Self::<a class="associatedtype" href="trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
         values: &amp;Buffer,
-    ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+    ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A trait over the variable-size byte array types</p>
 <p>See <a href="https://arrow.apache.org/docs/format/Columnar.html#variable-size-binary-layout">Variable Size Binary Layout</a></p>
 </div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Offset" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1429">source</a><h4 class="code-header">type <a href="#associatedtype.Offset" class="associatedtype">Offset</a>: <a class="trait" href="../array/list_arra [...]
@@ -17,9 +17,9 @@
 Utf8Array will have native type has &amp;str
 BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/primitive.u8.html" title="primitive u8">u8</a></p>
 </div></details></div><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1436">source</a><h4 class="code-header">const <a href="#associatedconstant.PREFIX" class="constant">PREFIX</a>: &amp;'static <a class="pri [...]
-</div></details><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1439">source</a><h4 class="code-header">const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock"><p>Datatype of array [...]
+</div></details><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1439">source</a><h4 class="code-header">const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: DataType</h4></section></summary><div class="docblock"><p>Datatype of array elements</p>
 </div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.validate" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1442">source</a><h4 class="code-header">fn <a href="#tymethod.validate" class="fn">validate</a>(
     offsets: &amp;OffsetBuffer&lt;Self::<a class="associatedtype" href="trait.ByteArrayType.html#associatedtype.Offset" title="type arrow_array::types::ByteArrayType::Offset">Offset</a>&gt;,
     values: &amp;Buffer,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Verifies that every consecutive pair of <code>offsets</code> denotes a val [...]
-</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Verifies that every consecutive pair of <code>offsets</code> denotes a valid slice of <code>values</code></p>
+</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
diff --git a/arrow_array/types/trait.ByteViewType.html b/arrow_array/types/trait.ByteViewType.html
index 34fb1b42859..9dd5b86031a 100644
--- a/arrow_array/types/trait.ByteViewType.html
+++ b/arrow_array/types/trait.ByteViewType.html
@@ -4,10 +4,10 @@
 
     const <a href="#associatedconstant.IS_UTF8" class="constant">IS_UTF8</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>;
     const <a href="#associatedconstant.PREFIX" class="constant">PREFIX</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>;
-    const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a> = _;
+    const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: DataType = _;
 
     // Required method
-    fn <a href="#tymethod.validate" class="fn">validate</a>(views: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>], buffers: &amp;[Buffer]) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.h [...]
+    fn <a href="#tymethod.validate" class="fn">validate</a>(views: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a>], buffers: &amp;[Buffer]) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A trait over the variable length bytes view array types</p>
 </div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Native" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1551">source</a><h4 class="code-header">type <a href="#associatedtype.Native" class="associatedtype">Native</a>: <a class="trait" href="bytes/trait.ByteAr [...]
 Utf8Array will have native type has &amp;str
@@ -15,6 +15,6 @@ BinaryArray will have type as <a href="https://doc.rust-lang.org/nightly/std/pri
 </div></details><details class="toggle" open><summary><section id="associatedtype.Owned" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1554">source</a><h4 class="code-header">type <a href="#associatedtype.Owned" class="associatedtype">Owned</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.htm [...]
 </div></details></div><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.IS_UTF8" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1536">source</a><h4 class="code-header">const <a href="#associatedconstant.IS_UTF8" class="constant">IS_UTF8</a>: <a class="primitive" hr [...]
 </div></details><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1546">source</a><h4 class="code-header">const <a href="#associatedconstant.PREFIX" class="constant">PREFIX</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section></summary><div class="docblock"><p>“Binary” or “String”, for use in displayed or err [...]
-</div></details></div><h2 id="provided-associated-consts" class="section-header">Provided Associated Constants<a href="#provided-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1539-1543">source</a><h4 class="code-header">const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: <a class="en [...]
-</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.validate" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1557">source</a><h4 class="code-header">fn <a href="#tymethod.validate" class="fn">validate</a>(views: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nig [...]
+</div></details></div><h2 id="provided-associated-consts" class="section-header">Provided Associated Constants<a href="#provided-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1539-1543">source</a><h4 class="code-header">const <a href="#associatedconstant.DATA_TYPE" class="constant">DATA_TYPE</a>: DataType = _ [...]
+</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.validate" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1557">source</a><h4 class="code-header">fn <a href="#tymethod.validate" class="fn">validate</a>(views: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nig [...]
 </div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
diff --git a/arrow_array/types/trait.DecimalType.html b/arrow_array/types/trait.DecimalType.html
index 79a34151c67..10cc31945ed 100644
--- a/arrow_array/types/trait.DecimalType.html
+++ b/arrow_array/types/trait.DecimalType.html
@@ -2,8 +2,8 @@
     const <a href="#associatedconstant.BYTE_LENGTH" class="constant">BYTE_LENGTH</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
     const <a href="#associatedconstant.MAX_PRECISION" class="constant">MAX_PRECISION</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>;
     const <a href="#associatedconstant.MAX_SCALE" class="constant">MAX_SCALE</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>;
-    const <a href="#associatedconstant.TYPE_CONSTRUCTOR" class="constant">TYPE_CONSTRUCTOR</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.fn.html">fn</a>(_: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>, _: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>) -&gt; <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::Dat [...]
-    const <a href="#associatedconstant.DEFAULT_TYPE" class="constant">DEFAULT_TYPE</a>: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>;
+    const <a href="#associatedconstant.TYPE_CONSTRUCTOR" class="constant">TYPE_CONSTRUCTOR</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.fn.html">fn</a>(_: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>, _: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>) -&gt; DataType;
+    const <a href="#associatedconstant.DEFAULT_TYPE" class="constant">DEFAULT_TYPE</a>: DataType;
     const <a href="#associatedconstant.PREFIX" class="constant">PREFIX</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>;
 
     // Required methods
@@ -11,7 +11,7 @@
 <span class="item-spacer"></span>    fn <a href="#tymethod.validate_decimal_precision" class="fn">validate_decimal_precision</a>(
         value: Self::<a class="associatedtype" href="trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>,
         precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
-    ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;;
+    ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A trait over the decimal types, used by <a href="../array/primitive_array/struct.PrimitiveArray.html" title="struct arrow_array::array::primitive_array::PrimitiveArray"><code>PrimitiveArray</code></a> to provide a generic
 implementation across the various decimal types</p>
 <p>Implemented by <a href="struct.Decimal128Type.html" title="struct arrow_array::types::Decimal128Type"><code>Decimal128Type</code></a> and <a href="struct.Decimal256Type.html" title="struct arrow_array::types::Decimal256Type"><code>Decimal256Type</code></a> for <a href="../array/primitive_array/type.Decimal128Array.html" title="type arrow_array::array::primitive_array::Decimal128Array"><code>Decimal128Array</code></a>
@@ -19,12 +19,12 @@ and <a href="../array/primitive_array/type.Decimal256Array.html" title="type arr
 </div></details><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.BYTE_LENGTH" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1237">source</a><h4 class="code-header">const <a href="#associatedconstant.BYTE_LENGTH" class="constant">BYTE_LENGTH</a>: <a class="primiti [...]
 </div></details><details class="toggle" open><summary><section id="associatedconstant.MAX_PRECISION" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1239">source</a><h4 class="code-header">const <a href="#associatedconstant.MAX_PRECISION" class="constant">MAX_PRECISION</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a></h4></section></summary><div class="docblock"><p>Maximum number of significant digits</p>
 </div></details><details class="toggle" open><summary><section id="associatedconstant.MAX_SCALE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1241">source</a><h4 class="code-header">const <a href="#associatedconstant.MAX_SCALE" class="constant">MAX_SCALE</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></h4></section></summary><div class="docblock"><p>Maximum no of digits after the decimal point (note the  [...]
-</div></details><details class="toggle" open><summary><section id="associatedconstant.TYPE_CONSTRUCTOR" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1243">source</a><h4 class="code-header">const <a href="#associatedconstant.TYPE_CONSTRUCTOR" class="constant">TYPE_CONSTRUCTOR</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.fn.html">fn</a>(_: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.ht [...]
-</div></details><details class="toggle" open><summary><section id="associatedconstant.DEFAULT_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1245">source</a><h4 class="code-header">const <a href="#associatedconstant.DEFAULT_TYPE" class="constant">DEFAULT_TYPE</a>: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a></h4></section></summary><div class="docblock"><p>Default  [...]
+</div></details><details class="toggle" open><summary><section id="associatedconstant.TYPE_CONSTRUCTOR" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1243">source</a><h4 class="code-header">const <a href="#associatedconstant.TYPE_CONSTRUCTOR" class="constant">TYPE_CONSTRUCTOR</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.fn.html">fn</a>(_: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.ht [...]
+</div></details><details class="toggle" open><summary><section id="associatedconstant.DEFAULT_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1245">source</a><h4 class="code-header">const <a href="#associatedconstant.DEFAULT_TYPE" class="constant">DEFAULT_TYPE</a>: DataType</h4></section></summary><div class="docblock"><p>Default values for [<code>DataType</code>]</p>
 </div></details><details class="toggle" open><summary><section id="associatedconstant.PREFIX" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1248">source</a><h4 class="code-header">const <a href="#associatedconstant.PREFIX" class="constant">PREFIX</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section></summary><div class="docblock"><p>“Decimal128” or “Decimal256”, for use in error me [...]
 </div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.format_decimal" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1251">source</a><h4 class="code-header">fn <a href="#tymethod.format_decimal" class="fn">format_decimal</a>(value: Self::<a class="associatedtype" href="trait. [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.validate_decimal_precision" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1254">source</a><h4 class="code-header">fn <a href="#tymethod.validate_decimal_precision" class="fn">validate_decimal_precision</a>(
     value: Self::<a class="associatedtype" href="trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>,
     precision: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>,
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&gt;</h4></section></summary><div class="docblock"><p>Validates that <code>value</code> contains no more than <code>precision</c [...]
-</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
+) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Validates that <code>value</code> contains no more than <code>precision</code> decimal digits</p>
+</div></details></div><h2 id="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section  [...]
\ No newline at end of file
diff --git a/index.html b/index.html
index 78bb6ae5d64..170d9b25f17 100644
--- a/index.html
+++ b/index.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="List of crates"><title>Index of crates</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-5 [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="List of crates"><title>Index of crates</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-5 [...]
\ No newline at end of file
diff --git a/parquet/arrow/arrow_reader/selection/struct.RowSelection.html b/parquet/arrow/arrow_reader/selection/struct.RowSelection.html
index c0594bbbeea..649f729f4b4 100644
--- a/parquet/arrow/arrow_reader/selection/struct.RowSelection.html
+++ b/parquet/arrow/arrow_reader/selection/struct.RowSelection.html
@@ -78,7 +78,7 @@ other:     NYNNNNNNY</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_reader/selection.rs.html#421-423">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>(&amp;self) -&gt; impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Ite [...]
 <a href="struct.RowSelection.html" title="struct parquet::arrow::arrow_reader::selection::RowSelection"><code>RowSelection</code></a>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.row_count" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_reader/selection.rs.html#426-428">source</a><h4 class="code-header">pub fn <a href="#method.row_count" class="fn">row_count</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the number o [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-RowSelection" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_reader/selection.rs.html#99">source</a><a href="#impl-Clone-for-RowSelection" class="anchor">§</a><h3 cl [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-RowSelection" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_reader/selection.rs.html#99">source</a><a href="#impl-Clone-for-RowSelection" class="anchor">§</a><h3 cl [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Eq-for-RowSelection" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_reader/selection.rs.html#99">source</a><a href="#impl-Eq-for-RowSelection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="struct. [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/arrow/arrow_reader/struct.RowSelection.html b/parquet/arrow/arrow_reader/struct.RowSelection.html
index ca0ba889144..65c0ae47700 100644
--- a/parquet/arrow/arrow_reader/struct.RowSelection.html
+++ b/parquet/arrow/arrow_reader/struct.RowSelection.html
@@ -78,7 +78,7 @@ other:     NYNNNNNNY</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.iter" class="method"><a class="src rightside" href="../../../src/parquet/arrow/arrow_reader/selection.rs.html#421-423">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fn">iter</a>(&amp;self) -&gt; impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = [...]
 <a href="selection/struct.RowSelection.html" title="struct parquet::arrow::arrow_reader::selection::RowSelection"><code>RowSelection</code></a>.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.row_count" class="method"><a class="src rightside" href="../../../src/parquet/arrow/arrow_reader/selection.rs.html#426-428">source</a><h4 class="code-header">pub fn <a href="#method.row_count" class="fn">row_count</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the number of s [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-RowSelection" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/arrow_reader/selection.rs.html#99">source</a><a href="#impl-Clone-for-RowSelection" class="anchor">§</a><h3 class [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-RowSelection" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/arrow_reader/selection.rs.html#99">source</a><a href="#impl-Clone-for-RowSelection" class="anchor">§</a><h3 class [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Eq-for-RowSelection" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/arrow_reader/selection.rs.html#99">source</a><a href="#impl-Eq-for-RowSelection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="selection/ [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/arrow/async_reader/store/index.html b/parquet/arrow/async_reader/store/index.html
index 638531c6113..0c38cd085e0 100644
--- a/parquet/arrow/async_reader/store/index.html
+++ b/parquet/arrow/async_reader/store/index.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `store` mod in crate `parquet`."><title>parquet::arrow::async_reader::store - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0 [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `store` mod in crate `parquet`."><title>parquet::arrow::async_reader::store - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0 [...]
\ No newline at end of file
diff --git a/parquet/arrow/async_reader/store/struct.ParquetObjectReader.html b/parquet/arrow/async_reader/store/struct.ParquetObjectReader.html
index f62c9964d49..30eefe5fdbd 100644
--- a/parquet/arrow/async_reader/store/struct.ParquetObjectReader.html
+++ b/parquet/arrow/async_reader/store/struct.ParquetObjectReader.html
@@ -22,11 +22,11 @@ print_parquet_metadata(<span class="kw-2">&amp;mut </span>stdout(), builder.meta
 see <a href="../metadata/fn.fetch_parquet_metadata.html" title="fn parquet::arrow::async_reader::metadata::fetch_parquet_metadata">fetch_parquet_metadata</a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_preload_column_index" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/async_reader/store.rs.html#88-93">source</a><h4 class="code-header">pub fn <a href="#method.with_preload_column_index" class="fn">with_preload_column_index</a>(self, preload_column_index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; Self</h4></ [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_preload_offset_index" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/async_reader/store.rs.html#96-101">source</a><h4 class="code-header">pub fn <a href="#method.with_preload_offset_index" class="fn">with_preload_offset_index</a>(self, preload_offset_index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; Self</h4>< [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncFileReader-for-ParquetObjectReader" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/async_reader/store.rs.html#104-142">source</a><a href="#impl-AsyncFileReader-for-ParquetObjec [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncFileReader-for-ParquetObjectReader" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/async_reader/store.rs.html#104-138">source</a><a href="#impl-AsyncFileReader-for-ParquetObjec [...]
     &amp;mut self,
     ranges: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;,
 ) -&gt; BoxFuture&lt;'_, <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Bytes&gt;&gt;&gt;<div class="where">where
-    Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Retrieve multiple byte ranges. The default implementation will call <code>get_bytes</code> sequentially</div></details><details class="toggle method-toggle" open><summary><section id="method.get_metadata" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/async_rea [...]
+    Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Retrieve multiple byte ranges. The default implementation will call <code>get_bytes</code> sequentially</div></details><details class="toggle method-toggle" open><summary><section id="method.get_metadata" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/async_rea [...]
 allowing fine-grained control over how metadata is sourced, in particular allowing
 for caching, pre-fetching, catalog metadata, etc…</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ParquetObjectReader" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/async_reader/store.rs.html#55">source</a><a href="#impl-Clone-for-ParquetObjectReader" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="t [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/arrow/async_reader/struct.ParquetObjectReader.html b/parquet/arrow/async_reader/struct.ParquetObjectReader.html
index e762e427af3..661552f2216 100644
--- a/parquet/arrow/async_reader/struct.ParquetObjectReader.html
+++ b/parquet/arrow/async_reader/struct.ParquetObjectReader.html
@@ -22,11 +22,11 @@ print_parquet_metadata(<span class="kw-2">&amp;mut </span>stdout(), builder.meta
 see <a href="metadata/fn.fetch_parquet_metadata.html" title="fn parquet::arrow::async_reader::metadata::fetch_parquet_metadata">fetch_parquet_metadata</a></p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_preload_column_index" class="method"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/store.rs.html#88-93">source</a><h4 class="code-header">pub fn <a href="#method.with_preload_column_index" class="fn">with_preload_column_index</a>(self, preload_column_index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; Self</h4></sec [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_preload_offset_index" class="method"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/store.rs.html#96-101">source</a><h4 class="code-header">pub fn <a href="#method.with_preload_offset_index" class="fn">with_preload_offset_index</a>(self, preload_offset_index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; Self</h4></se [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncFileReader-for-ParquetObjectReader" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/store.rs.html#104-142">source</a><a href="#impl-AsyncFileReader-for-ParquetObjectRe [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncFileReader-for-ParquetObjectReader" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/store.rs.html#104-138">source</a><a href="#impl-AsyncFileReader-for-ParquetObjectRe [...]
     &amp;mut self,
     ranges: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;,
 ) -&gt; BoxFuture&lt;'_, <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Bytes&gt;&gt;&gt;<div class="where">where
-    Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Retrieve multiple byte ranges. The default implementation will call <code>get_bytes</code> sequentially</div></details><details class="toggle method-toggle" open><summary><section id="method.get_metadata" class="method trait-impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader [...]
+    Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Retrieve multiple byte ranges. The default implementation will call <code>get_bytes</code> sequentially</div></details><details class="toggle method-toggle" open><summary><section id="method.get_metadata" class="method trait-impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader [...]
 allowing fine-grained control over how metadata is sourced, in particular allowing
 for caching, pre-fetching, catalog metadata, etc…</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ParquetObjectReader" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/store.rs.html#55">source</a><a href="#impl-Clone-for-ParquetObjectReader" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trai [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/arrow/async_reader/trait.AsyncFileReader.html b/parquet/arrow/async_reader/trait.AsyncFileReader.html
index 1ae775b0b06..57e4d8bbfe9 100644
--- a/parquet/arrow/async_reader/trait.AsyncFileReader.html
+++ b/parquet/arrow/async_reader/trait.AsyncFileReader.html
@@ -25,4 +25,4 @@ allowing fine-grained control over how metadata is sourced, in particular allowi
 for caching, pre-fetching, catalog metadata, etc…</div></details></div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-AsyncFileReader-for-Box%3Cdyn+AsyncFileReader%3E-1" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/mod.rs.html#149-161">source</a><a href="#impl-AsyncFileReader-for-Box% [...]
     &amp;mut self,
     ranges: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;,
-) -&gt; BoxFuture&lt;'_, <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Bytes&gt;&gt;&gt;</h4></section><section id="method.get_metadata-1" class="method trait-impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/mod.rs.html#158-160">source</a><a href="#method.get_metadata-1" class=" [...]
\ No newline at end of file
+) -&gt; BoxFuture&lt;'_, <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Bytes&gt;&gt;&gt;</h4></section><section id="method.get_metadata-1" class="method trait-impl"><a class="src rightside" href="../../../src/parquet/arrow/async_reader/mod.rs.html#158-160">source</a><a href="#method.get_metadata-1" class=" [...]
\ No newline at end of file
diff --git a/parquet/basic/enum.ColumnOrder.html b/parquet/basic/enum.ColumnOrder.html
index 8a2d197e1c0..2db7cbf1ebe 100644
--- a/parquet/basic/enum.ColumnOrder.html
+++ b/parquet/basic/enum.ColumnOrder.html
@@ -19,7 +19,7 @@ Sort order is always SIGNED.</p>
     physical_type: <a class="enum" href="enum.Type.html" title="enum parquet::basic::Type">Type</a>,
 ) -&gt; <a class="enum" href="enum.SortOrder.html" title="enum parquet::basic::SortOrder">SortOrder</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.get_default_sort_order" class="method"><a class="src rightside" href="../../src/parquet/basic.rs.html#568-584">source</a><h4 class="code-header">fn <a href="#method.get_default_sort_order" class="fn">get_default_sort_order</a>(physical_type: <a class="enum" href="enum.Type.html" title="enum parquet::b [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.sort_order" class="method"><a class="src rightside" href="../../src/parquet/basic.rs.html#587-592">source</a><h4 class="code-header">pub fn <a href="#method.sort_order" class="fn">sort_order</a>(&amp;self) -&gt; <a class="enum" href="enum.SortOrder.html" title="enum parquet::basic::SortOrder">SortOrder</a></h4></section></summary><div class="docblock"><p>Returns sort order associated with this column  [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ColumnOrder" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#486">source</a><a href="#impl-Clone-for-ColumnOrder" class="anchor">§</a><h3 class="code-header">impl <a clas [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ColumnOrder" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#486">source</a><a href="#impl-Clone-for-ColumnOrder" class="anchor">§</a><h3 class="code-header">impl <a clas [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Copy-for-ColumnOrder" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#486">source</a><a href="#impl-Copy-for-ColumnOrder" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.ColumnOrder.html"  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/basic/enum.Compression.html b/parquet/basic/enum.Compression.html
index 4b0b03164da..13bf5fd78f1 100644
--- a/parquet/basic/enum.Compression.html
+++ b/parquet/basic/enum.Compression.html
@@ -19,7 +19,7 @@ to provide a good balance of compression, performance, and ecosystem support. Al
 <a href="enum.Compression.html#variant.LZ4_RAW" title="variant parquet::basic::Compression::LZ4_RAW"><code>Compression::LZ4_RAW</code></a> provides much faster decompression speeds, at the cost of typically
 worse compression ratios. However, it is not as widely supported by the ecosystem, with the
 Hadoop ecosystem historically favoring the non-standard and now deprecated <a href="enum.Compression.html#variant.LZ4" title="variant parquet::basic::Compression::LZ4"><code>Compression::LZ4</code></a>.</p>
-</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.UNCOMPRESSED" class="variant"><a href="#variant.UNCOMPRESSED" class="anchor">§</a><h3 class="code-header">UNCOMPRESSED</h3></section><section id="variant.SNAPPY" class="variant"><a href="#variant.SNAPPY" class="anchor">§</a><h3 class="code-header">SNAPPY</h3></section><section id="variant.GZIP" class="variant"><a href="#variant. [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.UNCOMPRESSED" class="variant"><a href="#variant.UNCOMPRESSED" class="anchor">§</a><h3 class="code-header">UNCOMPRESSED</h3></section><section id="variant.SNAPPY" class="variant"><a href="#variant.SNAPPY" class="anchor">§</a><h3 class="code-header">SNAPPY</h3></section><section id="variant.GZIP" class="variant"><a href="#variant. [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CCompressionCodec%3E-for-Compression" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#957-978">source</a><a href="#impl-TryFrom%3CCompressionCodec%3E-for-Compression" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/con [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/basic/enum.ConvertedType.html b/parquet/basic/enum.ConvertedType.html
index 0b40f01e51a..2ac7f1a2a68 100644
--- a/parquet/basic/enum.ConvertedType.html
+++ b/parquet/basic/enum.ConvertedType.html
@@ -70,7 +70,7 @@ the number of months associated with the duration, the second identifies
 the number of days associated with the duration and the third identifies
 the number of milliseconds associated with the provided duration.
 This duration of time is independent of any particular timezone or date.</p>
-</div></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ConvertedType" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#68">source</a><a href="#impl-Clone-for-ConvertedType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https:/ [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ConvertedType" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#68">source</a><a href="#impl-Clone-for-ConvertedType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https:/ [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3COption%3CConvertedType%3E%3E-for-ConvertedType" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#682-720">source</a><a href="#impl-TryFrom%3COption%3CConvertedType%3E%3E-for-ConvertedType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lan [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/basic/enum.LogicalType.html b/parquet/basic/enum.LogicalType.html
index 08a5bfcc64f..10df5b5786a 100644
--- a/parquet/basic/enum.LogicalType.html
+++ b/parquet/basic/enum.LogicalType.html
@@ -29,7 +29,7 @@
 <p>This is an <em>entirely new</em> struct as of version
 4.0.0. The struct previously named <code>LogicalType</code> was renamed to
 <a href="enum.ConvertedType.html" title="enum parquet::basic::ConvertedType"><code>ConvertedType</code></a>. Please see the README.md for more details.</p>
-</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.String" class="variant"><a href="#variant.String" class="anchor">§</a><h3 class="code-header">String</h3></section><section id="variant.Map" class="variant"><a href="#variant.Map" class="anchor">§</a><h3 class="code-header">Map</h3></section><section id="variant.List" class="variant"><a href="#variant.List" class="anchor">§</a>< [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.String" class="variant"><a href="#variant.String" class="anchor">§</a><h3 class="code-header">String</h3></section><section id="variant.Map" class="variant"><a href="#variant.Map" class="anchor">§</a><h3 class="code-header">Map</h3></section><section id="variant.List" class="variant"><a href="#variant.List" class="anchor">§</a>< [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Eq-for-LogicalType" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#170">source</a><a href="#impl-Eq-for-LogicalType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="enum" href="enum.LogicalType.html" title="enum parq [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/basic/enum.Repetition.html b/parquet/basic/enum.Repetition.html
index af795df4eaf..10ab535cfd8 100644
--- a/parquet/basic/enum.Repetition.html
+++ b/parquet/basic/enum.Repetition.html
@@ -6,7 +6,7 @@
 </div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.REQUIRED" class="variant"><a href="#variant.REQUIRED" class="anchor">§</a><h3 class="code-header">REQUIRED</h3></section><div class="docblock"><p>Field is required (can not be null) and each record has exactly 1 value.</p>
 </div><section id="variant.OPTIONAL" class="variant"><a href="#variant.OPTIONAL" class="anchor">§</a><h3 class="code-header">OPTIONAL</h3></section><div class="docblock"><p>Field is optional (can be null) and each record has 0 or 1 values.</p>
 </div><section id="variant.REPEATED" class="variant"><a href="#variant.REPEATED" class="anchor">§</a><h3 class="code-header">REPEATED</h3></section><div class="docblock"><p>Field is repeated and can contain 0 or more values.</p>
-</div></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Repetition" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#204">source</a><a href="#impl-Clone-for-Repetition" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc. [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Repetition" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#204">source</a><a href="#impl-Clone-for-Repetition" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc. [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CFieldRepetitionType%3E-for-Repetition" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#886-902">source</a><a href="#impl-TryFrom%3CFieldRepetitionType%3E-for-Repetition" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/data_type/struct.ByteArray.html b/parquet/data_type/struct.ByteArray.html
index eaef43f96c6..40447641476 100644
--- a/parquet/data_type/struct.ByteArray.html
+++ b/parquet/data_type/struct.ByteArray.html
@@ -8,7 +8,7 @@ Value is backed by a byte buffer.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.data" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#162-167">source</a><h4 class="code-header">pub fn <a href="#method.data" class="fn">data</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]">ⓘ</a></h4></section></summary><div class="docblock"> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.set_data" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#171-173">source</a><h4 class="code-header">pub fn <a href="#method.set_data" class="fn">set_data</a>(&amp;mut self, data: Bytes)</h4></section></summary><div class="docblock"><p>Set data from another byte buffer.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#177-184">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, start: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) - [...]
-</div></details><section id="method.as_utf8" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#186-192">source</a><h4 class="code-header">pub fn <a href="#method.as_utf8" class="fn">as_utf8</a>(&amp;self) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;</h4></section></div></details></div><h2 id="tr [...]
+</div></details><section id="method.as_utf8" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#186-192">source</a><h4 class="code-header">pub fn <a href="#method.as_utf8" class="fn">as_utf8</a>(&amp;self) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;</h4></section></div></details></div><h2 id="tr [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParquetValueType-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#889-971">source</a><a href="#impl-ParquetValueType-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="t [...]
     values: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a>,
     writer: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut W</a>,
@@ -24,10 +24,10 @@ sufficient, and should not be overridden without very good reason.</div></detail
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" cl [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CByteArray%3E-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#305-309">source</a><a href="#impl-PartialOrd%3CByteArray%3E-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/ [...]
 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt-1" class="anchor">§</a><h4 class="code-header" [...]
-operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#299-303">source</a><a href="#impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait [...]
-operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn  [...]
-operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#122-138">source</a><a href="#impl-PartialOrd-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core [...]
+operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#299-303">source</a><a href="#impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait [...]
 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt-2" class="anchor">§</a><h4 class="code-header" [...]
+operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#122-138">source</a><a href="#impl-PartialOrd-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core [...]
+operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn  [...]
 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SliceAsBytes-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#532">source</a><a href="#impl-SliceAsBytes-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SliceAsBytes.html" title="trait  [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/parquet/data_type/struct.FixedLenByteArray.html b/parquet/data_type/struct.FixedLenByteArray.html
index 0cd2772ef9f..0f53c720ce5 100644
--- a/parquet/data_type/struct.FixedLenByteArray.html
+++ b/parquet/data_type/struct.FixedLenByteArray.html
@@ -14,7 +14,7 @@ level logical types, removing the data-hazard from all decoding and encoding pat
 </div></details><details class="toggle method-toggle" open><summary><section id="method.data" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#162-167">source</a><h4 class="code-header">pub fn <a href="#method.data" class="fn">data</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]">ⓘ</a></h4></section></summary><div class="docblock"> [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.set_data" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#171-173">source</a><h4 class="code-header">pub fn <a href="#method.set_data" class="fn">set_data</a>(&amp;mut self, data: Bytes)</h4></section></summary><div class="docblock"><p>Set data from another byte buffer.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.slice" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#177-184">source</a><h4 class="code-header">pub fn <a href="#method.slice" class="fn">slice</a>(&amp;self, start: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) - [...]
-</div></details><section id="method.as_utf8" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#186-192">source</a><h4 class="code-header">pub fn <a href="#method.as_utf8" class="fn">as_utf8</a>(&amp;self) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;</h4></section></div><h2 id="trait-implementati [...]
+</div></details><section id="method.as_utf8" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#186-192">source</a><h4 class="code-header">pub fn <a href="#method.as_utf8" class="fn">as_utf8</a>(&amp;self) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;</h4></section></div><h2 id="trait-implementati [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParquetValueType-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#973-1057">source</a><a href="#impl-ParquetValueType-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header" [...]
     values: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a>,
     writer: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut W</a>,
@@ -22,18 +22,18 @@ level logical types, removing the data-hazard from all decoding and encoding pat
 ) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class='docblock'>Encode the value directly from a higher level encoder</div></details><details class="toggle method-toggle" open><summary><section id="method.set_data-1" class="method trait-impl"><a class="src rightside" href="../../src/parquet/data_type.rs [...]
     buffer: &amp;mut <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a>,
     decoder: &amp;mut PlainDecoderDetails,
-) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;</h4></section></summary><div class='docblock'>Decode the value from a given buffer for a higher level decoder</div></details><section id="method.skip" class="method trait-impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#1021-1041">source</a><a href="#method. [...]
-by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
+) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;</h4></section></summary><div class='docblock'>Decode the value from a given buffer for a higher level decoder</div></details><section id="method.skip" class="method trait-impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#1021-1041">source</a><a href="#method. [...]
+by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" cl [...]
 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CFixedLenByteArray%3E-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#281-285">source</a><a href="#impl-PartialEq%3CFixedLenByteArray%3E-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/co [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" cl [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#269-273">source</a><a href="#impl-PartialEq-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" t [...]
-by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" cl [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CByteArray%3E-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#305-309">source</a><a href="#impl-PartialOrd%3CByteArray%3E-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/ [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#269-273">source</a><a href="#impl-PartialEq-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" t [...]
+by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CByteArray%3E-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#305-309">source</a><a href="#impl-PartialOrd%3CByteArray%3E-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/ [...]
+operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt-1" class="anchor">§</a><h4 class="code-header" [...]
+operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#299-303">source</a><a href="#impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait [...]
 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt-2" class="anchor">§</a><h4 class="code-header" [...]
-operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#299-303">source</a><a href="#impl-PartialOrd%3CFixedLenByteArray%3E-for-ByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait [...]
+operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#293-297">source</a><a href="#impl-PartialOrd-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang. [...]
 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn  [...]
-operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#293-297">source</a><a href="#impl-PartialOrd-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang. [...]
-operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1215">source</a></span><a href="#method.gt-1" class="anchor">§</a><h4 class="code-header" [...]
 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SliceAsBytes-for-FixedLenByteArray" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#533">source</a><a href="#impl-SliceAsBytes-for-FixedLenByteArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SliceAsBytes.htm [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/parquet/data_type/struct.Int96.html b/parquet/data_type/struct.Int96.html
index 90cebeb33b0..a502115ea7d 100644
--- a/parquet/data_type/struct.Int96.html
+++ b/parquet/data_type/struct.Int96.html
@@ -9,7 +9,7 @@ The type only takes 12 bytes, without extra padding.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_nanos" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#68-73">source</a><h4 class="code-header">pub fn <a href="#method.to_nanos" class="fn">to_nanos</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Converts this INT96 into an i64 representing the numbe [...]
 <p>Will wrap around on overflow</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_seconds_and_nanos" class="method"><a class="src rightside" href="../../src/parquet/data_type.rs.html#76-84">source</a><h4 class="code-header">pub fn <a href="#method.to_seconds_and_nanos" class="fn">to_seconds_and_nanos</a>(&amp;self) -&gt; (<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/ [...]
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsBytes-for-Int96" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#541-545">source</a><a href="#impl-AsBytes-for-Int96" class="anchor">§</a><h3 class="code-header">impl <a clas [...]
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsBytes-for-Int96" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#541-545">source</a><a href="#impl-AsBytes-for-Int96" class="anchor">§</a><h3 class="code-header">impl <a clas [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParquetValueType-for-Int96" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#802-887">source</a><a href="#impl-ParquetValueType-for-Int96" class="anchor">§</a><h3 class="code-header">impl <a class="trait" hr [...]
     values: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a>,
     writer: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut W</a>,
diff --git a/parquet/errors/enum.ParquetError.html b/parquet/errors/enum.ParquetError.html
index 639b5540758..3a4d274733d 100644
--- a/parquet/errors/enum.ParquetError.html
+++ b/parquet/errors/enum.ParquetError.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Parquet error enumeration"><title>ParquetError in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Parquet error enumeration"><title>ParquetError in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970 [...]
     General(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>),
     NYI(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>),
     EOF(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>),
@@ -16,13 +16,13 @@ decode.</p>
 </div><section id="variant.ArrowError" class="variant"><a href="#variant.ArrowError" class="anchor">§</a><h3 class="code-header">ArrowError(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</h3></section><div class="docblock"><p>Arrow error.
 Returned when reading into arrow or writing from arrow.</p>
 </div><section id="variant.IndexOutOfBound" class="variant"><a href="#variant.IndexOutOfBound" class="anchor">§</a><h3 class="code-header">IndexOutOfBound(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</h3></section><section id="variant.External" class="variant"><a href="#variant.External" class="anchor">§</a><h3 class="code-header">External [...]
-</div></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-ParquetError" class="impl"><a class="src rightside" href="../../src/parquet/errors.rs.html#29">source</a><a href="#impl-Debug-for-ParquetError" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https:// [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-ParquetError" class="impl"><a class="src rightside" href="../../src/parquet/errors.rs.html#29">source</a><a href="#impl-Debug-for-ParquetError" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https:// [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/error/trait.Error.html" title="trait core::error::Error">Error</a> + 'static,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_error_source" class="method trait-impl"><a href="#method.as_error_source" class="anchor">§</a><h4 class="code-header">fn <a class="fn">as_error_source</a>(&amp;self) -&gt; &amp;(dyn <a class="trait" href="https://doc [...]
 to benefit from Rust’s automatic dereferencing of method
 receivers.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for  [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
-    T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
+    T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
 </div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#748-750">source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div  [...]
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#758">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href= [...]
 <p>That is, this conversion is whatever the implementation of
diff --git a/parquet/errors/index.html b/parquet/errors/index.html
index ae2b6403d31..1c7be0b96ef 100644
--- a/parquet/errors/index.html
+++ b/parquet/errors/index.html
@@ -1,2 +1,2 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Common Parquet errors and macros."><title>parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.wof [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Common Parquet errors and macros."><title>parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.wof [...]
 </div></details><h2 id="macros" class="section-header">Macros<a href="#macros" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="macro" href="macro.arrow_err.html" title="macro parquet::errors::arrow_err">arrow_err</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="macro" href="macro.eof_err.html" title="macro parquet::errors::eof_err">eof_err</a><span title="Restricted Visibility">&nbsp;🔒</span> </div> [...]
\ No newline at end of file
diff --git a/parquet/errors/macro.arrow_err.html b/parquet/errors/macro.arrow_err.html
index b25bea5ce61..61efc367217 100644
--- a/parquet/errors/macro.arrow_err.html
+++ b/parquet/errors/macro.arrow_err.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `arrow_err` macro in crate `parquet`."><title>arrow_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf08 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `arrow_err` macro in crate `parquet`."><title>arrow_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf08 [...]
     (<span class="macro-nonterminal">$fmt</span>:expr) =&gt; { ... };
     (<span class="macro-nonterminal">$fmt</span>:expr, $(<span class="macro-nonterminal">$args</span>:expr),<span class="kw-2">*</span>) =&gt; { ... };
     (<span class="macro-nonterminal">$e</span>:expr, <span class="macro-nonterminal">$fmt</span>:expr) =&gt; { ... };
diff --git a/parquet/errors/macro.eof_err.html b/parquet/errors/macro.eof_err.html
index ab5447f83ca..543b9a58a7b 100644
--- a/parquet/errors/macro.eof_err.html
+++ b/parquet/errors/macro.eof_err.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `eof_err` macro in crate `parquet`."><title>eof_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `eof_err` macro in crate `parquet`."><title>eof_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
     (<span class="macro-nonterminal">$fmt</span>:expr) =&gt; { ... };
     (<span class="macro-nonterminal">$fmt</span>:expr, $(<span class="macro-nonterminal">$args</span>:expr),<span class="kw-2">*</span>) =&gt; { ... };
 }</pre></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/errors/macro.general_err.html b/parquet/errors/macro.general_err.html
index 110380f95bc..54229af7a17 100644
--- a/parquet/errors/macro.general_err.html
+++ b/parquet/errors/macro.general_err.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `general_err` macro in crate `parquet`."><title>general_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `general_err` macro in crate `parquet`."><title>general_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141 [...]
     (<span class="macro-nonterminal">$fmt</span>:expr) =&gt; { ... };
     (<span class="macro-nonterminal">$fmt</span>:expr, $(<span class="macro-nonterminal">$args</span>:expr),<span class="kw-2">*</span>) =&gt; { ... };
     (<span class="macro-nonterminal">$e</span>:expr, <span class="macro-nonterminal">$fmt</span>:expr) =&gt; { ... };
diff --git a/parquet/errors/macro.nyi_err.html b/parquet/errors/macro.nyi_err.html
index 7b7127e5450..ae52b255458 100644
--- a/parquet/errors/macro.nyi_err.html
+++ b/parquet/errors/macro.nyi_err.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `nyi_err` macro in crate `parquet`."><title>nyi_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `nyi_err` macro in crate `parquet`."><title>nyi_err in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ff [...]
     (<span class="macro-nonterminal">$fmt</span>:expr) =&gt; { ... };
     (<span class="macro-nonterminal">$fmt</span>:expr, $(<span class="macro-nonterminal">$args</span>:expr),<span class="kw-2">*</span>) =&gt; { ... };
 }</pre></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/errors/type.Result.html b/parquet/errors/type.Result.html
index 9b5915ffe0c..de969276300 100644
--- a/parquet/errors/type.Result.html
+++ b/parquet/errors/type.Result.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A specialized `Result` for Parquet errors."><title>Result in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A specialized `Result` for Parquet errors."><title>Result in parquet::errors - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8 [...]
 </div></details><h2 id="aliased-type" class="section-header">Aliased Type<a href="#aliased-type" class="anchor">§</a></h2><pre class="rust item-decl"><code>enum Result&lt;T, E = <a class="enum" href="enum.ParquetError.html" title="enum parquet::errors::ParquetError">ParquetError</a>&gt; {
     Ok(T),
     Err(E),
diff --git a/parquet/file/serialized_reader/struct.SerializedFileReader.html b/parquet/file/serialized_reader/struct.SerializedFileReader.html
index 026733e5d36..da5a886687c 100644
--- a/parquet/file/serialized_reader/struct.SerializedFileReader.html
+++ b/parquet/file/serialized_reader/struct.SerializedFileReader.html
@@ -9,7 +9,7 @@ Returns error if Parquet file does not exist or is corrupt.</p>
 Returns error if Parquet file does not exist or is corrupt.</p>
 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-FileReader-for-SerializedFileReader%3CR%3E" class="impl"><a class="src rightside" href="../../../src/parquet/file/serialized_reader.rs.html#257-282">source</a><a href="#impl-FileReader-for-SerializedFileReade [...]
 using the full file schema over all row groups.</p>
-</div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl"><a href="#associatedtype.Item" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item" class="associatedtype">Item</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a [...]
+</div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl"><a href="#associatedtype.Item" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item" class="associatedtype">Item</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a [...]
     R: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a>,</div></h3></section><section id="impl-Send-for-SerializedFileReader%3CR%3E" class="impl"><a href="#impl-Send-for-SerializedFileReader%3CR%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::m [...]
     R: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a>,</div></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a clas [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
diff --git a/parquet/format/enum.LogicalType.html b/parquet/format/enum.LogicalType.html
index c3e4421e746..ac9a2a15797 100644
--- a/parquet/format/enum.LogicalType.html
+++ b/parquet/format/enum.LogicalType.html
@@ -13,7 +13,7 @@
     BSON(<a class="struct" href="struct.BsonType.html" title="struct parquet::format::BsonType">BsonType</a>),
     UUID(<a class="struct" href="struct.UUIDType.html" title="struct parquet::format::UUIDType">UUIDType</a>),
     FLOAT16(<a class="struct" href="struct.Float16Type.html" title="struct parquet::format::Float16Type">Float16Type</a>),
-</details>}</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.STRING" class="variant"><a href="#variant.STRING" class="anchor">§</a><h3 class="code-header">STRING(<a class="struct" href="struct.StringType.html" title="struct parquet::format::StringType">StringType</a>)</h3></section><section id="variant.MAP" class="variant"><a href="#variant.MAP" class="anchor">§</a><h3 class="code [...]
+</details>}</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.STRING" class="variant"><a href="#variant.STRING" class="anchor">§</a><h3 class="code-header">STRING(<a class="struct" href="struct.StringType.html" title="struct parquet::format::StringType">StringType</a>)</h3></section><section id="variant.MAP" class="variant"><a href="#variant.MAP" class="anchor">§</a><h3 class="code [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.BoundaryOrder.html b/parquet/format/struct.BoundaryOrder.html
index 9e6d478a459..137bd73f809 100644
--- a/parquet/format/struct.BoundaryOrder.html
+++ b/parquet/format/struct.BoundaryOrder.html
@@ -1,6 +1,6 @@
 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Enum to annotate whether lists of min/max elements inside ColumnIndex are ordered and if so, in which direction."><title>BoundaryOrder in parquet::format - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98ef [...]
 are ordered and if so, in which direction.</p>
-</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
+</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.CompressionCodec.html b/parquet/format/struct.CompressionCodec.html
index ea39ad07059..005c4473dc6 100644
--- a/parquet/format/struct.CompressionCodec.html
+++ b/parquet/format/struct.CompressionCodec.html
@@ -3,7 +3,7 @@
 Codec support may vary between readers based on the format version and
 libraries available at runtime.</p>
 <p>See Compression.md for a detailed specification of these algorithms.</p>
-</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
+</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.ConvertedType.html b/parquet/format/struct.ConvertedType.html
index 0cacba8fc80..527f26e6e13 100644
--- a/parquet/format/struct.ConvertedType.html
+++ b/parquet/format/struct.ConvertedType.html
@@ -54,7 +54,7 @@ the second identifies the number of days associated with the duration
 and the third identifies the number of milliseconds associated with
 the provided duration.  This duration of time is independent of any
 particular timezone or date.</p>
-</div></details><section id="associatedconstant.ENUM_VALUES" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#201-224">source</a><h4 class="code-header">pub const <a href="#associatedconstant.ENUM_VALUES" class="constant">ENUM_VALUES</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a> = _</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait  [...]
+</div></details><section id="associatedconstant.ENUM_VALUES" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#201-224">source</a><h4 class="code-header">pub const <a href="#associatedconstant.ENUM_VALUES" class="constant">ENUM_VALUES</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a> = _</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait  [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.Encoding.html b/parquet/format/struct.Encoding.html
index 0ef842f9660..e0589345c3e 100644
--- a/parquet/format/struct.Encoding.html
+++ b/parquet/format/struct.Encoding.html
@@ -30,7 +30,7 @@ The individual bytes of an FP value are scattered to the corresponding stream an
 the streams are concatenated.
 This itself does not reduce the size of the data but can lead to better compression
 afterwards.</p>
-</div></details><section id="associatedconstant.ENUM_VALUES" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#389-399">source</a><h4 class="code-header">pub const <a href="#associatedconstant.ENUM_VALUES" class="constant">ENUM_VALUES</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a> = _</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait  [...]
+</div></details><section id="associatedconstant.ENUM_VALUES" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#389-399">source</a><h4 class="code-header">pub const <a href="#associatedconstant.ENUM_VALUES" class="constant">ENUM_VALUES</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a> = _</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait  [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.FieldRepetitionType.html b/parquet/format/struct.FieldRepetitionType.html
index 37106ed249f..045a83a9a71 100644
--- a/parquet/format/struct.FieldRepetitionType.html
+++ b/parquet/format/struct.FieldRepetitionType.html
@@ -2,7 +2,7 @@
 </div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
 </div></details><details class="toggle" open><summary><section id="associatedconstant.OPTIONAL" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#294">source</a><h4 class="code-header">pub const <a href="#associatedconstant.OPTIONAL" class="constant">OPTIONAL</a>: <a class="struct" href="struct.FieldRepetitionType.html" title="struct parquet::format::FieldRepetitionType">FieldRepetitionType</a> = _</h4></section></summary><div class="docblock"><p> [...]
 </div></details><details class="toggle" open><summary><section id="associatedconstant.REPEATED" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#296">source</a><h4 class="code-header">pub const <a href="#associatedconstant.REPEATED" class="constant">REPEATED</a>: <a class="struct" href="struct.FieldRepetitionType.html" title="struct parquet::format::FieldRepetitionType">FieldRepetitionType</a> = _</h4></section></summary><div class="docblock"><p> [...]
-</div></details><section id="associatedconstant.ENUM_VALUES" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#297-301">source</a><h4 class="code-header">pub const <a href="#associatedconstant.ENUM_VALUES" class="constant">ENUM_VALUES</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a> = _</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait  [...]
+</div></details><section id="associatedconstant.ENUM_VALUES" class="associatedconstant"><a class="src rightside" href="../../src/parquet/format.rs.html#297-301">source</a><h4 class="code-header">pub const <a href="#associatedconstant.ENUM_VALUES" class="constant">ENUM_VALUES</a>: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[Self]</a> = _</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait  [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.PageType.html b/parquet/format/struct.PageType.html
index a36349bbc29..fcfdffdb3c8 100644
--- a/parquet/format/struct.PageType.html
+++ b/parquet/format/struct.PageType.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `PageType` struct in crate `parquet`."><title>PageType in parquet::format - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf084 [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `PageType` struct in crate `parquet`."><title>PageType in parquet::format - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf084 [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/format/struct.Type.html b/parquet/format/struct.Type.html
index 6d44c916f10..85c4de24c18 100644
--- a/parquet/format/struct.Type.html
+++ b/parquet/format/struct.Type.html
@@ -2,7 +2,7 @@
 with the encodings to control the on disk storage format.
 For example INT16 is not included as a type since a good encoding of INT32
 would handle this.</p>
-</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
+</div></details><h2 id="fields" class="fields section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><de [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="si [...]
diff --git a/parquet/record/api/struct.Row.html b/parquet/record/api/struct.Row.html
index b317c99ab0b..960333d7245 100644
--- a/parquet/record/api/struct.Row.html
+++ b/parquet/record/api/struct.Row.html
@@ -26,9 +26,9 @@
 <span class="kw">for </span>(idx, (name, field)) <span class="kw">in </span>row.get_column_iter().enumerate() {
     <span class="macro">println!</span>(<span class="string">"column index: {}, column name: {}, column value: {}"</span>, idx, name, field);
 }</code></pre></div>
-</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#105-112">source</a><h4 class="code-header">pub fn <a href="#method.to_json_value" class="fn">to_json_value</a>(&amp;self) -&gt; <a class="enum" href="https://docs.rs/serde_json/1.0.117/serde_json/value/enum.Value.html" title="enum serde_json::value::Value">Value</a></h4></section></div></details></div><h2 id="trait-implementations" class="section-header [...]
+</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#105-112">source</a><h4 class="code-header">pub fn <a href="#method.to_json_value" class="fn">to_json_value</a>(&amp;self) -&gt; <a class="enum" href="https://docs.rs/serde_json/1.0.117/serde_json/value/enum.Value.html" title="enum serde_json::value::Value">Value</a></h4></section></div></details></div><h2 id="trait-implementations" class="section-header [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RowAccessor-for-Row" class="impl"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#222-262">source</a><a href="#impl-RowAccessor-for-Row" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.RowAccessor.html" title="trait parquet::record::api::RowAccessor">RowAccessor</a [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RowAccessor-for-Row" class="impl"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#222-262">source</a><a href="#impl-RowAccessor-for-Row" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.RowAccessor.html" title="trait parquet::record::api::RowAccessor">RowAccessor</a [...]
 </div></details></div></details><section id="impl-StructuralPartialEq-for-Row" class="impl"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#48">source</a><a href="#impl-StructuralPartialEq-for-Row" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="struct" href="struct.Row.html" titl [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/parquet/record/struct.Row.html b/parquet/record/struct.Row.html
index 2ecde2d2d6e..d5ff3dd8698 100644
--- a/parquet/record/struct.Row.html
+++ b/parquet/record/struct.Row.html
@@ -26,9 +26,9 @@
 <span class="kw">for </span>(idx, (name, field)) <span class="kw">in </span>row.get_column_iter().enumerate() {
     <span class="macro">println!</span>(<span class="string">"column index: {}, column name: {}, column value: {}"</span>, idx, name, field);
 }</code></pre></div>
-</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../src/parquet/record/api.rs.html#105-112">source</a><h4 class="code-header">pub fn <a href="#method.to_json_value" class="fn">to_json_value</a>(&amp;self) -&gt; <a class="enum" href="https://docs.rs/serde_json/1.0.117/serde_json/value/enum.Value.html" title="enum serde_json::value::Value">Value</a></h4></section></div></details></div><h2 id="trait-implementations" class="section-header">T [...]
+</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../src/parquet/record/api.rs.html#105-112">source</a><h4 class="code-header">pub fn <a href="#method.to_json_value" class="fn">to_json_value</a>(&amp;self) -&gt; <a class="enum" href="https://docs.rs/serde_json/1.0.117/serde_json/value/enum.Value.html" title="enum serde_json::value::Value">Value</a></h4></section></div></details></div><h2 id="trait-implementations" class="section-header">T [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
-sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RowAccessor-for-Row" class="impl"><a class="src rightside" href="../../src/parquet/record/api.rs.html#222-262">source</a><a href="#impl-RowAccessor-for-Row" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="api/trait.RowAccessor.html" title="trait parquet::record::api::RowAccessor">RowAccessor</ [...]
+sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-RowAccessor-for-Row" class="impl"><a class="src rightside" href="../../src/parquet/record/api.rs.html#222-262">source</a><a href="#impl-RowAccessor-for-Row" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="api/trait.RowAccessor.html" title="trait parquet::record::api::RowAccessor">RowAccessor</ [...]
 </div></details></div></details><section id="impl-StructuralPartialEq-for-Row" class="impl"><a class="src rightside" href="../../src/parquet/record/api.rs.html#48">source</a><a href="#impl-StructuralPartialEq-for-Row" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="struct" href="api/struct.Row.html" tit [...]
     T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href [...]
     T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https:/ [...]
diff --git a/parquet/schema/types/struct.ColumnPath.html b/parquet/schema/types/struct.ColumnPath.html
index dcb70015849..9f6f333578f 100644
--- a/parquet/schema/types/struct.ColumnPath.html
+++ b/parquet/schema/types/struct.ColumnPath.html
@@ -27,7 +27,7 @@
 
 path.append(<span class="macro">vec!</span>[<span class="string">"d"</span>.to_string(), <span class="string">"e"</span>.to_string()]);
 <span class="macro">assert_eq!</span>(<span class="kw-2">&amp;</span>path.string(), <span class="string">"a.b.c.d.e"</span>);</code></pre></div>
-</div></details><section id="method.parts" class="method"><a class="src rightside" href="../../../src/parquet/schema/types.rs.html#728-730">source</a><h4 class="code-header">pub fn <a href="#method.parts" class="fn">parts</a>(&amp;self) -&gt; &amp;[<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>]</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait Impleme [...]
+</div></details><section id="method.parts" class="method"><a class="src rightside" href="../../../src/parquet/schema/types.rs.html#728-730">source</a><h4 class="code-header">pub fn <a href="#method.parts" class="fn">parts</a>(&amp;self) -&gt; &amp;[<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>]</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait Impleme [...]
     H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
     Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></d [...]
 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class= [...]
diff --git a/parquet_derive_test/struct.ACompleteRecord.html b/parquet_derive_test/struct.ACompleteRecord.html
index c7ccc83aa10..340bef41526 100644
--- a/parquet_derive_test/struct.ACompleteRecord.html
+++ b/parquet_derive_test/struct.ACompleteRecord.html
@@ -46,6 +46,6 @@ if <code>into_left(&amp;self)</code> returns <code>true</code>.
 Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either&lt;Self, Self&gt;</code></a>
 otherwise. <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either_with">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#805-807">source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" hr [...]
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" cl [...]
-    U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Erro [...]
+    U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Erro [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-ErasedDe [...]
     T: 'static,</div></h3></section><section id="impl-MaybeSendSync-for-T" class="impl"><a href="#impl-MaybeSendSync-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; MaybeSendSync for T</h3></section></div></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet_derive_test/struct.APartiallyCompleteRecord.html b/parquet_derive_test/struct.APartiallyCompleteRecord.html
index 8b93a53a0f5..fa01b4428fa 100644
--- a/parquet_derive_test/struct.APartiallyCompleteRecord.html
+++ b/parquet_derive_test/struct.APartiallyCompleteRecord.html
@@ -37,6 +37,6 @@ if <code>into_left(&amp;self)</code> returns <code>true</code>.
 Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either&lt;Self, Self&gt;</code></a>
 otherwise. <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either_with">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#805-807">source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" hr [...]
     U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" cl [...]
-    U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Erro [...]
+    U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Erro [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-ErasedDe [...]
     T: 'static,</div></h3></section><section id="impl-MaybeSendSync-for-T" class="impl"><a href="#impl-MaybeSendSync-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; MaybeSendSync for T</h3></section></div></section></div></main></body></html>
\ No newline at end of file
diff --git a/search-index.js b/search-index.js
index bbe304d2b63..8b29d7997e0 100644
--- a/search-index.js
+++ b/search-index.js
@@ -24,7 +24,7 @@ var searchIndex = new Map(JSON.parse('[\
 ["flight_test_integration_client",{"t":"FPPIPPIGNNNNNNNNNNNNNNNNNNONNNNHOOONNNNNNNNNNNNN","n":["Args","AuthBasicProto","Err","Error","Middleware","Ok","Result","Scenario","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","command","command_for_update","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_ref","group_id","host","into","into","into_request","into_request","main","path","port","scenario","to_owned", [...]
 ["flight_test_integration_server",{"t":"FPPIPPIGNNNNNNNNNNNNNNNNNNNNNNHOONNNNNNNNNNNNN","n":["Args","AuthBasicProto","Err","Error","Middleware","Ok","Result","Scenario","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","command","command_for_update","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_ref","group_id","into","into","into_request","into_request","main","port","scenario","to_owned","to_possible_val [...]
 ["gen",{"t":"HH","n":["main","prost_config"],"q":[[0,"gen"],[2,"core::error"],[3,"alloc::boxed"],[4,"core::result"],[5,"prost_build::config"]],"i":[0,0],"f":"{{}{{h{b{f{d}}}}}}{{}j}","D":"`","p":[[1,"unit"],[10,"Error",2],[5,"Box",3],[6,"Result",4],[5,"Config",5]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAIAEAAAAAAAAQACAA=="}],\
-["parquet",{"t":"CCCCCCQCCCCCSEEFSEFNCHCCCNNNNCNNNNCONNNNNNNNOOHHHCNNNNNNNNNKFFFFFIFFFKFFHOOOONNNNNNNNNNNNNNNNNNNMNONMHOOOOCOONNNNNNNNNOONNNNNNNNOONNNNOOOOONNNNNNNNNNMNOOONNOMOOOOOOOOOONNNOOOOCOOOOHOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFFNNNNMNONNNNNNOMNONNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNONNONNONNNNNNNNNNFFFFGFFFFFPPINNONNNNNNNNNNNNNNNNNNNNOOCNONNNNNNNOHOONNNNNNNNNNNNNNNNNNNNNHHNHHHNHHHHNONNNNNNNNNNNNNNNNOCONNONNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNHOOOFFPPFFGPNONNNNNNNN [...]
+["parquet",{"t":"CCCCCCQCCCCCSEEFSEFNCHCCCNNNNCNNNNCONNNNNNNNOOHHHCNNNNNNNNNKFFFFFIFFFKFFHOOOONNNNNNNNNNNNNNNNNNNMNONMHOOOOCOONNNNNNNNNOONNNNNNNNOONNNNOOOOONNNNNNNNNNMNOOONNOMOOOOOOOOOONNNOOOOCOOOOHOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFFNNNNMNONNNNNNOMNONNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNONNONNONNNNNNNNNNFFFFGFFFFFPPINNONNNNNNNNNNNNNNNNNNNNOOCNONNNNNNNOHOONNNNNNNNNNNNNNNNNNNNNHHNHHHNHHHHNONNNNNNNNNNNNNNNNOCONNONNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNHOOOFFPPFFGPNONNNNNNNN [...]
 ["parquet_concat",{"t":"FNNNNNNNNNNNONHONNNNNN","n":["Args","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","input","into","main","output","run","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut"],"q":[[0,"parquet_concat"],[22,"clap_builder::builder::command"],[23,"core::fmt"],[24,"clap_builder::parser::matches::arg_matches"],[25,"clap_build [...]
 ["parquet_derive",{"t":"YYCPPPFPPPGGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNONNNNNNNNNNNONNNNNNONNNN","n":["ParquetRecordReader","ParquetRecordWriter","parquet_field","Array","ChronoNaiveDate","ChronoNaiveDateTime","Field","Option","Reference","Slice","ThirdPartyType","Type","TypePath","Uuid","Vec","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","column_reader","column_writer","converted_type","copied_direct_fields","copied_direct_vals","eq","eq","eq","fmt","fmt","fmt","from [...]
 ["parquet_derive_test",{"t":"FFOOOOONNNNOOOOOOOOOONOONNNOOOONNOOOOOOOOOOOOOONNNNNNOOOO","n":["ACompleteRecord","APartiallyCompleteRecord","a_bool","a_borrowed_string","a_str","a_string","bool","borrow","borrow","borrow_mut","borrow_mut","borrowed_byte_vec","borrowed_maybe_a_str","borrowed_maybe_a_string","borrowed_maybe_borrowed_byte_vec","borrowed_maybe_byte_vec","byte_vec","byte_vec","date","double","double","eq","float","float","fmt","from","from","i16","i16","i32","i32","into","into" [...]
diff --git a/search.desc/parquet/parquet-desc-0-.js b/search.desc/parquet/parquet-desc-0-.js
index 00cb5634273..1dcac71af1f 100644
--- a/search.desc/parquet/parquet-desc-0-.js
+++ b/search.desc/parquet/parquet-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("parquet", 0, "This crate contains the official Native Rust …\nHigh-level API for reading/writing Arrow RecordBatches and …\nContains Rust mappings for Thrift definition. Refer to …\nBloom filter implementation specific to Parquet, as …\nLow level column reader and writer APIs.\nData types that connect Parquet physical types with their …\nCommon Parquet errors and macros.\nDefines a an item with an experimental public API\nLow level APIs for reading raw parque [...]
\ No newline at end of file
+searchState.loadedDescShard("parquet", 0, "This crate contains the official Native Rust …\nHigh-level API for reading/writing Arrow RecordBatches and …\nContains Rust mappings for Thrift definition. Refer to …\nBloom filter implementation specific to Parquet, as …\nLow level column reader and writer APIs.\nData types that connect Parquet physical types with their …\nCommon Parquet errors and macros.\nDefines a an item with an experimental public API\nLow level APIs for reading raw parque [...]
\ No newline at end of file
diff --git a/src/parquet/arrow/async_reader/store.rs.html b/src/parquet/arrow/async_reader/store.rs.html
index 501ddede66a..bb62dab2553 100644
--- a/src/parquet/arrow/async_reader/store.rs.html
+++ b/src/parquet/arrow/async_reader/store.rs.html
@@ -188,10 +188,6 @@
 <a href="#188" id="188">188</a>
 <a href="#189" id="189">189</a>
 <a href="#190" id="190">190</a>
-<a href="#191" id="191">191</a>
-<a href="#192" id="192">192</a>
-<a href="#193" id="193">193</a>
-<a href="#194" id="194">194</a>
 </pre></div><pre class="rust"><code><span class="comment">// Licensed to the Apache Software Foundation (ASF) under one
 // or more contributor license agreements.  See the NOTICE file
 // distributed with this work for additional information
@@ -219,7 +215,7 @@
 <span class="kw">use </span>object_store::{ObjectMeta, ObjectStore};
 
 <span class="kw">use </span><span class="kw">crate</span>::arrow::async_reader::{AsyncFileReader, MetadataLoader};
-<span class="kw">use </span><span class="kw">crate</span>::errors::{ParquetError, <span class="prelude-ty">Result</span>};
+<span class="kw">use </span><span class="kw">crate</span>::errors::Result;
 <span class="kw">use </span><span class="kw">crate</span>::file::metadata::ParquetMetaData;
 
 <span class="doccomment">/// Reads Parquet files in object storage using [`ObjectStore`].
@@ -299,7 +295,7 @@
     <span class="kw">fn </span>get_bytes(<span class="kw-2">&amp;mut </span><span class="self">self</span>, range: Range&lt;usize&gt;) -&gt; BoxFuture&lt;<span class="lifetime">'_</span>, <span class="prelude-ty">Result</span>&lt;Bytes&gt;&gt; {
         <span class="self">self</span>.store
             .get_range(<span class="kw-2">&amp;</span><span class="self">self</span>.meta.location, range)
-            .map_err(|e| ParquetError::General(<span class="macro">format!</span>(<span class="string">"AsyncChunkReader::get_bytes error: {e}"</span>)))
+            .map_err(|e| e.into())
             .boxed()
     }
 
@@ -311,11 +307,7 @@
             <span class="self">self</span>.store
                 .get_ranges(<span class="kw-2">&amp;</span><span class="self">self</span>.meta.location, <span class="kw-2">&amp;</span>ranges)
                 .<span class="kw">await
-                </span>.map_err(|e| {
-                    ParquetError::General(<span class="macro">format!</span>(
-                        <span class="string">"ParquetObjectReader::get_byte_ranges error: {e}"
-                    </span>))
-                })
+                </span>.map_err(|e| e.into())
         }
         .boxed()
     }
diff --git a/src/parquet/errors.rs.html b/src/parquet/errors.rs.html
index e62f2d7363b..6c0f0e4891d 100644
--- a/src/parquet/errors.rs.html
+++ b/src/parquet/errors.rs.html
@@ -163,6 +163,13 @@
 <a href="#163" id="163">163</a>
 <a href="#164" id="164">164</a>
 <a href="#165" id="165">165</a>
+<a href="#166" id="166">166</a>
+<a href="#167" id="167">167</a>
+<a href="#168" id="168">168</a>
+<a href="#169" id="169">169</a>
+<a href="#170" id="170">170</a>
+<a href="#171" id="171">171</a>
+<a href="#172" id="172">172</a>
 </pre></div><pre class="rust"><code><span class="comment">// Licensed to the Apache Software Foundation (ASF) under one
 // or more contributor license agreements.  See the NOTICE file
 // distributed with this work for additional information
@@ -277,6 +284,13 @@
     }
 }
 
+<span class="attr">#[cfg(feature = <span class="string">"object_store"</span>)]
+</span><span class="kw">impl </span>From&lt;object_store::Error&gt; <span class="kw">for </span>ParquetError {
+    <span class="kw">fn </span>from(e: object_store::Error) -&gt; ParquetError {
+        ParquetError::External(Box::new(e))
+    }
+}
+
 <span class="doccomment">/// A specialized `Result` for Parquet errors.
 </span><span class="kw">pub type </span><span class="prelude-ty">Result</span>&lt;T, E = ParquetError&gt; = result::Result&lt;T, E&gt;;
 
diff --git a/trait.impl/core/convert/trait.From.js b/trait.impl/core/convert/trait.From.js
index 3e589714916..955bec97fc0 100644
--- a/trait.impl/core/convert/trait.From.js
+++ b/trait.impl/core/convert/trait.From.js
@@ -1,6 +1,6 @@
 (function() {var implementors = {
 "arrow":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"struct\" href=\"arrow/pyarrow/struct.ArrowException.html\" title=\"struct arrow::pyarrow::ArrowException\">ArrowException</a>&gt; for Py&lt;<a class=\"struct\" href=\"arrow/pyarrow/struct.ArrowException.html\" title=\"struct arrow::pyarrow::ArrowException\">ArrowException</a>&gt;"],["impl <a class=\"trait\" href=\"https [...]
-"arrow_array":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"struct\" href=\"arrow_array/array/struct_array/struct.StructArray.html\" title=\"struct arrow_array::array::struct_array::StructArray\">StructArray</a>&gt; for <a class=\"struct\" href=\"arrow_array/record_batch/struct.RecordBatch.html\" title=\"struct arrow_array::record_batch::RecordBatch\">RecordBatch</a>"],["i [...]
+"arrow_array":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"struct\" href=\"arrow_array/array/struct_array/struct.StructArray.html\" title=\"struct arrow_array::array::struct_array::StructArray\">StructArray</a>&gt; for <a class=\"struct\" href=\"arrow_array/record_batch/struct.RecordBatch.html\" title=\"struct arrow_array::record_batch::RecordBatch\">RecordBatch</a>"],["i [...]
 "arrow_avro":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;<a class=\"enum\" href=\"arrow_avro/schema/enum.PrimitiveType.html\" title=\"enum arrow_avro::schema::PrimitiveType\">PrimitiveType</a>&gt; for <a class=\"enum\" href=\"arrow_avro/codec/enum.Codec.html\" title=\"enum arrow_avro::codec::Codec\">Codec</a>"]],
 "arrow_buffer":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;[<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.bool.html\">bool</a>]&gt; for <a class=\"struct\" href=\"arrow_buffer/buffer/boolean/struct.BooleanBuffer.html\" title=\"struct arrow_buffer::buffer::boolean::BooleanBuffer\">BooleanBuffer</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-l [...]
 "arrow_cast":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;<a class=\"struct\" href=\"https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html\" title=\"struct core::fmt::Error\">Error</a>&gt; for <a class=\"enum\" href=\"arrow_cast/display/enum.FormatError.html\" title=\"enum arrow_cast::display::FormatError\">FormatError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.o [...]
@@ -9,7 +9,7 @@
 "arrow_integration_test":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"struct\" href=\"https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;Field&gt;&gt; for <a class=\"struct\" href=\"arrow_integration_test/struct.ArrowJsonField.html\" title=\"struct arrow_integration_test::ArrowJsonField\">ArrowJsonField</a>"],["impl [...]
 "arrow_ipc":[["impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;<a class=\"struct\" href=\"arrow_ipc/gen/Schema/struct.Field.html\" title=\"struct arrow_ipc::gen::Schema::Field\">Field</a>&lt;'a&gt;&gt; for Field"]],
 "arrow_schema":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"struct\" href=\"arrow_schema/fields/struct.Fields.html\" title=\"struct arrow_schema::fields::Fields\">Fields</a>&gt; for <a class=\"struct\" href=\"arrow_schema/schema/struct.SchemaBuilder.html\" title=\"struct arrow_schema::schema::SchemaBuilder\">SchemaBuilder</a>"],["impl <a class=\"trait\" href=\"https://doc [...]
-"parquet":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.i32.html\">i32</a>&gt; for <a class=\"struct\" href=\"parquet/format/struct.BoundaryOrder.html\" title=\"struct parquet::format::BoundaryOrder\">BoundaryOrder</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.F [...]
+"parquet":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;&amp;<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.i32.html\">i32</a>&gt; for <a class=\"struct\" href=\"parquet/format/struct.BoundaryOrder.html\" title=\"struct parquet::format::BoundaryOrder\">BoundaryOrder</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.F [...]
 "parquet_fromcsv":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;<a class=\"enum\" href=\"parquet/errors/enum.ParquetError.html\" title=\"enum parquet::errors::ParquetError\">ParquetError</a>&gt; for <a class=\"enum\" href=\"parquet_fromcsv/enum.ParquetFromCsvError.html\" title=\"enum parquet_fromcsv::ParquetFromCsvError\">ParquetFromCsvError</a>"],["impl <a class=\"trait\" href=\"https:// [...]
 "parquet_rewrite":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a>&lt;<a class=\"enum\" href=\"parquet_rewrite/enum.CompressionArgs.html\" title=\"enum parquet_rewrite::CompressionArgs\">CompressionArgs</a>&gt; for <a class=\"enum\" href=\"parquet/basic/enum.Compression.html\" title=\"enum parquet::basic::Compression\">Compression</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org [...]
 };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/iter/traits/iterator/trait.Iterator.js b/trait.impl/core/iter/traits/iterator/trait.Iterator.js
index f14e11aa4e9..b493334e7cc 100644
--- a/trait.impl/core/iter/traits/iterator/trait.Iterator.js
+++ b/trait.impl/core/iter/traits/iterator/trait.Iterator.js
@@ -1,6 +1,6 @@
 (function() {var implementors = {
 "arrow":[["impl&lt;T: <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"arrow/util/test_util/struct.BadIterator.html\" title=\"struct arrow::util::test_util::BadIterator\">BadIterator</a>&lt;T&gt;"]],
-"arrow_array":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"arrow_array/ffi_stream/struct.ArrowArrayStreamReader.html\" title=\"struct arrow_array::ffi_stream::ArrowArrayStreamReader\">ArrowArrayStreamReader</a>"],["impl&lt;'a, R, V&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/ [...]
+"arrow_array":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"arrow_array/ffi_stream/struct.ArrowArrayStreamReader.html\" title=\"struct arrow_array::ffi_stream::ArrowArrayStreamReader\">ArrowArrayStreamReader</a>"],["impl&lt;'a, R, V&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/ [...]
 "arrow_buffer":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"arrow_buffer/util/bit_chunk_iterator/struct.BitChunkIterator.html\" title=\"struct arrow_buffer::util::bit_chunk_iterator::BitChunkIterator\">BitChunkIterator</a>&lt;'_&gt;"],["impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/ [...]
 "arrow_csv":[["impl&lt;R: <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/std/io/trait.BufRead.html\" title=\"trait std::io::BufRead\">BufRead</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"arrow_csv/reader/struct.BufReader.html\" title=\"struct arrow_csv::reader::BufReader\">BufReader</a>&lt;R&gt;"]],
 "arrow_ipc":[["impl&lt;R: <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/std/io/trait.Seek.html\" title=\"trait std::io::Seek\">Seek</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"arrow [...]
diff --git a/type.impl/arrow_array/array/binary_array/type.GenericBinaryArray.js b/type.impl/arrow_array/array/binary_array/type.GenericBinaryArray.js
index a2e232b87f3..4f606f3d738 100644
--- a/type.impl/arrow_array/array/binary_array/type.GenericBinaryArray.js
+++ b/type.impl/arrow_array/array/binary_array/type.GenericBinaryArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-From%3CGenericByteArray%3CGenericStringType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/binary_array.rs.html#121-134\">source</a><a href=\"#impl-From%3CGenericByteArray%3CGenericStringType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E\" class=\"anch [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-From%3CGenericByteArray%3CGenericStringType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/binary_array.rs.html#121-134\">source</a><a href=\"#impl-From%3CGenericByteArray%3CGenericStringType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E\" class=\"anch [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js b/type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js
index 69adccef250..d0c08dbd39b 100644
--- a/type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js
+++ b/type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-GenericByteArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/byte_array.rs.html#427-476\">source</a><a href=\"#impl-Array-for-GenericByteArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ByteArrayType.html\" title=\"trait arrow_array::types::ByteArrayType\">ByteArrayType</a>& [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-GenericByteArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/byte_array.rs.html#427-476\">source</a><a href=\"#impl-Array-for-GenericByteArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ByteArrayType.html\" title=\"trait arrow_array::types::ByteArrayType\">ByteArrayType</a>& [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/byte_view_array/struct.GenericByteViewArray.js b/type.impl/arrow_array/array/byte_view_array/struct.GenericByteViewArray.js
index e77ad9cb3fc..6e6f3e4047b 100644
--- a/type.impl/arrow_array/array/byte_view_array/struct.GenericByteViewArray.js
+++ b/type.impl/arrow_array/array/byte_view_array/struct.GenericByteViewArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-GenericByteViewArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/byte_view_array.rs.html#330-379\">source</a><a href=\"#impl-Array-for-GenericByteViewArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ByteViewType.html\" title=\"trait arrow_array::types::ByteViewType\">ByteVie [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-GenericByteViewArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/byte_view_array.rs.html#330-379\">source</a><a href=\"#impl-Array-for-GenericByteViewArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ByteViewType.html\" title=\"trait arrow_array::types::ByteViewType\">ByteVie [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/dictionary_array/struct.DictionaryArray.js b/type.impl/arrow_array/array/dictionary_array/struct.DictionaryArray.js
index febcf0f625d..c091e4edb83 100644
--- a/type.impl/arrow_array/array/dictionary_array/struct.DictionaryArray.js
+++ b/type.impl/arrow_array/array/dictionary_array/struct.DictionaryArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-AnyDictionaryArray-for-DictionaryArray%3CK%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/dictionary_array.rs.html#994-1013\">source</a><a href=\"#impl-AnyDictionaryArray-for-DictionaryArray%3CK%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;K: <a class=\"trait\" href=\"arrow_array/types/trait.ArrowDictionaryKeyType.html\" title=\"trait arrow_array::t [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-AnyDictionaryArray-for-DictionaryArray%3CK%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/dictionary_array.rs.html#994-1013\">source</a><a href=\"#impl-AnyDictionaryArray-for-DictionaryArray%3CK%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;K: <a class=\"trait\" href=\"arrow_array/types/trait.ArrowDictionaryKeyType.html\" title=\"trait arrow_array::t [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/list_array/struct.GenericListArray.js b/type.impl/arrow_array/array/list_array/struct.GenericListArray.js
index acc4d3da290..b4c1fd351c4 100644
--- a/type.impl/arrow_array/array/list_array/struct.GenericListArray.js
+++ b/type.impl/arrow_array/array/list_array/struct.GenericListArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-GenericListArray%3COffsetSize%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/list_array.rs.html#459-513\">source</a><a href=\"#impl-Array-for-GenericListArray%3COffsetSize%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;OffsetSize: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait.html\" title=\"trait arrow_array::a [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-GenericListArray%3COffsetSize%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/list_array.rs.html#459-513\">source</a><a href=\"#impl-Array-for-GenericListArray%3COffsetSize%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;OffsetSize: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait.html\" title=\"trait arrow_array::a [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js b/type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js
index a672760e9b0..1e049b059af 100644
--- a/type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js
+++ b/type.impl/arrow_array/array/primitive_array/struct.PrimitiveArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-PrimitiveArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/primitive_array.rs.html#1051-1099\">source</a><a href=\"#impl-Array-for-PrimitiveArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ArrowPrimitiveType.html\" title=\"trait arrow_array::types::ArrowPrimitiveType\">Arrow [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-PrimitiveArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/primitive_array.rs.html#1051-1099\">source</a><a href=\"#impl-Array-for-PrimitiveArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ArrowPrimitiveType.html\" title=\"trait arrow_array::types::ArrowPrimitiveType\">Arrow [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/run_array/struct.RunArray.js b/type.impl/arrow_array/array/run_array/struct.RunArray.js
index 165b10ac280..747bfd544d6 100644
--- a/type.impl/arrow_array/array/run_array/struct.RunArray.js
+++ b/type.impl/arrow_array/array/run_array/struct.RunArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-RunArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/run_array.rs.html#305-388\">source</a><a href=\"#impl-Array-for-RunArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.RunEndIndexType.html\" title=\"trait arrow_array::types::RunEndIndexType\">RunEndIndexType</a>&gt; <a clas [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-Array-for-RunArray%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/run_array.rs.html#305-388\">source</a><a href=\"#impl-Array-for-RunArray%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.RunEndIndexType.html\" title=\"trait arrow_array::types::RunEndIndexType\">RunEndIndexType</a>&gt; <a clas [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/array/string_array/type.GenericStringArray.js b/type.impl/arrow_array/array/string_array/type.GenericStringArray.js
index 75d498039c5..9d9527a4d2e 100644
--- a/type.impl/arrow_array/array/string_array/type.GenericStringArray.js
+++ b/type.impl/arrow_array/array/string_array/type.GenericStringArray.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-From%3CGenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/string_array.rs.html#76-82\">source</a><a href=\"#impl-From%3CGenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E\" class=\"anchor [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-From%3CGenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/array/string_array.rs.html#76-82\">source</a><a href=\"#impl-From%3CGenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericStringType%3COffsetSize%3E%3E\" class=\"anchor [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.js b/type.impl/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.js
index 2601b0a5199..f157b42298d 100644
--- a/type.impl/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.js
+++ b/type.impl/arrow_array/builder/generic_bytes_dictionary_builder/struct.GenericByteDictionaryBuilder.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-GenericByteDictionaryBuilder%3CK,+T%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/generic_bytes_dictionary_builder.rs.html#165-199\">source</a><a href=\"#impl-ArrayBuilder-for-GenericByteDictionaryBuilder%3CK,+T%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;K, T&gt; <a class=\"trait\" href=\"arrow_array/builder/trait.ArrayBuilder. [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-GenericByteDictionaryBuilder%3CK,+T%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/generic_bytes_dictionary_builder.rs.html#165-199\">source</a><a href=\"#impl-ArrayBuilder-for-GenericByteDictionaryBuilder%3CK,+T%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;K, T&gt; <a class=\"trait\" href=\"arrow_array/builder/trait.ArrayBuilder. [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.js b/type.impl/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.js
index 178bcd1fb0e..c8195fa8bf9 100644
--- a/type.impl/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.js
+++ b/type.impl/arrow_array/builder/generic_bytes_view_builder/struct.GenericByteViewBuilder.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-GenericByteViewBuilder%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/generic_bytes_view_builder.rs.html#299-323\">source</a><a href=\"#impl-ArrayBuilder-for-GenericByteViewBuilder%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ByteViewType.html\" title=\"trait arrow_array [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-GenericByteViewBuilder%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/generic_bytes_view_builder.rs.html#299-323\">source</a><a href=\"#impl-ArrayBuilder-for-GenericByteViewBuilder%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ByteViewType.html\" title=\"trait arrow_array [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.js b/type.impl/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.js
index b39a7043ae0..f33e5ca6d03 100644
--- a/type.impl/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.js
+++ b/type.impl/arrow_array/builder/generic_list_builder/struct.GenericListBuilder.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-GenericListBuilder%3COffsetSize,+T%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/generic_list_builder.rs.html#137-171\">source</a><a href=\"#impl-ArrayBuilder-for-GenericListBuilder%3COffsetSize,+T%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;OffsetSize: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-GenericListBuilder%3COffsetSize,+T%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/generic_list_builder.rs.html#137-171\">source</a><a href=\"#impl-ArrayBuilder-for-GenericListBuilder%3COffsetSize,+T%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;OffsetSize: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.js b/type.impl/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.js
index 235c4c6f962..864555af3e9 100644
--- a/type.impl/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.js
+++ b/type.impl/arrow_array/builder/primitive_builder/struct.PrimitiveBuilder.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-PrimitiveBuilder%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/primitive_builder.rs.html#103-133\">source</a><a href=\"#impl-ArrayBuilder-for-PrimitiveBuilder%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ArrowPrimitiveType.html\" title=\"trait arrow_array::types::ArrowP [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ArrayBuilder-for-PrimitiveBuilder%3CT%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/builder/primitive_builder.rs.html#103-133\">source</a><a href=\"#impl-ArrayBuilder-for-PrimitiveBuilder%3CT%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;T: <a class=\"trait\" href=\"arrow_array/types/trait.ArrowPrimitiveType.html\" title=\"trait arrow_array::types::ArrowP [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/types/struct.GenericBinaryType.js b/type.impl/arrow_array/types/struct.GenericBinaryType.js
index d551dcf6e05..45122da03dd 100644
--- a/type.impl/arrow_array/types/struct.GenericBinaryType.js
+++ b/type.impl/arrow_array/types/struct.GenericBinaryType.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ByteArrayType-for-GenericBinaryType%3CO%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/types.rs.html#1496-1518\">source</a><a href=\"#impl-ByteArrayType-for-GenericBinaryType%3CO%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;O: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait.html\" title=\"trait arrow_array::array::list_array:: [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ByteArrayType-for-GenericBinaryType%3CO%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/types.rs.html#1496-1518\">source</a><a href=\"#impl-ByteArrayType-for-GenericBinaryType%3CO%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;O: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait.html\" title=\"trait arrow_array::array::list_array:: [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file
diff --git a/type.impl/arrow_array/types/struct.GenericStringType.js b/type.impl/arrow_array/types/struct.GenericStringType.js
index fcd0394c49c..cb38ace552f 100644
--- a/type.impl/arrow_array/types/struct.GenericStringType.js
+++ b/type.impl/arrow_array/types/struct.GenericStringType.js
@@ -1,3 +1,3 @@
 (function() {var type_impls = {
-"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ByteArrayType-for-GenericStringType%3CO%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/types.rs.html#1450-1484\">source</a><a href=\"#impl-ByteArrayType-for-GenericStringType%3CO%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;O: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait.html\" title=\"trait arrow_array::array::list_array:: [...]
+"arrow_array":[["<details class=\"toggle implementors-toggle\" open><summary><section id=\"impl-ByteArrayType-for-GenericStringType%3CO%3E\" class=\"impl\"><a class=\"src rightside\" href=\"src/arrow_array/types.rs.html#1450-1484\">source</a><a href=\"#impl-ByteArrayType-for-GenericStringType%3CO%3E\" class=\"anchor\">§</a><h3 class=\"code-header\">impl&lt;O: <a class=\"trait\" href=\"arrow_array/array/list_array/trait.OffsetSizeTrait.html\" title=\"trait arrow_array::array::list_array:: [...]
 };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})()
\ No newline at end of file