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 2023/12/08 18:11:30 UTC

(arrow-rs) branch asf-site updated: deploy: 7e289134a8d9f46a92a2759a7b2488b17993fd5b

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 3108ec985c deploy: 7e289134a8d9f46a92a2759a7b2488b17993fd5b
3108ec985c is described below

commit 3108ec985cda3bdf749f9f9f0c652f8b5b8247c8
Author: tustvold <tu...@users.noreply.github.com>
AuthorDate: Fri Dec 8 18:11:24 2023 +0000

    deploy: 7e289134a8d9f46a92a2759a7b2488b17993fd5b
---
 arrow/array/array/struct.BooleanArray.html         |   2 +-
 arrow/array/array/struct.FixedSizeBinaryArray.html |   4 +-
 arrow/array/array/struct.FixedSizeListArray.html   |  10 +-
 arrow/array/array/struct.GenericByteArray.html     |  26 +--
 arrow/array/array/struct.GenericListArray.html     |   8 +-
 arrow/array/array/struct.MapArray.html             |   2 +-
 arrow/array/array/struct.NativeAdapter.html        |   4 +-
 arrow/array/array/struct.NullArray.html            |   2 +-
 arrow/array/array/struct.PrimitiveArray.html       | 116 +++++-----
 arrow/array/array/struct.RunArray.html             |   4 +-
 arrow/array/array/struct.StructArray.html          |   2 +-
 arrow/array/array/struct.UnionArray.html           |   2 +-
 arrow/array/array/trait.Array.html                 |   6 +-
 arrow/array/struct.ArrayData.html                  |  22 +-
 arrow/array/struct.BooleanArray.html               |   2 +-
 arrow/array/struct.FixedSizeBinaryArray.html       |   4 +-
 arrow/array/struct.FixedSizeListArray.html         |  10 +-
 arrow/array/struct.GenericByteArray.html           |  26 +--
 arrow/array/struct.GenericListArray.html           |   8 +-
 arrow/array/struct.MapArray.html                   |   2 +-
 arrow/array/struct.NativeAdapter.html              |   4 +-
 arrow/array/struct.NullArray.html                  |   2 +-
 arrow/array/struct.PrimitiveArray.html             | 116 +++++-----
 arrow/array/struct.RecordBatch.html                |   2 +-
 arrow/array/struct.RunArray.html                   |   4 +-
 arrow/array/struct.StructArray.html                |   2 +-
 arrow/array/struct.UnionArray.html                 |   2 +-
 arrow/array/trait.Array.html                       |   6 +-
 arrow/pyarrow/struct.ArrowException.html           |   2 +-
 arrow/record_batch/struct.RecordBatch.html         |   2 +-
 arrow_arith/numeric/enum.Op.html                   |   2 +-
 .../arithmetic/trait.ArrowNativeTypeOp.html        |  30 +--
 .../array/binary_array/type.BinaryArray.html       |   4 +-
 .../binary_array/type.GenericBinaryArray.html      |   6 +-
 .../array/binary_array/type.LargeBinaryArray.html  |   4 +-
 .../array/boolean_array/struct.BooleanArray.html   |   4 +-
 .../array/byte_array/struct.GenericByteArray.html  |  20 +-
 .../dictionary_array/struct.DictionaryArray.html   |  14 +-
 .../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               |  18 +-
 .../struct.FixedSizeListArray.html                 |  22 +-
 arrow_array/array/fn.get_offsets.html              |   2 +-
 arrow_array/array/fn.make_array.html               |   2 +-
 arrow_array/array/fn.new_empty_array.html          |   2 +-
 arrow_array/array/fn.new_null_array.html           |   2 +-
 arrow_array/array/index.html                       |   2 +-
 .../array/list_array/struct.GenericListArray.html  |  26 +--
 .../array/list_array/type.LargeListArray.html      |   4 +-
 arrow_array/array/list_array/type.ListArray.html   |   4 +-
 arrow_array/array/map_array/struct.MapArray.html   |  24 +-
 arrow_array/array/null_array/struct.NullArray.html |   6 +-
 .../primitive_array/struct.NativeAdapter.html      |   2 +-
 .../primitive_array/struct.PrimitiveArray.html     |  76 +++---
 .../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   |  12 +-
 .../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      |   8 +-
 .../array/string_array/type.LargeStringArray.html  |   4 +-
 .../array/string_array/type.StringArray.html       |   4 +-
 arrow_array/array/struct.BooleanArray.html         |   4 +-
 arrow_array/array/struct.DictionaryArray.html      |  14 +-
 arrow_array/array/struct.FixedSizeBinaryArray.html |  18 +-
 arrow_array/array/struct.FixedSizeListArray.html   |  22 +-
 arrow_array/array/struct.GenericByteArray.html     |  20 +-
 arrow_array/array/struct.GenericListArray.html     |  26 +--
 arrow_array/array/struct.MapArray.html             |  24 +-
 arrow_array/array/struct.NativeAdapter.html        |   2 +-
 arrow_array/array/struct.NullArray.html            |   6 +-
 arrow_array/array/struct.PrimitiveArray.html       |  76 +++---
 arrow_array/array/struct.RunArray.html             |  12 +-
 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                 |  20 +-
 arrow_array/array/type.ArrayRef.html               |   2 +-
 arrow_array/array/type.BinaryArray.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     |   6 +-
 arrow_array/array/type.GenericStringArray.html     |   8 +-
 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.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 +-
 arrow_array/builder/fn.make_builder.html           |   2 +-
 .../struct.GenericByteDictionaryBuilder.html       |   4 +-
 arrow_array/builder/index.html                     |   2 +-
 arrow_array/builder/map_builder/index.html         |   2 +-
 .../builder/map_builder/struct.MapBuilder.html     |   2 +-
 .../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 +-
 .../struct.GenericByteDictionaryBuilder.html       |   4 +-
 arrow_array/builder/struct.MapBuilder.html         |   2 +-
 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 +-
 .../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/cast/fn.downcast_array.html            |   2 +-
 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/private/struct.TzOffset.html  |   2 +-
 arrow_array/timezone/struct.Tz.html                |   2 +-
 arrow_array/timezone/struct.TzOffset.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.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 +-
 .../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.DecimalType.html           |  14 +-
 arrow_cast/cast/trait.DecimalCast.html             |   2 +-
 arrow_cast/display/enum.FormatError.html           |   2 +-
 arrow_flight/error/enum.FlightError.html           |   2 +-
 arrow_flight/gen/struct.FlightData.html            |   2 +-
 arrow_flight/gen/struct.Location.html              |   2 +-
 arrow_flight/gen/struct.SchemaResult.html          |   2 +-
 arrow_flight/gen/struct.Ticket.html                |   2 +-
 .../sql/metadata/sql_info/enum.SqlInfoValue.html   |   2 +-
 arrow_flight/struct.FlightData.html                |   2 +-
 arrow_flight/struct.IpcMessage.html                |   2 +-
 arrow_flight/struct.Location.html                  |   2 +-
 arrow_flight/struct.SchemaResult.html              |   2 +-
 arrow_flight/struct.Ticket.html                    |   2 +-
 arrow_integration_test/struct.ArrowJsonField.html  |   2 +-
 arrow_ipc/gen/Message/struct.FieldNode.html        |   2 +-
 arrow_ipc/gen/Schema/struct.Buffer.html            |   2 +-
 .../reader/serializer/struct.ListSerializer.html   |   8 +-
 .../reader/serializer/struct.ObjectSerializer.html |   8 +-
 .../reader/serializer/struct.SerializerError.html  |   4 +-
 arrow_ord/cmp/enum.Op.html                         |   2 +-
 help.html                                          |   2 +-
 index.html                                         |   2 +-
 parquet/all.html                                   |   2 +-
 .../selection/struct.RowSelection.html             |   2 +-
 .../arrow/arrow_reader/struct.RowSelection.html    |   2 +-
 .../byte_array/fn.compute_min_max.html             |   2 +-
 .../arrow/arrow_writer/byte_array/fn.encode.html   |   2 +-
 parquet/arrow/arrow_writer/byte_array/index.html   |   2 +-
 .../byte_array/struct.ByteArrayEncoder.html        |  19 +-
 .../dictionary_buffer/enum.DictionaryBuffer.html   |  18 +-
 parquet/arrow/buffer/dictionary_buffer/index.html  |   2 +-
 parquet/arrow/buffer/offset_buffer/index.html      |   2 +-
 .../buffer/offset_buffer/struct.OffsetBuffer.html  |  17 +-
 parquet/arrow/record_reader/buffer/index.html      |   2 +-
 .../arrow/record_reader/buffer/sidebar-items.js    |   2 +-
 .../record_reader/buffer/struct.ScalarBuffer.html  |  29 ---
 .../record_reader/buffer/trait.BufferQueue.html    |  18 +-
 .../record_reader/buffer/trait.ScalarValue.html    |   5 -
 .../record_reader/buffer/trait.ValuesBuffer.html   |  12 +-
 .../definition_levels/enum.BufferInner.html        |   6 +-
 .../definition_levels/enum.MaybePacked.html        |   2 +-
 .../record_reader/definition_levels/index.html     |   2 +-
 .../struct.DefinitionLevelBuffer.html              |   8 +-
 .../struct.DefinitionLevelBufferDecoder.html       |   6 +-
 .../definition_levels/struct.PackedDecoder.html    |   8 +-
 .../arrow/record_reader/fn.packed_null_mask.html   |   2 +-
 parquet/arrow/record_reader/index.html             |   2 +-
 .../record_reader/struct.GenericRecordReader.html  |  36 +--
 parquet/arrow/record_reader/type.ColumnReader.html |   2 +-
 parquet/arrow/record_reader/type.RecordReader.html |   8 +-
 parquet/basic/enum.ColumnOrder.html                |   2 +-
 parquet/basic/enum.Compression.html                |   2 +-
 parquet/basic/enum.Encoding.html                   |   2 +-
 parquet/basic/enum.LogicalType.html                |   2 +-
 parquet/basic/enum.PageType.html                   |   2 +-
 parquet/basic/enum.Type.html                       |   2 +-
 .../reader/decoder/trait.ColumnLevelDecoder.html   |   2 +-
 .../decoder/trait.DefinitionLevelDecoder.html      |   2 +-
 .../reader/decoder/trait.LevelsBufferSlice.html    |   2 +-
 .../reader/decoder/trait.ValuesBufferSlice.html    |   2 +-
 parquet/column/writer/encoder/fn.get_min_max.html  |   2 +-
 parquet/column/writer/encoder/fn.replace_zero.html |   2 +-
 parquet/column/writer/encoder/index.html           |   2 +-
 .../encoder/struct.ColumnValueEncoderImpl.html     |  14 +-
 .../writer/encoder/trait.ColumnValueEncoder.html   |  37 ++-
 parquet/column/writer/fn.compare_greater.html      |   2 +-
 .../fn.compare_greater_byte_array_decimals.html    |   2 +-
 parquet/column/writer/fn.fallback_encoding.html    |   2 +-
 .../column/writer/fn.has_dictionary_support.html   |   2 +-
 parquet/column/writer/fn.increment.html            |   2 +-
 parquet/column/writer/fn.increment_utf8.html       |   2 +-
 parquet/column/writer/fn.is_nan.html               |   2 +-
 parquet/column/writer/fn.truncate_utf8.html        |   2 +-
 parquet/column/writer/fn.update_max.html           |   2 +-
 parquet/column/writer/fn.update_min.html           |   2 +-
 parquet/column/writer/fn.update_stat.html          |   2 +-
 parquet/column/writer/index.html                   |   2 +-
 .../column/writer/struct.GenericColumnWriter.html  |  50 ++--
 .../column/writer/trait.EncodingWriteSupport.html  |   4 +-
 parquet/data_type/struct.ByteArray.html            |   8 +-
 parquet/data_type/struct.FixedLenByteArray.html    |  10 +-
 parquet/data_type/struct.Int96.html                |   4 +-
 parquet/errors/enum.ParquetError.html              |   2 +-
 .../struct.SerializedFileReader.html               |   2 +-
 parquet/file/statistics/enum.Statistics.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/enum.Field.html                 |   2 +-
 parquet/record/api/struct.Row.html                 |   4 +-
 parquet/record/enum.Field.html                     |   2 +-
 parquet/record/struct.Row.html                     |   4 +-
 parquet/schema/types/struct.ColumnPath.html        |   2 +-
 parquet_fromcsv/enum.ParquetFromCsvError.html      |   2 +-
 search-index.js                                    |  18 +-
 settings.html                                      |   2 +-
 src/parquet/arrow/array_reader/byte_array.rs.html  |  80 +++----
 .../array_reader/byte_array_dictionary.rs.html     |  58 ++---
 .../array_reader/fixed_len_byte_array.rs.html      |  68 ++----
 src/parquet/arrow/array_reader/null_array.rs.html  |  10 +-
 .../arrow/array_reader/primitive_array.rs.html     | 126 +++++-----
 src/parquet/arrow/arrow_writer/byte_array.rs.html  |  52 ++---
 src/parquet/arrow/buffer/dictionary_buffer.rs.html |  48 ++--
 src/parquet/arrow/buffer/offset_buffer.rs.html     |  38 +--
 src/parquet/arrow/record_reader/buffer.rs.html     | 256 ++-------------------
 .../arrow/record_reader/definition_levels.rs.html  |  14 +-
 src/parquet/arrow/record_reader/mod.rs.html        |  56 ++---
 src/parquet/column/writer/encoder.rs.html          |  42 +---
 src/parquet/column/writer/mod.rs.html              |  78 ++-----
 .../record_batch/trait.RecordBatchReader.js        |   2 +-
 .../record_batch/trait.RecordBatchWriter.js        |   2 +-
 .../flight_service_server/trait.FlightService.js   |   2 +-
 trait.impl/clap_builder/derive/trait.Args.js       |   2 +-
 .../clap_builder/derive/trait.CommandFactory.js    |   2 +-
 .../clap_builder/derive/trait.FromArgMatches.js    |   2 +-
 trait.impl/clap_builder/derive/trait.Parser.js     |   2 +-
 trait.impl/clap_builder/derive/trait.ValueEnum.js  |   2 +-
 trait.impl/core/clone/trait.Clone.js               |  28 +--
 trait.impl/core/cmp/trait.Eq.js                    |  14 +-
 trait.impl/core/cmp/trait.Ord.js                   |   6 +-
 trait.impl/core/cmp/trait.PartialEq.js             |  18 +-
 trait.impl/core/cmp/trait.PartialOrd.js            |   8 +-
 trait.impl/core/convert/trait.AsRef.js             |   2 +-
 trait.impl/core/convert/trait.From.js              |  16 +-
 trait.impl/core/convert/trait.TryFrom.js           |   4 +-
 trait.impl/core/default/trait.Default.js           |  18 +-
 trait.impl/core/fmt/trait.Debug.js                 |  38 +--
 trait.impl/core/fmt/trait.Display.js               |   4 +-
 trait.impl/core/hash/trait.Hash.js                 |   8 +-
 .../core/iter/traits/collect/trait.Extend.js       |   2 +-
 .../core/iter/traits/collect/trait.FromIterator.js |   2 +-
 .../core/iter/traits/collect/trait.IntoIterator.js |   2 +-
 .../traits/exact_size/trait.ExactSizeIterator.js   |   2 +-
 .../core/iter/traits/iterator/trait.Iterator.js    |  10 +-
 trait.impl/core/marker/trait.Copy.js               |  14 +-
 trait.impl/core/marker/trait.Freeze.js             |   2 +-
 trait.impl/core/marker/trait.Send.js               |   2 +-
 trait.impl/core/marker/trait.StructuralEq.js       |  10 +-
 .../core/marker/trait.StructuralPartialEq.js       |  14 +-
 trait.impl/core/marker/trait.Sync.js               |   2 +-
 trait.impl/core/marker/trait.Unpin.js              |   2 +-
 trait.impl/core/ops/deref/trait.Deref.js           |   2 +-
 .../core/panic/unwind_safe/trait.RefUnwindSafe.js  |   2 +-
 .../core/panic/unwind_safe/trait.UnwindSafe.js     |   2 +-
 trait.impl/core/str/traits/trait.FromStr.js        |   4 +-
 .../endian_scalar/trait.EndianScalar.js            |   2 +-
 trait.impl/flatbuffers/follow/trait.Follow.js      |   2 +-
 trait.impl/flatbuffers/push/trait.Push.js          |   2 +-
 .../verifier/trait.SimpleToVerifyInSlice.js        |   2 +-
 .../flatbuffers/verifier/trait.Verifiable.js       |   2 +-
 trait.impl/futures_core/stream/trait.Stream.js     |   2 +-
 .../record_reader/buffer/trait.ScalarValue.js      |   3 -
 .../record/record_writer/trait.RecordWriter.js     |   2 +-
 trait.impl/prost/message/trait.Message.js          |   2 +-
 trait.impl/serde/de/trait.Deserialize.js           |   4 +-
 trait.impl/serde/ser/trait.Serialize.js            |   6 +-
 type.impl/alloc/vec/struct.Vec.js                  |   2 +-
 type.impl/arrow/array/struct.GenericByteArray.js   |   2 +-
 type.impl/arrow/array/struct.GenericListArray.js   |   2 +-
 type.impl/arrow/array/struct.PrimitiveArray.js     |   2 +-
 type.impl/arrow/pyarrow/struct.ArrowException.js   |   2 +-
 .../array/binary_array/type.GenericBinaryArray.js  |   2 +-
 .../array/byte_array/struct.GenericByteArray.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.GenericByteRunBuilder.js                |   2 +-
 .../struct.GenericByteBuilder.js                   |   2 +-
 .../struct.GenericByteDictionaryBuilder.js         |   2 +-
 .../struct.GenericListBuilder.js                   |   2 +-
 .../primitive_builder/struct.PrimitiveBuilder.js   |   2 +-
 type.impl/arrow_array/iterator/struct.ArrayIter.js |   2 +-
 .../arrow_array/types/struct.GenericBinaryType.js  |   2 +-
 .../arrow_array/types/struct.GenericStringType.js  |   2 +-
 type.impl/arrow_csv/reader/struct.BufReader.js     |   2 +-
 type.impl/arrow_json/writer/struct.Writer.js       |   2 +-
 .../record_reader/struct.GenericRecordReader.js    |   2 +-
 .../column/writer/struct.GenericColumnWriter.js    |   2 +-
 .../file/statistics/struct.ValueStatistics.js      |   2 +-
 type.impl/parquet/format/struct.KeyValue.js        |   2 +-
 500 files changed, 1698 insertions(+), 2170 deletions(-)

diff --git a/arrow/array/array/struct.BooleanArray.html b/arrow/array/array/struct.BooleanArray.html
index fd1bb8f8fe..b632d3bfdf 100644
--- a/arrow/array/array/struct.BooleanArray.html
+++ b/arrow/array/array/struct.BooleanArray.html
@@ -80,7 +80,7 @@ includes the overhead of the data structures that contain the pointers to the va
 opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="../struct.BooleanArray.html" title="struct arrow::array::BooleanArray">BooleanArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="../t [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="../struct.BooleanArray.html" title="struct arrow::array::BooleanArray">BooleanArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="../t [...]
     Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>&gt;&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><s [...]
     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 = Ptr&gt;,</div></h4></section></summary><div class='docblock'>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.FromIterator.html#tymethod.from_iter">Read more</a></div></details></div></details><details class="toggle implementors-toggle" [...]
 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#239">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/struct.FixedSizeBinaryArray.html b/arrow/array/array/struct.FixedSizeBinaryArray.html
index fcc972294c..fcc362b420 100644
--- a/arrow/array/array/struct.FixedSizeBinaryArray.html
+++ b/arrow/array/array/struct.FixedSizeBinaryArray.html
@@ -132,8 +132,8 @@ opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_arr
 ) -&gt; &lt;&amp;'a <a class="struct" href="../struct.FixedSizeBinaryArray.html" title="struct arrow::array::FixedSizeBinaryArray">FixedSizeBinaryArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <cod [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="../struct.FixedSizeBinaryArray.html" title="struct arrow::array::FixedSizeBinaryArray">FixedSizeBinaryArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <cod [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../struct.FixedSizeListArray.html" title="str [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="../struct.FixedSizeBinaryArray.html" title="struct arrow::array::FixedSizeBinaryArray">FixedSizeBinaryArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <cod [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../struct.FixedSizeListArray.html" title= [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="htt [...]
     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/array/struct.FixedSizeListArray.html b/arrow/array/array/struct.FixedSizeListArray.html
index a95fc342a2..a2a7f0db06 100644
--- a/arrow/array/array/struct.FixedSizeListArray.html
+++ b/arrow/array/array/struct.FixedSizeListArray.html
@@ -130,15 +130,15 @@ This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">R
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#413">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" [...]
 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#195">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 c [...]
-opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
+opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="../struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</c [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="../struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</c [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;<a class="struct" href="../struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a  [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../struct.FixedSizeListArray.html" title="str [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lan [...]
+) -&gt; &lt;<a class="struct" href="../struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a  [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../struct.FixedSizeListArray.html" title= [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lan [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeListArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeListArray" 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 [...]
diff --git a/arrow/array/array/struct.GenericByteArray.html b/arrow/array/array/struct.GenericByteArray.html
index a7414bbdc3..01f054412a 100644
--- a/arrow/array/array/struct.GenericByteArray.html
+++ b/arrow/array/array/struct.GenericByteArray.html
@@ -147,33 +147,33 @@ opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_arr
 ) -&gt; &lt;&amp;'a <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;T&gt; as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i [...]
     T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#95">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang [...]
     T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#418">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
-    T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#491">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#79">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#491">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#79">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
     v: <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericBinaryType.html" title="struct arrow::datatypes::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt;&gt;
 ) -&gt; <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id=" [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#124">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#124">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
     value: <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;
 ) -&gt; <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericBinaryType.html" title="struct arrow::datatypes::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id=" [...]
     T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-9" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#521">source</a><a href="#method.from-9" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
     v: <a class="struct" href="../struct.GenericListArray.html" title="struct arrow::array::GenericListArray">GenericListArray</a>&lt;OffsetSize&gt;
 ) -&gt; <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id=" [...]
-    T: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/n [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-10" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#110">source</a><a href="#method.from-10" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#91">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#104">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
+    T: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/n [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#110">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#91">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#104">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
     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/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;
 ) -&gt; <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericBinaryType.html" title="struct arrow::datatypes::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id=" [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#85">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#97">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#85">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#97">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
     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/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;
 ) -&gt; <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id=" [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#103">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-l [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-10" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#103">source</a><a href="#method.from-10" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust [...]
     T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,
-    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt; + 'a,</div></h3></section></summary><div [...]
+    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt; + 'a,</div></h3></section></summary><div [...]
     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 = &amp;'a <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Ptr&gt;&gt;,</div></h4></section></summary><div class='docblock'>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/t [...]
     T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,
-    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt;,</div></h3></section></summary><div clas [...]
+    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt;,</div></h3></section></summary><div clas [...]
     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/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Ptr&gt;&gt;,</div></h4></section></summary><div class='docblock'>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/co [...]
     T: <a class="trait" href="../../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-1" class="associatedtype trait-impl"><a href="#associatedtype.Item-1" 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 [...]
     OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#486">source</a><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/night [...]
diff --git a/arrow/array/array/struct.GenericListArray.html b/arrow/array/array/struct.GenericListArray.html
index 7537ca1ff2..471e93cbe5 100644
--- a/arrow/array/array/struct.GenericListArray.html
+++ b/arrow/array/array/struct.GenericListArray.html
@@ -139,12 +139,12 @@ opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_arr
     OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#135">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
     OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#528">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
     OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#374">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lan [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#381">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lan [...]
-    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lan [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#381">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lan [...]
+    OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
     v: <a class="struct" href="../struct.GenericListArray.html" title="struct arrow::array::GenericListArray">GenericListArray</a>&lt;OffsetSize&gt;
 ) -&gt; <a class="struct" href="../struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id=" [...]
-    T: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/n [...]
+    T: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/n [...]
     OffsetSize: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#498">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/c [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="impl"><a href="#impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="anchor">§</a><h3 class="code-header">impl&lt [...]
diff --git a/arrow/array/array/struct.MapArray.html b/arrow/array/array/struct.MapArray.html
index 4bb5715d65..82b392226f 100644
--- a/arrow/array/array/struct.MapArray.html
+++ b/arrow/array/array/struct.MapArray.html
@@ -73,7 +73,7 @@ includes the overhead of the data structures that contain the pointers to the va
 opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="../struct.MapArray.html" title="struct arrow::array::MapArray">MapArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="../trait.ArrayAc [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="../struct.MapArray.html" title="struct arrow::array::MapArray">MapArray</a> as <a class="trait" href="../trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="../trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="../trait.ArrayAc [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MapArray" class="impl"><a href="#impl-RefUnwindSafe-for-MapArray" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/ [...]
     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/array/struct.NativeAdapter.html b/arrow/array/array/struct.NativeAdapter.html
index 0ba12bc065..393a0c8711 100644
--- a/arrow/array/array/struct.NativeAdapter.html
+++ b/arrow/array/array/struct.NativeAdapter.html
@@ -10,8 +10,8 @@ the type can be collected to <code>PrimitiveArray</code>.</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-Debug-for-NativeAdapter%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1161">source</a><a href="#impl-Debug-for-NativeAdapter%3CT%3E" class="anchor">§</a><h3 class="code-header">im [...]
     T: <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="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,
     &lt;T as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></summary><di [...]
-    T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1200">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a h [...]
-    T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1194">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a hre [...]
+    T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1200">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a hre [...]
+    T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1194">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a hre [...]
     &lt;T as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe" [...]
     &lt;T as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <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><sectio [...]
     &lt;T as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">Unwin [...]
diff --git a/arrow/array/array/struct.NullArray.html b/arrow/array/array/struct.NullArray.html
index 4754ddc06c..51be3dc210 100644
--- a/arrow/array/array/struct.NullArray.html
+++ b/arrow/array/array/struct.NullArray.html
@@ -23,7 +23,7 @@ This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">R
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#124">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class="fn" [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#220">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" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
+opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-NullArray" class="impl"><a href="#impl-RefUnwindSafe-for-NullArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org [...]
     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/array/struct.PrimitiveArray.html b/arrow/array/array/struct.PrimitiveArray.html
index c0107e37b9..9d2337e8d9 100644
--- a/arrow/array/array/struct.PrimitiveArray.html
+++ b/arrow/array/array/struct.PrimitiveArray.html
@@ -249,124 +249,124 @@ opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_arr
     T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#485">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href=" [...]
     T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1088">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="htt [...]
     T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="docblock"><p>Constructs a <code>PrimitiveArray</code> from an array data reference.</p>
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1371">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="../struct.ArrayData.html" title="struct arrow [...]
-    T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-57" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#972">source</a><a href="#method.from-57" class="anchor">§</a><h4 class="code-header">fn <a hr [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-36" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1371">source</a><a href="#method.from-36" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="../struct.ArrayData.html" title="struct arr [...]
+    T: <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-28" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#972">source</a><a href="#method.from-28" class="anchor">§</a><h4 class="code-header">fn <a hr [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.htm [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDate64Type+as+ArrowPrimi [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDate64Type+as+ArrowPrimi [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.htm [...]
 ) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDecimal128Type+as+ArrowP [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimi [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDecimal256Ty [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDecimal256Ty [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimi [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMicr [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMicr [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../.. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../.. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../da [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trai [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat32Type+as+ArrowP [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat32Type+as+ArrowP [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat64Type+as+ArrowP [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat64Type+as+ArrowP [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt16Type+as+ArrowPri [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt16Type+as+ArrowPri [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#a [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt32Type+as+ArrowPrimitive [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt32Type+as+ArrowPrimitive [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#a [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt64Type+as+ArrowPrimitive [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt64Type+as+ArrowPrimitive [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#a [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt8Type+as+ArrowPrimitiveT [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt8Type+as+ArrowPrimitiveT [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#asso [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalDayTimeType+as+ArrowPr [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalDayTimeType+as+ArrowPr [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/t [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href=".. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datat [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datat [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.Arro [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64 [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64 [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datat [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatype [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href=".. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href=".. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../.. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/t [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.htm [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt32Type+as+ArrowPrimi [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt32Type+as+ArrowPrimi [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.htm [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt64Type+as+ArrowPrimi [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt64Type+as+ArrowPrimi [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.htm [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt8Type+as+ArrowPrimit [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt8Type+as+ArrowPrimit [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../datatypes/trait.ArrowPrimitiveType.html#a [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate32Type+as+Arro [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate32Type+as+Arro [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::d [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate64Type+as+A [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate64Type+as+A [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::d [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal128Type+ [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal128Type+ [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="tr [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDec [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDec [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="tr [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDur [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDur [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPr [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPr [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimi [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.htm [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COpt [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COpt [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat32Type+ [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat32Type+ [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat64Type+ [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat64Type+ [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt16Type+as [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt16Type+as [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt32Type+as+Arrow [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt32Type+as+Arrow [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt64Type+as+Arrow [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt64Type+as+Arrow [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt8Type+as+ArrowP [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt8Type+as+ArrowP [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatyp [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalDayTimeType+a [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalDayTimeType+a [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../../datatypes/trait.Arro [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" tit [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveTy [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../../datatypes/trait.Arro [...]
 ) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../../datatypes/trait.Arro [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="imp [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPr [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::d [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt32Type+as+A [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt32Type+as+A [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::d [...]
-) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt64Type+as+A [...]
+) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt64Type+as+A [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::d [...]
 ) -&gt; <a class="struct" href="../struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt8Type+as+Ar [...]
     data: <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;&lt;<a class="struct" href="../../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a> as <a class="trait" href="../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
diff --git a/arrow/array/array/struct.RunArray.html b/arrow/array/array/struct.RunArray.html
index 364e20eccf..824cbffbe4 100644
--- a/arrow/array/array/struct.RunArray.html
+++ b/arrow/array/array/struct.RunArray.html
@@ -80,8 +80,8 @@ includes the overhead of the data structures that contain the pointers to the va
 opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
     R: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#71">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust [...]
     R: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#391">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
-    R: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#259">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
-    R: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#286">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.r [...]
+    R: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#259">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.r [...]
+    R: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#286">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
     T: <a class="trait" href="../../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="docblock"><p>Constructs a <code>RunArray</code> from an iterator of strings.</p>
 <h4 id="example"><a href="#example">Example:</a></h4>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{RunArray, PrimitiveArray, StringArray, types::Int16Type};
diff --git a/arrow/array/array/struct.StructArray.html b/arrow/array/array/struct.StructArray.html
index 20ecac615d..4ffd2f0804 100644
--- a/arrow/array/array/struct.StructArray.html
+++ b/arrow/array/array/struct.StructArray.html
@@ -95,7 +95,7 @@ This defaults to <code>0</code>. <a href="../trait.Array.html#tymethod.offset">R
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#388">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class="f [...]
 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#195">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 c [...]
-opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
+opposite of <a href="../trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-heade [...]
 <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>
diff --git a/arrow/array/array/struct.UnionArray.html b/arrow/array/array/struct.UnionArray.html
index 1ae943f0dd..efed5bf6ed 100644
--- a/arrow/array/array/struct.UnionArray.html
+++ b/arrow/array/array/struct.UnionArray.html
@@ -133,7 +133,7 @@ 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#415">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#449">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class="fn [...]
 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#195">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 c [...]
+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#195">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 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-1" 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-1" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     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 78b8114a34..1a7b9321e7 100644
--- a/arrow/array/array/trait.Array.html
+++ b/arrow/array/array/trait.Array.html
@@ -154,10 +154,10 @@ and therefore would not appear in <a href="../trait.Array.html#method.logical_nu
     O: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h4></section></summary><div class='docblock'>Downcast this to a <a href="../type.GenericBinaryArray.html" title="type arrow::array::GenericBinaryArray"><code>GenericBinaryArray</code></a> panicking if not possible</div></details><details class="toggle method-toggle" open><summary><section id="method.as_struct" class="method trait-impl"><a class="src rightsi [...]
     O: <a class="trait" href="../trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h4></section></summary><div class='docblock'>Downcast this to a <a href="../struct.GenericListArray.html" title="struct arrow::array::GenericListArray"><code>GenericListArray</code></a> panicking if not possible</div></details><details class="toggle method-toggle" open><summary><section id="method.as_fixed_size_binary" class="method trait-impl"><a class="sr [...]
     K: <a class="trait" href="../../datatypes/trait.ArrowDictionaryKeyType.html" title="trait arrow::datatypes::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,</div></h4></section></summary><div class='docblock'>Downcast this to a <a href="../struct.DictionaryArray.html" title="struct arrow::array::DictionaryArray"><code>DictionaryArray</code></a> panicking if not possible</div></details><details class="toggle method-toggle" open><summary><section id="method.as_any_dictionary" class= [...]
-    T: <a class="trait" href="../trait.Array.html" title="trait arrow::array::Array">Array</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#450">source</a><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymeth [...]
-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#239">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-for-dyn+Array" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#443">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 c [...]
+    T: <a class="trait" href="../trait.Array.html" title="trait arrow::array::Array">Array</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#450">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.e [...]
 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#239">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#443">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 c [...]
+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#239">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></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-Array-for-Arc%3Cdyn+Array%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#287">source</a><a href="#impl-Array-for-Arc%3Cdyn+Array%3E" class="ancho [...]
 </div><div class="impl-items"><section id="method.as_any" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#288">source</a><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">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> + 'static)</h4></section><section id="method.to_data [...]
     T: <a class="trait" href="../trait.Array.html" title="trait arrow::array::Array">Array</a>,</div></h3></section></summary><div class="impl-items"><section id="method.as_any-1" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#354">source</a><a href="#method.as_any-1" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.as_any" class="fn">as_any</a>(&amp;self) -&gt; &amp;(dyn <a class="trait" href="https://doc.rust-lang.or [...]
diff --git a/arrow/array/struct.ArrayData.html b/arrow/array/struct.ArrayData.html
index 6134c6d602..f92fc5a0b3 100644
--- a/arrow/array/struct.ArrayData.html
+++ b/arrow/array/struct.ArrayData.html
@@ -177,19 +177,19 @@ without recursing into child <a href="struct.ArrayData.html" title="struct arrow
 to determine buffer equality. This is cheaper than <code>PartialEq::eq</code> but may
 return false when the arrays are logically equal</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_builder" class="method"><a class="src rightside" href="../../src/arrow_data/data.rs.html#1487">source</a><h4 class="code-header">pub fn <a href="#method.into_builder" class="fn">into_builder</a>(self) -&gt; <a class="struct" href="struct.ArrayDataBuilder.html" title="struct arrow::array::ArrayDataBuilder">ArrayDataBuilder</a></h4></section></summary><div class="docblock"><p>Converts this <a 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-Clone-for-ArrayData" class="impl"><a class="src rightside" href="../../src/arrow_data/data.rs.html#217">source</a><a href="#impl-Clone-for-ArrayData" class="anchor">§</a><h3 class="code-header">impl <a 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-ArrayData" class="impl"><a class="src rightside" href="../../src/arrow_data/data.rs.html#217">source</a><a href="#impl-Clone-for-ArrayData" class="anchor">§</a><h3 class="code-header">impl <a class= [...]
     T: <a class="trait" href="../datatypes/trait.ArrowDictionaryKeyType.html" title="trait arrow::datatypes::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,</div></h3></section></summary><div class="docblock"><p>Constructs a <code>DictionaryArray</code> from an array data reference.</p>
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#571">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="struct.ArrayData.html" title="struct arrow::arra [...]
-    T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#491">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-15" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#374">source</a><a href="#method.from-15" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#571">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="struct.ArrayData.html" title="struct arrow::arra [...]
+    T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#491">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-9" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#374">source</a><a href="#method.from-9" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
     T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="docblock"><p>Constructs a <code>PrimitiveArray</code> from an array data reference.</p>
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1371">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="struct.ArrayData.html" title="struct arrow::array::A [...]
-    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#259">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
-    T: <a class="trait" href="../datatypes/trait.ArrowDictionaryKeyType.html" title="trait arrow::datatypes::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-12" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#619">source</a><a href="#method.from-12" class="anchor">§</a><h4 class="code-header">f [...]
-    T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-18" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#521">source</a><a href="#method.from-18" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-20" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#381">source</a><a href="#method.from-20" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
-    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-21" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#972">source</a><a href="#method.from-21" class="anchor">§</a><h4 class="code-header">fn <a href="ht [...]
-    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-22" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#286">source</a><a href="#method.from-22" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-14" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1371">source</a><a href="#method.from-14" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="struct.ArrayData.html" title="struct arrow::ar [...]
+    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-19" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#259">source</a><a href="#method.from-19" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
+    T: <a class="trait" href="../datatypes/trait.ArrowDictionaryKeyType.html" title="trait arrow::datatypes::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-15" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#619">source</a><a href="#method.from-15" class="anchor">§</a><h4 class="code-header">f [...]
+    T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-20" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#521">source</a><a href="#method.from-20" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-18" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#381">source</a><a href="#method.from-18" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-12" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#972">source</a><a href="#method.from-12" class="anchor">§</a><h4 class="code-header">fn <a href="ht [...]
+    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-17" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#286">source</a><a href="#method.from-17" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust- [...]
 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#239">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-ToPyArrow-for-ArrayData" class="impl"><a class="src rightside" href="../../src/arrow/pyarrow.rs.html#294-310">source</a><a href="#impl-ToPyArrow-for-ArrayData" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../pyarrow/trait.ToPyArrow.html" title="trait arrow::pyarrow::ToPyArrow">ToPyArrow</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 [...]
diff --git a/arrow/array/struct.BooleanArray.html b/arrow/array/struct.BooleanArray.html
index 978b9ec79f..2822d8e313 100644
--- a/arrow/array/struct.BooleanArray.html
+++ b/arrow/array/struct.BooleanArray.html
@@ -80,7 +80,7 @@ includes the overhead of the data structures that contain the pointers to the va
 opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="struct.BooleanArray.html" title="struct arrow::array::BooleanArray">BooleanArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="trait.ArrayAc [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="struct.BooleanArray.html" title="struct arrow::array::BooleanArray">BooleanArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="trait.ArrayAc [...]
     Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>&gt;&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><s [...]
     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 = Ptr&gt;,</div></h4></section></summary><div class='docblock'>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.FromIterator.html#tymethod.from_iter">Read more</a></div></details></div></details><details class="toggle implementors-toggle" [...]
 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#239">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/struct.FixedSizeBinaryArray.html b/arrow/array/struct.FixedSizeBinaryArray.html
index 5078abbadf..200f5753c4 100644
--- a/arrow/array/struct.FixedSizeBinaryArray.html
+++ b/arrow/array/struct.FixedSizeBinaryArray.html
@@ -132,8 +132,8 @@ opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array:
 ) -&gt; &lt;&amp;'a <a class="struct" href="struct.FixedSizeBinaryArray.html" title="struct arrow::array::FixedSizeBinaryArray">FixedSizeBinaryArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="struct.FixedSizeBinaryArray.html" title="struct arrow::array::FixedSizeBinaryArray">FixedSizeBinaryArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="struct.FixedSizeListArray.html" title="struct ar [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="struct.FixedSizeBinaryArray.html" title="struct arrow::array::FixedSizeBinaryArray">FixedSizeBinaryArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="struct.FixedSizeListArray.html" title="struc [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="htt [...]
     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/struct.FixedSizeListArray.html b/arrow/array/struct.FixedSizeListArray.html
index ac88a968f6..50853f3709 100644
--- a/arrow/array/struct.FixedSizeListArray.html
+++ b/arrow/array/struct.FixedSizeListArray.html
@@ -130,15 +130,15 @@ This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#413">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class [...]
 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#195">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 class=" [...]
-opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
+opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a h [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a h [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;<a class="struct" href="struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="tra [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="struct.FixedSizeListArray.html" title="struct ar [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
+) -&gt; &lt;<a class="struct" href="struct.FixedSizeListArray.html" title="struct arrow::array::FixedSizeListArray">FixedSizeListArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="tra [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="struct.FixedSizeListArray.html" title="struc [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeListArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeListArray" 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 [...]
diff --git a/arrow/array/struct.GenericByteArray.html b/arrow/array/struct.GenericByteArray.html
index 3f8feaf083..6d642ecd8a 100644
--- a/arrow/array/struct.GenericByteArray.html
+++ b/arrow/array/struct.GenericByteArray.html
@@ -147,33 +147,33 @@ opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array:
 ) -&gt; &lt;&amp;'a <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;T&gt; as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> < [...]
     T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#95">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/n [...]
     T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#418">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nigh [...]
-    T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#491">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ni [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#79">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
+    T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#491">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#79">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.o [...]
     v: <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericBinaryType.html" title="struct arrow::datatypes::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt;&gt;
 ) -&gt; <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#124">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#124">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
     value: <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;
 ) -&gt; <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericBinaryType.html" title="struct arrow::datatypes::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
     T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-9" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#521">source</a><a href="#method.from-9" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.o [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
     v: <a class="struct" href="struct.GenericListArray.html" title="struct arrow::array::GenericListArray">GenericListArray</a>&lt;OffsetSize&gt;
 ) -&gt; <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
-    T: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-10" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#110">source</a><a href="#method.from-10" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#91">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#104">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    T: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#110">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#91">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#104">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ni [...]
     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/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;
 ) -&gt; <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericBinaryType.html" title="struct arrow::datatypes::GenericBinaryType">GenericBinaryType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#85">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#97">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#85">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#97">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
     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/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;
 ) -&gt; <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#103">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.or [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-10" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#103">source</a><a href="#method.from-10" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
     T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,
-    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt; + 'a,</div></h3></section></summary><div class [...]
+    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt; + 'a,</div></h3></section></summary><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 = &amp;'a <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Ptr&gt;&gt;,</div></h4></section></summary><div class='docblock'>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/t [...]
     T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,
-    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt;,</div></h3></section></summary><div class="imp [...]
+    Ptr: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;&lt;T as <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ByteArrayType.html#associatedtype.Native" title="type arrow::datatypes::ByteArrayType::Native">Native</a>&gt;,</div></h3></section></summary><div class="imp [...]
     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/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Ptr&gt;&gt;,</div></h4></section></summary><div class='docblock'>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/co [...]
     T: <a class="trait" href="../datatypes/trait.ByteArrayType.html" title="trait arrow::datatypes::ByteArrayType">ByteArrayType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-1" class="associatedtype trait-impl"><a href="#associatedtype.Item-1" 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" c [...]
     OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#486">source</a><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/cor [...]
diff --git a/arrow/array/struct.GenericListArray.html b/arrow/array/struct.GenericListArray.html
index 92fbe585b1..0b2449127c 100644
--- a/arrow/array/struct.GenericListArray.html
+++ b/arrow/array/struct.GenericListArray.html
@@ -139,12 +139,12 @@ opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array:
     OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#135">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ni [...]
     OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#528">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightl [...]
     OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#374">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nigh [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#381">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
-    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#394">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#381">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/ [...]
+    OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/string_array.rs.html#71">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
     v: <a class="struct" href="struct.GenericListArray.html" title="struct arrow::array::GenericListArray">GenericListArray</a>&lt;OffsetSize&gt;
 ) -&gt; <a class="struct" href="struct.GenericByteArray.html" title="struct arrow::array::GenericByteArray">GenericByteArray</a>&lt;<a class="struct" href="../datatypes/struct.GenericStringType.html" title="struct arrow::datatypes::GenericStringType">GenericStringType</a>&lt;OffsetSize&gt;&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-F [...]
-    T: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly [...]
+    T: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/binary_array.rs.html#116">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly [...]
     OffsetSize: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#498">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cm [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="impl"><a href="#impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="anchor">§</a><h3 class="code-header">impl&lt [...]
diff --git a/arrow/array/struct.MapArray.html b/arrow/array/struct.MapArray.html
index f1a88e3e1a..3cff700f23 100644
--- a/arrow/array/struct.MapArray.html
+++ b/arrow/array/struct.MapArray.html
@@ -73,7 +73,7 @@ includes the overhead of the data structures that contain the pointers to the va
 opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     &amp;self,
     index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&gt; &lt;&amp;'a <a class="struct" href="struct.MapArray.html" title="struct arrow::array::MapArray">MapArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="trait.ArrayAccessor.html# [...]
+) -&gt; &lt;&amp;'a <a class="struct" href="struct.MapArray.html" title="struct arrow::array::MapArray">MapArray</a> as <a class="trait" href="trait.ArrayAccessor.html" title="trait arrow::array::ArrayAccessor">ArrayAccessor</a>&gt;::<a class="associatedtype" href="trait.ArrayAccessor.html#associatedtype.Item" title="type arrow::array::ArrayAccessor::Item">Item</a></h4></section></summary><div class='docblock'>Returns the element at index <code>i</code> <a href="trait.ArrayAccessor.html# [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MapArray" class="impl"><a href="#impl-RefUnwindSafe-for-MapArray" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/ [...]
     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/struct.NativeAdapter.html b/arrow/array/struct.NativeAdapter.html
index f4d0b08b96..063d3922ac 100644
--- a/arrow/array/struct.NativeAdapter.html
+++ b/arrow/array/struct.NativeAdapter.html
@@ -10,8 +10,8 @@ the type can be collected to <code>PrimitiveArray</code>.</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-Debug-for-NativeAdapter%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1161">source</a><a href="#impl-Debug-for-NativeAdapter%3CT%3E" class="anchor">§</a><h3 class="code-header">impl& [...]
     T: <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="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,
     &lt;T as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></summary><div clas [...]
-    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1200">source</a><a href="#method.from-11" class="anchor">§</a><h4 class="code-header">fn <a href="h [...]
-    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1194">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="htt [...]
+    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1200">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="htt [...]
+    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1194">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="htt [...]
     &lt;T as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUn [...]
     &lt;T as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <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=" [...]
     &lt;T as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>: <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< [...]
diff --git a/arrow/array/struct.NullArray.html b/arrow/array/struct.NullArray.html
index 18187a9082..c551a14038 100644
--- a/arrow/array/struct.NullArray.html
+++ b/arrow/array/struct.NullArray.html
@@ -23,7 +23,7 @@ This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#124">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">get_a [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#220">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="https: [...]
-opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
+opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-NullArray" class="impl"><a href="#impl-RefUnwindSafe-for-NullArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org [...]
     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/struct.PrimitiveArray.html b/arrow/array/struct.PrimitiveArray.html
index cb46eb83ea..29e2c31b0e 100644
--- a/arrow/array/struct.PrimitiveArray.html
+++ b/arrow/array/struct.PrimitiveArray.html
@@ -249,124 +249,124 @@ opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array:
     T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#485">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https: [...]
     T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1088">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://d [...]
     T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="docblock"><p>Constructs a <code>PrimitiveArray</code> from an array data reference.</p>
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1371">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="struct.ArrayData.html" title="struct arrow::arra [...]
-    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-57" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#972">source</a><a href="#method.from-57" class="anchor">§</a><h4 class="code-header">fn <a href="ht [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-36" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1371">source</a><a href="#method.from-36" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="struct.ArrayData.html" title="struct arrow::ar [...]
+    T: <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-28" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#972">source</a><a href="#method.from-28" class="anchor">§</a><h4 class="code-header">fn <a href="ht [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associa [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDate64Type+as+ArrowPrimitiveTy [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDate64Type+as+ArrowPrimitiveTy [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associa [...]
 ) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDecimal128Type+as+ArrowPrimiti [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDecimal256Type+as+ [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDecimal256Type+as+ [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMicrosecon [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMicrosecon [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatype [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatype [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/t [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPr [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat1 [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat1 [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#asso [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat32Type+as+ArrowPrimiti [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat32Type+as+ArrowPrimiti [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#asso [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat64Type+as+ArrowPrimiti [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CFloat64Type+as+ArrowPrimiti [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#asso [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt16Type+as+ArrowPrimitive [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt16Type+as+ArrowPrimitive [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associated [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt32Type+as+ArrowPrimitiveType%3 [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt32Type+as+ArrowPrimitiveType%3 [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associated [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt64Type+as+ArrowPrimitiveType%3 [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt64Type+as+ArrowPrimitiveType%3 [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associated [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt8Type+as+ArrowPrimitiveType%3E [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt8Type+as+ArrowPrimitiveType%3E [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associatedtyp [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalDayTimeType+as+ArrowPrimitiv [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalDayTimeType+as+ArrowPrimitiv [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.Arro [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CInt [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datat [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trai [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trai [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64Micros [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64Micros [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trai [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.A [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datat [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datat [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatype [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.Arro [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUIn [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUIn [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associa [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt32Type+as+ArrowPrimitiveTy [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt32Type+as+ArrowPrimitiveTy [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associa [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt64Type+as+ArrowPrimitiveTy [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt64Type+as+ArrowPrimitiveTy [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associa [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt8Type+as+ArrowPrimitiveTyp [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CUInt8Type+as+ArrowPrimitiveTyp [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../datatypes/trait.ArrowPrimitiveType.html#associated [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate32Type+as+ArrowPrimi [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate32Type+as+ArrowPrimi [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatyp [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate64Type+as+ArrowPr [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date32Type.html" title="struct arrow::datatypes::Date32Type">Date32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDate64Type+as+ArrowPr [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatyp [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal128Type+as+Arr [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Date64Type.html" title="struct arrow::datatypes::Date64Type">Date64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal128Type+as+Arr [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait ar [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal25 [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal128Type.html" title="struct arrow::datatypes::Decimal128Type">Decimal128Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal25 [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait ar [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationM [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Decimal256Type.html" title="struct arrow::datatypes::Decimal256Type">Decimal256Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationM [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMicrosecondType.html" title="struct arrow::datatypes::DurationMicrosecondType">DurationMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationMillisecondType.html" title="struct arrow::datatypes::DurationMillisecondType">DurationMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveTy [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationNanosecondType.html" title="struct arrow::datatypes::DurationNanosecondType">DurationNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" tit [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.DurationSecondType.html" title="struct arrow::datatypes::DurationSecondType">DurationSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat32Type+as+Arr [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float16Type.html" title="struct arrow::datatypes::Float16Type">Float16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat32Type+as+Arr [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat64Type+as+Arr [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float32Type.html" title="struct arrow::datatypes::Float32Type">Float32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat64Type+as+Arr [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::data [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt16Type+as+Arrow [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Float64Type.html" title="struct arrow::datatypes::Float64Type">Float64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt16Type+as+Arrow [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes: [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt32Type+as+ArrowPrimit [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int16Type.html" title="struct arrow::datatypes::Int16Type">Int16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt32Type+as+ArrowPrimit [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes: [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt64Type+as+ArrowPrimit [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int32Type.html" title="struct arrow::datatypes::Int32Type">Int32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt64Type+as+ArrowPrimit [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes: [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt8Type+as+ArrowPrimiti [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int64Type.html" title="struct arrow::datatypes::Int64Type">Int64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CInt8Type+as+ArrowPrimiti [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::Ar [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalDayTimeType+as+Arro [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Int8Type.html" title="struct arrow::datatypes::Int8Type">Int8Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalDayTimeType+as+Arro [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalDayTimeType.html" title="struct arrow::datatypes::IntervalDayTimeType">IntervalDayTimeType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimi [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalMonthDayNanoType.html" title="struct arrow::datatypes::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.IntervalYearMonthType.html" title="struct arrow::datatypes::IntervalYearMonthType">IntervalYearMonthType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32MillisecondType.html" title="struct arrow::datatypes::Time32MillisecondType">Time32MillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="tr [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTim [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time32SecondType.html" title="struct arrow::datatypes::Time32SecondType">Time32SecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTim [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType. [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64MicrosecondType.html" title="struct arrow::datatypes::Time64MicrosecondType">Time64MicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.htm [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COpt [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.Time64NanosecondType.html" title="struct arrow::datatypes::Time64NanosecondType">Time64NanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COpt [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimi [...]
 ) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMicrosecondType.html" title="struct arrow::datatypes::TimestampMicrosecondType">TimestampMicrosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimi [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampMillisecondType.html" title="struct arrow::datatypes::TimestampMillisecondType">TimestampMillisecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiv [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampNanosecondType.html" title="struct arrow::datatypes::TimestampNanosecondType">TimestampNanosecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.TimestampSecondType.html" title="struct arrow::datatypes::TimestampSecondType">TimestampSecondType</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatyp [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt32Type+as+ArrowPr [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt16Type.html" title="struct arrow::datatypes::UInt16Type">UInt16Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt32Type+as+ArrowPr [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatyp [...]
-) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt64Type+as+ArrowPr [...]
+) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt32Type.html" title="struct arrow::datatypes::UInt32Type">UInt32Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt64Type+as+ArrowPr [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatyp [...]
 ) -&gt; <a class="struct" href="struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;<a class="struct" href="../datatypes/struct.UInt64Type.html" title="struct arrow::datatypes::UInt64Type">UInt64Type</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt8Type+as+ArrowPri [...]
     data: <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;&lt;<a class="struct" href="../datatypes/struct.UInt8Type.html" title="struct arrow::datatypes::UInt8Type">UInt8Type</a> as <a class="trait" href="../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes: [...]
diff --git a/arrow/array/struct.RecordBatch.html b/arrow/array/struct.RecordBatch.html
index 8cdff92b0f..64db66be62 100644
--- a/arrow/array/struct.RecordBatch.html
+++ b/arrow/array/struct.RecordBatch.html
@@ -139,7 +139,7 @@ testing.</p>
   (<span class="string">"b"</span>, b, <span class="bool-val">true</span>),
 ]);</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#467">source</a><h4 class="code-header">pub fn <a href="#method.get_array_memory_size" class="fn">get_array_memory_size</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 [...]
-</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-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">im [...]
+</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-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">im [...]
 <h5 id="panics-3"><a href="#panics-3">Panics</a></h5>
 <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 [...]
diff --git a/arrow/array/struct.RunArray.html b/arrow/array/struct.RunArray.html
index 9b068dc5ea..c6bc634297 100644
--- a/arrow/array/struct.RunArray.html
+++ b/arrow/array/struct.RunArray.html
@@ -80,8 +80,8 @@ includes the overhead of the data structures that contain the pointers to the va
 opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#71">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang. [...]
     R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#391">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org [...]
-    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#259">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.o [...]
-    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#286">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#259">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-la [...]
+    R: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#286">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.o [...]
     T: <a class="trait" href="../datatypes/trait.RunEndIndexType.html" title="trait arrow::datatypes::RunEndIndexType">RunEndIndexType</a>,</div></h3></section></summary><div class="docblock"><p>Constructs a <code>RunArray</code> from an iterator of strings.</p>
 <h4 id="example"><a href="#example">Example:</a></h4>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{RunArray, PrimitiveArray, StringArray, types::Int16Type};
diff --git a/arrow/array/struct.StructArray.html b/arrow/array/struct.StructArray.html
index 5a2e2c6103..626e020201 100644
--- a/arrow/array/struct.StructArray.html
+++ b/arrow/array/struct.StructArray.html
@@ -95,7 +95,7 @@ This defaults to <code>0</code>. <a href="trait.Array.html#tymethod.offset">Read
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#388">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">get [...]
 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#195">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 class=" [...]
-opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
+opposite of <a href="trait.Array.html#method.is_null" title="method arrow_array::array::Array::is_null::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#256">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a  [...]
 <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>
diff --git a/arrow/array/struct.UnionArray.html b/arrow/array/struct.UnionArray.html
index 210f26f92f..761deb9f74 100644
--- a/arrow/array/struct.UnionArray.html
+++ b/arrow/array/struct.UnionArray.html
@@ -133,7 +133,7 @@ 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#415">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.rus [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#449">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">get_ [...]
 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#195">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 class=" [...]
+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#195">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 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-1" 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-1" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     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/trait.Array.html b/arrow/array/trait.Array.html
index 29f559a498..553338cede 100644
--- a/arrow/array/trait.Array.html
+++ b/arrow/array/trait.Array.html
@@ -154,10 +154,10 @@ and therefore would not appear in <a href="trait.Array.html#method.logical_nulls
     O: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h4></section></summary><div class='docblock'>Downcast this to a <a href="type.GenericBinaryArray.html" title="type arrow::array::GenericBinaryArray"><code>GenericBinaryArray</code></a> panicking if not possible</div></details><details class="toggle method-toggle" open><summary><section id="method.as_struct" class="method trait-impl"><a class="src rightside" hr [...]
     O: <a class="trait" href="trait.OffsetSizeTrait.html" title="trait arrow::array::OffsetSizeTrait">OffsetSizeTrait</a>,</div></h4></section></summary><div class='docblock'>Downcast this to a <a href="struct.GenericListArray.html" title="struct arrow::array::GenericListArray"><code>GenericListArray</code></a> panicking if not possible</div></details><details class="toggle method-toggle" open><summary><section id="method.as_fixed_size_binary" class="method trait-impl"><a class="src righ [...]
     K: <a class="trait" href="../datatypes/trait.ArrowDictionaryKeyType.html" title="trait arrow::datatypes::ArrowDictionaryKeyType">ArrowDictionaryKeyType</a>,</div></h4></section></summary><div class='docblock'>Downcast this to a <a href="struct.DictionaryArray.html" title="struct arrow::array::DictionaryArray"><code>DictionaryArray</code></a> panicking if not possible</div></details><details class="toggle method-toggle" open><summary><section id="method.as_any_dictionary" class="metho [...]
-    T: <a class="trait" href="trait.Array.html" title="trait arrow::array::Array">Array</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#450">source</a><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" [...]
-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#239">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-for-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#443">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 core [...]
+    T: <a class="trait" href="trait.Array.html" title="trait arrow::array::Array">Array</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#450">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" cla [...]
 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#239">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#443">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 core [...]
+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#239">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></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-Array-for-Arc%3Cdyn+Array%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#287">source</a><a href="#impl-Array-for-Arc%3Cdyn+Array%3E" class="anchor"> [...]
 </div><div class="impl-items"><section id="method.as_any" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#288">source</a><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">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> + 'static)</h4></section><section id="method.to_data" c [...]
     T: <a class="trait" href="trait.Array.html" title="trait arrow::array::Array">Array</a>,</div></h3></section></summary><div class="impl-items"><section id="method.as_any-1" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#354">source</a><a href="#method.as_any-1" class="anchor">§</a><h4 class="code-header">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/nigh [...]
diff --git a/arrow/pyarrow/struct.ArrowException.html b/arrow/pyarrow/struct.ArrowException.html
index 500fcd18f8..2ffaf06b1e 100644
--- a/arrow/pyarrow/struct.ArrowException.html
+++ b/arrow/pyarrow/struct.ArrowException.html
@@ -417,7 +417,7 @@ of the pointer or decrease the reference count (e.g. with <a href="crate::ffi::P
 </div></details><details class="toggle method-toggle" open><summary><section id="method.py_super" class="method"><h4 class="code-header">pub fn <a href="#method.py_super" class="fn">py_super</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;&amp;PySuper, PyErr&gt;</h4></section></summary><div class="docblock"><p>Return a proxy object that delegates method calls to a parent or sibling  [...]
 <p>This is equivalent to the Python expression <code>super()</code></p>
 </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-AsPyPointer-for-ArrowException" class="impl"><a class="src rightside" href="../../src/arrow/pyarrow.rs.html#77">source</a><a href="#impl-AsPyPointer-for-ArrowException" class="anchor">§</a><h3 class="code-header">impl AsPyPo [...]
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsRef%3CPyAny%3E-for-ArrowException" class="impl"><a class="src rightside" href="../../src/arrow/pyarrow.rs.html#77">source</a><a href="#impl-AsRef%3CPyAny%3E-for-ArrowException" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;PyAny&gt; for <a cla [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsRef%3CPyAny%3E-for-ArrowException" class="impl"><a class="src rightside" href="../../src/arrow/pyarrow.rs.html#77">source</a><a href="#impl-AsRef%3CPyAny%3E-for-ArrowException" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;PyAny&gt; for <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/record_batch/struct.RecordBatch.html b/arrow/record_batch/struct.RecordBatch.html
index e62829f71d..00a435b193 100644
--- a/arrow/record_batch/struct.RecordBatch.html
+++ b/arrow/record_batch/struct.RecordBatch.html
@@ -139,7 +139,7 @@ testing.</p>
   (<span class="string">"b"</span>, b, <span class="bool-val">true</span>),
 ]);</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#467">source</a><h4 class="code-header">pub fn <a href="#method.get_array_memory_size" class="fn">get_array_memory_size</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 [...]
-</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-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">im [...]
+</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-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">im [...]
 <h5 id="panics-3"><a href="#panics-3">Panics</a></h5>
 <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 [...]
diff --git a/arrow_arith/numeric/enum.Op.html b/arrow_arith/numeric/enum.Op.html
index e0bb0d54c3..55bc4720ca 100644
--- a/arrow_arith/numeric/enum.Op.html
+++ b/arrow_arith/numeric/enum.Op.html
@@ -9,7 +9,7 @@
     Rem,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An enumeration of arithmetic operations</p>
 <p>This allows sharing the type dispatch logic across the various kernels</p>
-</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.AddWrapping" class="variant"><a href="#variant.AddWrapping" class="anchor">§</a><h3 class="code-header">AddWrapping</h3></section><section id="variant.Add" class="variant"><a href="#variant.Add" class="anchor">§</a><h3 class="code-header">Add</h3></section><section id="variant.SubWrapping" class="variant"><a href="#variant.SubWr [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.AddWrapping" class="variant"><a href="#variant.AddWrapping" class="anchor">§</a><h3 class="code-header">AddWrapping</h3></section><section id="variant.Add" class="variant"><a href="#variant.Add" class="anchor">§</a><h3 class="code-header">Add</h3></section><section id="variant.SubWrapping" class="variant"><a href="#variant.SubWr [...]
     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/arithmetic/trait.ArrowNativeTypeOp.html b/arrow_array/arithmetic/trait.ArrowNativeTypeOp.html
index 5417d34e63..f8b00da8e8 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, ArrowError&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, <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.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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&gt;</h4></section></summary> [...]
+</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_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, ArrowError&gt;</h4></section></summary> [...]
+</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_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, ArrowError&gt;</h4></section></summary> [...]
+</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_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, ArrowError&gt;</h4></section></summary> [...]
+</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_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, ArrowError&gt;</h4></section></summary><div class= [...]
+</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_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 7805ea3324..5f374199bf 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/binary_array/type.GenericBinaryArray.html b/arrow_array/array/binary_array/type.GenericBinaryArray.html
index 33e2b6f0a9..12ac3a72f5 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" ty [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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. [...]
 </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 [...]
@@ -18,6 +18,6 @@
 ) -&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 href="#safety">Safety</a></h5>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</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-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 [...]
+</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%3CGenericStringType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/binary [...]
 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#239">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></div><script src="../../../type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js" data-self-path="arrow_array::array::binary_array::GenericBinaryArray" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/array/binary_array/type.LargeBinaryArray.html b/arrow_array/array/binary_array/type.LargeBinaryArray.html
index 7371706aac..6c3477ce9b 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/boolean_array/struct.BooleanArray.html b/arrow_array/array/boolean_array/struct.BooleanArray.html
index ae7a63a4b6..598f6cd13f 100644
--- a/arrow_array/array/boolean_array/struct.BooleanArray.html
+++ b/arrow_array/array/boolean_array/struct.BooleanArray.html
@@ -72,13 +72,13 @@ 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; ArrayD [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/boolean_array.rs.html#309-311">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" cla [...]
 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#195-197">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;  [...]
-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#256-258">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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-BooleanArray" class="impl"><a href="#impl-RefUnwindSafe-for-BooleanArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-la [...]
     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/array/byte_array/struct.GenericByteArray.html b/arrow_array/array/byte_array/struct.GenericByteArray.html
index 8d7d4e9481..8bf74392ec 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="fo [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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><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><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 href="#safety">Safety</a></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, 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>
+) -&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  [...]
 <h5 id="errors"><a href="#errors">Errors</a></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 href="#performance">Performance</a></h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -115,18 +115,18 @@ 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, 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 [...]
+) -&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 [...]
 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; ArrayData [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/byte_array.rs.html#473-475">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class= [...]
 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#195-197">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;  [...]
-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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
-    Ptr: <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; + 'a,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter" class="method trait-impl"><a class="src [...]
-    Ptr: <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;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter-1" class="method trait-impl"><a class="src ri [...]
+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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
+    Ptr: <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; + 'a,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter-1" class="method trait-impl"><a class="s [...]
+    Ptr: <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;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter" class="method trait-impl"><a class="src righ [...]
     &lt;T 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>: <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 [...]
     &lt;T 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>: <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-Gen [...]
     &lt;T 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>: <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></sectio [...]
diff --git a/arrow_array/array/dictionary_array/struct.DictionaryArray.html b/arrow_array/array/dictionary_array/struct.DictionaryArray.html
index dfa86928c4..dd84de6167 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type= [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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>,
     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: 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 [...]
+</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 [...]
 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, ArrowError&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, <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
 (indexes into the dictionary) and values (dictionary)
 array.</p>
 <h5 id="errors"><a href="#errors">Errors</a></h5>
@@ -85,7 +85,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#359-361">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#364-366">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_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#364-366">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.len" class="method"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#369-371">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#374-376">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#379-381">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 [...]
@@ -162,14 +162,14 @@ 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#986-1005">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#691-693">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; Arr [...]
+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#691-693">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#719-721">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 [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#752-756">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size"  [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#220-222">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" hr [...]
-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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#571-615">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: ArrayData) -&gt; Self</h4></section></summary><div class='docblock'>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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#571-615">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="../../../arrow_data/data/struct.ArrayData.htm [...]
 <h4 id="example-2"><a href="#example-2">Example:</a></h4>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{DictionaryArray, PrimitiveArray, StringArray, types::Int8Type};
 
diff --git a/arrow_array/array/dictionary_array/struct.TypedDictionaryArray.html b/arrow_array/array/dictionary_array/struct.TypedDictionaryArray.html
index 55baba63c4..0565b686af 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#808-818">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#815-817">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#820-872">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#825-827">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; Arr [...]
+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#825-827">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#853-855">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 [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/dictionary_array.rs.html#869-871">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size"  [...]
diff --git a/arrow_array/array/dictionary_array/type.Int16DictionaryArray.html b/arrow_array/array/dictionary_array/type.Int16DictionaryArray.html
index 4f6c91a6af..3fae05e895 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 e19392fd9f..44e7f516b0 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 b043f79d9c..95568d3f6e 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 9a7b625c55..d13e819945 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 e8b38ed911..77a9615c7d 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 89551afaea..94963a4468 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 0dfcd0806a..18615f5332 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 589dfc8545..9384d1b25d 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 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 b5ba60d1cc..a9d5b210d8 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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,14 +22,14 @@ 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: 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  [...]
+</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 [...]
 <h5 id="panics"><a href="#panics">Panics</a></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.try_new" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#77-105">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></h5>
 <ul>
 <li><code>size &lt; 0</code></li>
@@ -58,7 +58,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#189-191">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#194-209">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#236-307">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#236-307">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
@@ -79,7 +79,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#333-384">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, ArrowError&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, <a class="enum" href="../../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&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
@@ -99,7 +99,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 href="#errors-2">Errors</a></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#403-450">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 [...]
+</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#403-450">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 [...]
     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 href="#examples-3">Examples</a></h5>
@@ -114,14 +114,14 @@ 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#453-455">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#564-612">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#569-571">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#569-571">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#597-599">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" 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.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory [...]
 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#195-197">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;  [...]
-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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../fixed_size_list_array/struct.FixedSize [...]
+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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../fixed_size_list_array/struct.Fixed [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="htt [...]
     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/array/fixed_size_list_array/struct.FixedSizeListArray.html b/arrow_array/array/fixed_size_list_array/struct.FixedSizeListArray.html
index d956eed431..c084ddc1ed 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Reg [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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,
+</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>,
     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 href="#panics">Panics</a></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-198">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    field: FieldRef,
+    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/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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></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#208-217">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 [...]
+</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#208-217">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 [...]
 <h5 id="panics-1"><a href="#panics-1">Panics</a></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#220-226">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.into_parts" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#220-226">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.values" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#229-231">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#234-236">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_type" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#234-236">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" class="method"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#239-242">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#248-250">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,14 +124,14 @@ 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#330-332">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#368-420">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#373-375">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#373-375">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#401-403">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_list_array.rs.html#413-419">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_s [...]
 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#195-197">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;  [...]
-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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="struct.FixedSizeListArray.html" title="st [...]
+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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="struct.FixedSizeListArray.html" title [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeListArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeListArray" 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 [...]
diff --git a/arrow_array/array/fn.get_offsets.html b/arrow_array/array/fn.get_offsets.html
index dddb92fd1c..f346aae20d 100644
--- a/arrow_array/array/fn.get_offsets.html
+++ b/arrow_array/array/fn.get_offsets.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="Helper function that gets offset from an `ArrayData`"><title>get_offsets in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff [...]
+<!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="Helper function that gets offset from an `ArrayData`"><title>get_offsets in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff [...]
 <h2 id="safety"><a href="#safety">Safety</a></h2>
 <ul>
 <li>ArrayData must contain a valid [<code>OffsetBuffer</code>] as its first buffer</li>
diff --git a/arrow_array/array/fn.make_array.html b/arrow_array/array/fn.make_array.html
index c84ece1e6d..6cb69c270c 100644
--- a/arrow_array/array/fn.make_array.html
+++ b/arrow_array/array/fn.make_array.html
@@ -1,3 +1,3 @@
-<!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="Constructs an array using the input `data`. Returns a reference-counted `Array` instance."><title>make_array in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
+<!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="Constructs an array using the input `data`. Returns a reference-counted `Array` instance."><title>make_array in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
 Returns a reference-counted <code>Array</code> instance.</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/array/fn.new_empty_array.html b/arrow_array/array/fn.new_empty_array.html
index 335c9e0009..f520449222 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=".. [...]
+<!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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=".. [...]
 
 <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 575c36ff9e..2154dea65e 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link re [...]
+<!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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link re [...]
 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/index.html b/arrow_array/array/index.html
index ad45f6d850..ebfc685d87 100644
--- a/arrow_array/array/index.html
+++ b/arrow_array/array/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="The concrete array definitions"><title>arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.fil [...]
 </div></details><h2 id="reexports" class="section-header"><a href="#reexports">Re-exports</a></h2><ul class="item-table"><li><div class="item-name" id="reexport.ArrowPrimitiveType"><code>pub use crate::types::<a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>;</code></div></li></ul><h2 id="modules" class="section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-na [...]
 (e.g. <code>[&quot;A&quot;, &quot;B&quot;]</code>).</div></li><li><div class="item-name"><a class="struct" href="struct.GenericByteArray.html" title="struct arrow_array::array::GenericByteArray">GenericByteArray</a></div><div class="desc docblock-short">An array of <a href="https://arrow.apache.org/docs/format/Columnar.html#variable-size-binary-layout">variable length byte arrays</a></div></li><li><div class="item-name"><a class="struct" href="struct.GenericListArray.html" title="struct  [...]
-(e.g. <code>[&quot;A&quot;, &quot;B&quot;, &quot;C&quot;]</code>).</div></li><li><div class="item-name"><a class="struct" href="struct.MapArray.html" title="struct arrow_array::array::MapArray">MapArray</a></div><div class="desc docblock-short">An array of key-value maps</div></li><li><div class="item-name"><a class="struct" href="struct.NativeAdapter.html" title="struct arrow_array::array::NativeAdapter">NativeAdapter</a></div><div class="desc docblock-short">An optional primitive value [...]
+(e.g. <code>[&quot;A&quot;, &quot;B&quot;, &quot;C&quot;]</code>).</div></li><li><div class="item-name"><a class="struct" href="struct.MapArray.html" title="struct arrow_array::array::MapArray">MapArray</a></div><div class="desc docblock-short">An array of key-value maps</div></li><li><div class="item-name"><a class="struct" href="struct.NativeAdapter.html" title="struct arrow_array::array::NativeAdapter">NativeAdapter</a></div><div class="desc docblock-short">An optional primitive value [...]
 Returns a reference-counted <code>Array</code> instance.</div></li><li><div class="item-name"><a class="fn" href="fn.new_empty_array.html" title="fn arrow_array::array::new_empty_array">new_empty_array</a></div><div class="desc docblock-short">Creates a new empty array</div></li><li><div class="item-name"><a class="fn" href="fn.new_null_array.html" title="fn arrow_array::array::new_null_array">new_null_array</a></div><div class="desc docblock-short">Creates a new array of <code>data_type [...]
 entirely of <code>NULL</code> values</div></li><li><div class="item-name"><a class="fn" href="fn.print_long_array.html" title="fn arrow_array::array::print_long_array">print_long_array</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="desc docblock-short">Helper function for printing potentially long arrays.</div></li></ul><h2 id="types" class="section-header"><a href="#types">Type Aliases</a></h2><ul class="item-table"><li><div class="item-name"><a class="type" hre [...]
\ No newline at end of file
diff --git a/arrow_array/array/list_array/struct.GenericListArray.html b/arrow_array/array/list_array/struct.GenericListArray.html
index 168d9d3b67..1a983d5b3c 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4- [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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 [...]
+</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=" [...]
 The input is the schema of the child array and
-the output is the [<code>DataType</code>], List or LargeList.</p>
+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>
 </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: FieldRef,
+    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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, 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>
+) -&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  [...]
 <h5 id="errors"><a href="#errors">Errors</a></h5>
 <p>Errors if</p>
 <ul>
@@ -76,22 +76,22 @@ the output is the [<code>DataType</code>], List or LargeList.</p>
 <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: FieldRef,
+    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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 href="#panics">Panics</a></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: 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.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.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; (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>
+) -&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 [...]
 </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; 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_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_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 href="#safety">Safety</a></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;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><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><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,14 +114,14 @@ 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; ArrayData [...]
+</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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/list_array.rs.html#505-512">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class= [...]
 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#195-197">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;  [...]
-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#256-258">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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="impl"><a href="#impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="anchor">§</a><h3 class="code-header">impl&lt [...]
     OffsetSize: <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-GenericListArray%3COffsetSize%3E" class="impl"><a href="#impl-UnwindSafe-for-GenericListArray%3COffsetSize%3E" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="tr [...]
diff --git a/arrow_array/array/list_array/type.LargeListArray.html b/arrow_array/array/list_array/type.LargeListArray.html
index 34b188a26c..72fa047c48 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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
+}</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
diff --git a/arrow_array/array/list_array/type.ListArray.html b/arrow_array/array/list_array/type.ListArray.html
index 20b5fedc3d..c03bb67136 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="pre [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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
+}</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
diff --git a/arrow_array/array/map_array/struct.MapArray.html b/arrow_array/array/map_array/struct.MapArray.html
index cb7ab8ae97..20eb6a5787 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin  [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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></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><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: FieldRef,
+    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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, 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>
+) -&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>
 <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 href="#errors">Errors</a></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: FieldRef,
+    field: <a class="type" href="../../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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; (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 [...]
+) -&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 [...]
 </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;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.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.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 href="#safety">Safety</a></h5>
 <p>Caller must ensure that the index is within the array bounds</p>
@@ -60,19 +60,19 @@ 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, ArrowError&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, <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>
 </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; ArrayData< [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/map_array.rs.html#392-399">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class=" [...]
 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#195-197">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;  [...]
-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#256-258">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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MapArray" class="impl"><a href="#impl-RefUnwindSafe-for-MapArray" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/ [...]
     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/array/null_array/struct.NullArray.html b/arrow_array/array/null_array/struct.NullArray.html
index b942177967..e6da408290 100644
--- a/arrow_array/array/null_array/struct.NullArray.html
+++ b/arrow_array/array/null_array/struct.NullArray.html
@@ -13,17 +13,17 @@
 <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 [<code>DataType</code>].</p>
+other <a href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></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/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#70-72">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="struc [...]
 </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#75-127">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#80-82">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; ArrayData</ [...]
+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#80-82">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#108-110">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/null_array.rs.html#124-126">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class= [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#220-222">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" hr [...]
-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#256-258">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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-NullArray" class="impl"><a href="#impl-RefUnwindSafe-for-NullArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org [...]
     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/array/primitive_array/struct.NativeAdapter.html b/arrow_array/array/primitive_array/struct.NativeAdapter.html
index eda0ad6b7c..cec3f32770 100644
--- a/arrow_array/array/primitive_array/struct.NativeAdapter.html
+++ b/arrow_array/array/primitive_array/struct.NativeAdapter.html
@@ -7,7 +7,7 @@ this struct. So once implementing <code>From</code> or <code>Into</code> trait f
 the type can be collected to <code>PrimitiveArray</code>.</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.native" class="structfield section-header"><a href="#structfield.native" class="anchor field">§</a><code>native: <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  [...]
 </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-NativeAdapter%3CT%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1161">source</a><a href="#impl-Debug-for-NativeAdapter%3CT%3E" class="anchor">§</a><h3 class="code-header">im [...]
-    T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href=".. [...]
+    T::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href=".. [...]
     &lt;T as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">Ref [...]
     &lt;T as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <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 [...]
     &lt;T as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSaf [...]
diff --git a/arrow_array/array/primitive_array/struct.PrimitiveArray.html b/arrow_array/array/primitive_array/struct.PrimitiveArray.html
index 04f1e56862..72c36ee75b 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"><title>PrimitiveArray in arrow_array::array::primitive_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2 [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
 }</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#fixed-size-primitive-layout">primitive values</a></p>
@@ -36,7 +36,7 @@ builder.append_value(<span class="number">2</span>);
 <span class="comment">// Note: values for null indexes are arbitrary
 </span><span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>[<span class="number">1</span>, <span class="number">0</span>, <span class="number">2</span>]);
 <span class="macro">assert!</span>(array.is_null(<span class="number">1</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: 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></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><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 href="#panics">Panics</a></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>
@@ -53,7 +53,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#535-554">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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></h5>
 <p>Errors if:</p>
 <ul>
@@ -62,18 +62,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#557-563">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#566-568">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self
-) -&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#578-581">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 [...]
+) -&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#578-581">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 [...]
 <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 href="#panics-1">Panics</a></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#584-591">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.assert_compatible" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#584-591">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.len" class="method"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#595-597">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#600-602">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#606-608">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#611-613">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#619-628">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 [...]
+</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#619-628">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 [...]
 <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#636-638">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 [...]
@@ -199,13 +199,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, ArrowError&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, <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
 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#1403-1412">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>, ArrowError&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>, <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
 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#1416-1420">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>
@@ -213,68 +213,68 @@ 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#1428-1452">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#1455-1479">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#982-1030">source</a><a href="#impl-Array-for-PrimitiveArray%3CT%3E" class="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#987-989">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; Arra [...]
+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#987-989">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/primitive_array.rs.html#1015-1017">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1027-1029">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" [...]
 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#195-197">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;  [...]
-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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1371-1385">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: ArrayData) -&gt; Self</h4></section></summary><div class='docblo [...]
+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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-36" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1371-1385">source</a><a href="#method.from-36" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="../../../arrow_data/data/struct.ArrayD [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.DurationMicrosecondType.html" title="struct arrow_array::types::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../typ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3C%3CDurationM [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3C%3CDurationM [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.DurationMillisecondType.html" title="struct arrow_array::types::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../typ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3C%3CDurationNan [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3C%3CDurationNan [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.DurationNanosecondType.html" title="struct arrow_array::types::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3C%3CDurationSecondType+ [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3C%3CDurationSecondType+ [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.IntervalMonthDayNanoType.html" title="struct arrow_array::types::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3C%3CIntervalYearM [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3C%3CIntervalYearM [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.IntervalYearMonthType.html" title="struct arrow_array::types::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/tra [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3C%3CTime32Millise [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3C%3CTime32Millise [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.Time32MillisecondType.html" title="struct arrow_array::types::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/tra [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3C%3CTime32SecondType+as+Arr [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3C%3CTime32SecondType+as+Arr [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.Time64MicrosecondType.html" title="struct arrow_array::types::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/tra [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3C%3CTime64Nanosecon [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3C%3CTime64Nanosecon [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.TimestampMicrosecondType.html" title="struct arrow_array::types::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1319">source</a><a href="#impl-From%3CVec%3C%3CTimesta [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1319">source</a><a href="#impl-From%3CVec%3C%3CTimesta [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.TimestampMillisecondType.html" title="struct arrow_array::types::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3C%3CTimestamp [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3C%3CTimestamp [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../../types/struct.TimestampNanosecondType.html" title="struct arrow_array::types::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../typ [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3C%3CTimestampSecondTy [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3C%3CTimestampSecondTy [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.Decimal128Type.html" title="struct arrow_array::types::Decimal128Type">Decimal128Type</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait ar [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal256Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDecimal256Type%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1303">source</a><a href="#impl-From%3CVec%3COption%3C%3CDecima [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal256Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDecimal256Type%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1303">source</a><a href="#impl-From%3CVec%3COption%3C%3CDecima [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.Decimal256Type.html" title="struct arrow_array::types::Decimal256Type">Decimal256Type</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait ar [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMicrosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1316">source</a><a href="#impl-From%3CVec%3C [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMicrosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1316">source</a><a href="#impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.DurationMicrosecondType.html" title="struct arrow_array::types::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiv [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3C [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.DurationMillisecondType.html" title="struct arrow_array::types::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiv [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3COp [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3COp [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.DurationNanosecondType.html" title="struct arrow_array::types::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveTy [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3COption%3C% [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3COption%3C% [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.DurationSecondType.html" title="struct arrow_array::types::DurationSecondType">DurationSecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" tit [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CFloat16Type%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1299">source</a><a href="#impl-From%3CVec%3COption%3C%3CFloat16Type+ [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CFloat16Type%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1299">source</a><a href="#impl-From%3CVec%3COption%3C%3CFloat16Type+ [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.IntervalDayTimeType.html" title="struct arrow_array::types::IntervalDayTimeType">IntervalDayTimeType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalMonthDayNanoType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalMonthDayNanoType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1313">source</a><a href="#impl-From%3CVec% [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalMonthDayNanoType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalMonthDayNanoType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1313">source</a><a href="#impl-From%3CVec% [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.IntervalMonthDayNanoType.html" title="struct arrow_array::types::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../../types/trait.ArrowPrimi [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3COpti [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3COpti [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.IntervalYearMonthType.html" title="struct arrow_array::types::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3COpti [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3COpti [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.Time32MillisecondType.html" title="struct arrow_array::types::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3COption%3C%3CTi [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3COption%3C%3CTi [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.Time32SecondType.html" title="struct arrow_array::types::Time32SecondType">Time32SecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="tr [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64MicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64MicrosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1309">source</a><a href="#impl-From%3CVec%3COpti [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64MicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64MicrosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1309">source</a><a href="#impl-From%3CVec%3COpti [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.Time64MicrosecondType.html" title="struct arrow_array::types::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3COption [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3COption [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.Time64NanosecondType.html" title="struct arrow_array::types::Time64NanosecondType">Time64NanosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.htm [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampMicrosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1320">source</a><a href="#impl-From%3CVec% [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampMicrosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1320">source</a><a href="#impl-From%3CVec% [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.TimestampMicrosecondType.html" title="struct arrow_array::types::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimi [...]
 ) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampMillisecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1319">source</a><a href="#impl-From%3CVec% [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.TimestampMillisecondType.html" title="struct arrow_array::types::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimi [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3C [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3C [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.TimestampNanosecondType.html" title="struct arrow_array::types::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiv [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3COption%3 [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3COption%3 [...]
     data: <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;&lt;<a class="struct" href="../../types/struct.TimestampSecondType.html" title="struct arrow_array::types::TimestampSecondType">TimestampSecondType</a> as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CUInt16Type%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1296">source</a><a href="#impl-From%3CVec%3COption%3C%3CUInt16Type+as+ [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CUInt16Type%3E" class="impl"><a class="src rightside" href="../../../src/arrow_array/array/primitive_array.rs.html#1296">source</a><a href="#impl-From%3CVec%3COption%3C%3CUInt16Type+as+ [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-PrimitiveArray%3CT%3E" class="impl"><a href="#impl-RefUnwindSafe-for-PrimitiveArray%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait [...]
     &lt;T as <a class="trait" href="../../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">Ref [...]
diff --git a/arrow_array/array/primitive_array/type.Date32Array.html b/arrow_array/array/primitive_array/type.Date32Array.html
index c4aa905a53..3aea6e4e31 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 fb92709bb9..aefc6df77f 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 04539230ad..691f162445 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 e5b40e24a0..6520737f0c 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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>
+}</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" [...]
 </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 84bcd7dc30..1928ec185f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 71b70cdb70..ad3c9a82bd 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 5d7641ee2b..decb4b1f69 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel=" [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 e6b94769c6..d24b8f6771 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 bab1c5d195..b3026510fa 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     values: ScalarBuffer&lt;<a class="struct" href="https://docs.rs/half/2.3.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: 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.3.1/half/binary16/s [...]
+}</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" [...]
 </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 4d00653398..c7552fc8a0 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 d2779583c8..0124f4b703 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 71cd75a1f9..ff4ea5f96a 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 adb53cab2e..4ee9a4276d 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 2ebf4fee5d..f46405e80c 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 ac3de77140..6bfc7b5f65 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 9576251869..e46ea1c932 100644
--- a/arrow_array/array/primitive_array/type.IntervalDayTimeArray.html
+++ b/arrow_array/array/primitive_array/type.IntervalDayTimeArray.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 “calendar” intervals in days and milliseconds"><title>IntervalDayTimeArray in arrow_array::array::primitive_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2">< [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 96e42a5984..856cfe7968 100644
--- a/arrow_array/array/primitive_array/type.IntervalMonthDayNanoArray.html
+++ b/arrow_array/array/primitive_array/type.IntervalMonthDayNanoArray.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 “calendar” intervals in  months, days, and nanoseconds"><title>IntervalMonthDayNanoArray in arrow_array::array::primitive_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac529 [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 4d5f090a49..ef521c806d 100644
--- a/arrow_array/array/primitive_array/type.IntervalYearMonthArray.html
+++ b/arrow_array/array/primitive_array/type.IntervalYearMonthArray.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 “calendar” intervals in months"><title>IntervalYearMonthArray in arrow_array::array::primitive_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="pre [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 79d65d60ec..5eee95ccb7 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 aa09e420d9..a664482eda 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 39c7e24c48..1d8ad936d2 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 5a3c7889ba..cfc73cd137 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 31d6ce70dc..0fbcfc5d09 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.wof [...]
 <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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 d06c45a0ba..8acd1c4971 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.wof [...]
 <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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 e778b54a9a..63c23a7b08 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2 [...]
 <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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 90ae4e6df7..a4e5d51ec8 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link  [...]
 <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::Timestamp"><code>Timestamp</code></a>.</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>
 <h2 id="example-utc-timestamps-post-epoch"><a href="#example-utc-timestamps-post-epoch">Example: UTC timestamps post epoch</a></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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 2761e4b030..d366bdaf3e 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 963f87e7e0..97b3033fbb 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 d132de497b..963b6fbe55 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 6f0a76adfb..4aa0dc0fd2 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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" [...]
 </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 167d55c405..bc9663ed03 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" cros [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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="../. [...]
+</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 [...]
 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, ArrowError&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, <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)
 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;, ArrowError&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="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 [...]
     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,13 +67,13 @@ 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; ArrayData< [...]
+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 [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#383-387">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class=" [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/mod.rs.html#220-222">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" hr [...]
-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#256-258">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#256-258">source</a><a href="#method.null_count" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#method.null_count" c [...]
 <h4 id="example"><a href="#example">Example:</a></h4>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{RunArray, PrimitiveArray, StringArray, types::Int16Type};
 
diff --git a/arrow_array/array/run_array/struct.TypedRunArray.html b/arrow_array/array/run_array/struct.TypedRunArray.html
index 538a421895..ee8733d2aa 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; ArrayData< [...]
+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 [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/run_array.rs.html#608-610">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class=" [...]
diff --git a/arrow_array/array/run_array/type.Int16RunArray.html b/arrow_array/array/run_array/type.Int16RunArray.html
index 99599539f6..37c1b81109 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/run_array/type.Int32RunArray.html b/arrow_array/array/run_array/type.Int32RunArray.html
index 0898002681..10d8a70bef 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/run_array/type.Int64RunArray.html b/arrow_array/array/run_array/type.Int64RunArray.html
index 15b377c330..4833362130 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/string_array/type.GenericStringArray.html b/arrow_array/array/string_array/type.GenericStringArray.html
index 70b02e350b..89be41e4d7 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type= [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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. [...]
 </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 href="#performance">Performance</a></h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -22,8 +22,8 @@ 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, 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 [...]
+) -&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> [...]
 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 [...]
+</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#239">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></div><script src="../../../type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js" data-self-path="arrow_array::array::string_array::GenericStringArray" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/array/string_array/type.LargeStringArray.html b/arrow_array/array/string_array/type.LargeStringArray.html
index 74fb6929be..05743495fd 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/string_array/type.StringArray.html b/arrow_array/array/string_array/type.StringArray.html
index fcff0f3ba1..ed891661b3 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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/struct.BooleanArray.html b/arrow_array/array/struct.BooleanArray.html
index e0e8dc674c..296588c257 100644
--- a/arrow_array/array/struct.BooleanArray.html
+++ b/arrow_array/array/struct.BooleanArray.html
@@ -72,13 +72,13 @@ 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; ArrayData</h4>< [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/boolean_array.rs.html#309-311">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn [...]
 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#195-197">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 [...]
-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#256-258">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#256-258">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 [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-BooleanArray" class="impl"><a href="#impl-RefUnwindSafe-for-BooleanArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-la [...]
     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/array/struct.DictionaryArray.html b/arrow_array/array/struct.DictionaryArray.html
index c34a985dd9..63a73d321f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossori [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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>,
     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: 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 [...]
+</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 [...]
 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, ArrowError&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, <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
 (indexes into the dictionary) and values (dictionary)
 array.</p>
 <h5 id="errors"><a href="#errors">Errors</a></h5>
@@ -85,7 +85,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#359-361">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#364-366">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_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#364-366">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.len" class="method"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#369-371">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#374-376">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#379-381">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 [...]
@@ -162,14 +162,14 @@ 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#986-1005">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#691-693">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; ArrayData</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/dictionary_array.rs.html#691-693">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#719-721">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#752-756">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class= [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#220-222">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="ht [...]
-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#256-258">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 [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#571-615">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: ArrayData) -&gt; Self</h4></section></summary><div class='docblock'>Conv [...]
+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#256-258">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 [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#571-615">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="../../arrow_data/data/struct.ArrayData.html" tit [...]
 <h4 id="example-2"><a href="#example-2">Example:</a></h4>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{DictionaryArray, PrimitiveArray, StringArray, types::Int8Type};
 
diff --git a/arrow_array/array/struct.FixedSizeBinaryArray.html b/arrow_array/array/struct.FixedSizeBinaryArray.html
index a859ff3020..7a963da710 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" cros [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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,14 +22,14 @@ 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: 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  [...]
+</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 [...]
 <h5 id="panics"><a href="#panics">Panics</a></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.try_new" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#77-105">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
     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, 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>
+) -&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">< [...]
 <h5 id="errors"><a href="#errors">Errors</a></h5>
 <ul>
 <li><code>size &lt; 0</code></li>
@@ -58,7 +58,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#189-191">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#194-209">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#236-307">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#236-307">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
@@ -79,7 +79,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#333-384">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, ArrowError&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, <a class="enum" href="../../arrow_schema/error/enum.ArrowError.html" title="enum arrow_schema::error::ArrowError">ArrowError</a>&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
@@ -99,7 +99,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 href="#errors-2">Errors</a></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#403-450">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 [...]
+</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#403-450">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 [...]
     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 href="#examples-3">Examples</a></h5>
@@ -114,14 +114,14 @@ 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#453-455">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#564-612">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#569-571">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; Array [...]
+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#569-571">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#597-599">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" 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.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" [...]
 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#195-197">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 [...]
-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#256-258">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 [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="fixed_size_list_array/struct.FixedSizeListAr [...]
+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#256-258">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 [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="fixed_size_list_array/struct.FixedSizeLi [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeBinaryArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="htt [...]
     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/array/struct.FixedSizeListArray.html b/arrow_array/array/struct.FixedSizeListArray.html
index dce76e470a..ea513fa49d 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf. [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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,
+</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>,
     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 href="#panics">Panics</a></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-198">source</a><h4 class="code-header">pub fn <a href="#method.try_new" class="fn">try_new</a>(
-    field: FieldRef,
+    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/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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></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#208-217">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 [...]
+</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#208-217">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 [...]
 <h5 id="panics-1"><a href="#panics-1">Panics</a></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#220-226">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.into_parts" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#220-226">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.values" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#229-231">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#234-236">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_type" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#234-236">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" class="method"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#239-242">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#248-250">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,14 +124,14 @@ 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#330-332">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#368-420">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#373-375">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; ArrayDa [...]
+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#373-375">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#401-403">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_list_array.rs.html#413-419">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" c [...]
 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#195-197">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 [...]
-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#256-258">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 [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="fixed_size_list_array/struct.FixedSizeListAr [...]
+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#256-258">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 [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/fixed_size_binary_array.rs.html#502-538">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="fixed_size_list_array/struct.FixedSizeLi [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-FixedSizeListArray" class="impl"><a href="#impl-RefUnwindSafe-for-FixedSizeListArray" 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 [...]
diff --git a/arrow_array/array/struct.GenericByteArray.html b/arrow_array/array/struct.GenericByteArray.html
index 20db31b8f4..5ce7cc3dc0 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" cross [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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><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><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 href="#safety">Safety</a></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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></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 href="#performance">Performance</a></h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -115,18 +115,18 @@ 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, 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 [...]
+) -&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< [...]
 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; ArrayData</h4></se [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/byte_array.rs.html#473-475">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">g [...]
 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#195-197">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 [...]
-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#256-258">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 [...]
-    Ptr: <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; + 'a,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter" class="method trait-impl"><a class="src ri [...]
-    Ptr: <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;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter-1" class="method trait-impl"><a class="src right [...]
+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#256-258">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 [...]
+    Ptr: <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; + 'a,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter-1" class="method trait-impl"><a class="src  [...]
+    Ptr: <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;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_iter" class="method trait-impl"><a class="src rightsi [...]
     &lt;T 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>: <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></sec [...]
     &lt;T 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>: <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-GenericBy [...]
     &lt;T 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>: <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></di [...]
diff --git a/arrow_array/array/struct.GenericListArray.html b/arrow_array/array/struct.GenericListArray.html
index 4c30785d50..5ccfafc2fd 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98ef [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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 [...]
+</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 [...]
 The input is the schema of the child array and
-the output is the [<code>DataType</code>], List or LargeList.</p>
+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>
 </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: FieldRef,
+    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></h5>
 <p>Errors if</p>
 <ul>
@@ -76,22 +76,22 @@ the output is the [<code>DataType</code>], List or LargeList.</p>
 <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: FieldRef,
+    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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 href="#panics">Panics</a></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: 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.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.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; (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>
+) -&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 [...]
 </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; 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_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_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 href="#safety">Safety</a></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;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><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><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,14 +114,14 @@ 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; ArrayData</h4></se [...]
+</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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/list_array.rs.html#505-512">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">g [...]
 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#195-197">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 [...]
-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#256-258">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#256-258">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 [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="impl"><a href="#impl-RefUnwindSafe-for-GenericListArray%3COffsetSize%3E" class="anchor">§</a><h3 class="code-header">impl&lt [...]
     OffsetSize: <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-GenericListArray%3COffsetSize%3E" class="impl"><a href="#impl-UnwindSafe-for-GenericListArray%3COffsetSize%3E" class="anchor">§</a><h3 class="code-header">impl&lt;OffsetSize&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="tr [...]
diff --git a/arrow_array/array/struct.MapArray.html b/arrow_array/array/struct.MapArray.html
index 06310e3bef..c858074283 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../st [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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></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><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: FieldRef,
+    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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, 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>
+) -&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>
 <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 href="#errors">Errors</a></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: FieldRef,
+    field: <a class="type" href="../../arrow_schema/field/type.FieldRef.html" title="type arrow_schema::field::FieldRef">FieldRef</a>,
     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; (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 [...]
+) -&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 [...]
 </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;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.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.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 href="#safety">Safety</a></h5>
 <p>Caller must ensure that the index is within the array bounds</p>
@@ -60,19 +60,19 @@ 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, ArrowError&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, <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>
 </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; ArrayData</h4></sec [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/map_array.rs.html#392-399">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">ge [...]
 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#195-197">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 [...]
-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#256-258">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#256-258">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 [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MapArray" class="impl"><a href="#impl-RefUnwindSafe-for-MapArray" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/ [...]
     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/array/struct.NativeAdapter.html b/arrow_array/array/struct.NativeAdapter.html
index 5bb76345fe..aafd068d4d 100644
--- a/arrow_array/array/struct.NativeAdapter.html
+++ b/arrow_array/array/struct.NativeAdapter.html
@@ -7,7 +7,7 @@ this struct. So once implementing <code>From</code> or <code>Into</code> trait f
 the type can be collected to <code>PrimitiveArray</code>.</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.native" class="structfield section-header"><a href="#structfield.native" class="anchor field">§</a><code>native: <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 arr [...]
 </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-NativeAdapter%3CT%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1161">source</a><a href="#impl-Debug-for-NativeAdapter%3CT%3E" class="anchor">§</a><h3 class="code-header">impl& [...]
-    T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../.. [...]
+    T::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../.. [...]
     &lt;T as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwind [...]
     &lt;T as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <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 [...]
     &lt;T as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <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>, [...]
diff --git a/arrow_array/array/struct.NullArray.html b/arrow_array/array/struct.NullArray.html
index 579bf4cffc..e7a0de322b 100644
--- a/arrow_array/array/struct.NullArray.html
+++ b/arrow_array/array/struct.NullArray.html
@@ -13,17 +13,17 @@
 <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 [<code>DataType</code>].</p>
+other <a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>DataType</code></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/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#70-72">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 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-Array-for-NullArray" class="impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#75-127">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#80-82">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; ArrayData</h4></sect [...]
+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#80-82">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#108-110">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/null_array.rs.html#124-126">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">g [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#220-222">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="ht [...]
-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#256-258">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#256-258">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 [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-NullArray" class="impl"><a href="#impl-RefUnwindSafe-for-NullArray" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org [...]
     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/array/struct.PrimitiveArray.html b/arrow_array/array/struct.PrimitiveArray.html
index febf88a27c..6afa2d30cc 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"><title>PrimitiveArray in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=" [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
 }</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#fixed-size-primitive-layout">primitive values</a></p>
@@ -36,7 +36,7 @@ builder.append_value(<span class="number">2</span>);
 <span class="comment">// Note: values for null indexes are arbitrary
 </span><span class="macro">assert_eq!</span>(array.values(), <span class="kw-2">&amp;</span>[<span class="number">1</span>, <span class="number">0</span>, <span class="number">2</span>]);
 <span class="macro">assert!</span>(array.is_null(<span class="number">1</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: 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></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><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 href="#panics">Panics</a></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>
@@ -53,7 +53,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#535-554">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, 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>
+) -&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></ [...]
 <h5 id="errors"><a href="#errors">Errors</a></h5>
 <p>Errors if:</p>
 <ul>
@@ -62,18 +62,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#557-563">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#566-568">source</a><h4 class="code-header">pub fn <a href="#method.into_parts" class="fn">into_parts</a>(
     self
-) -&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#578-581">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 [...]
+) -&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#578-581">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 [...]
 <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 href="#panics-1">Panics</a></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#584-591">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.assert_compatible" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#584-591">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.len" class="method"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#595-597">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#600-602">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#606-608">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#611-613">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#619-628">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 [...]
+</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#619-628">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 [...]
 <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#636-638">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 [...]
@@ -199,13 +199,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, ArrowError&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, <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
 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#1403-1412">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>, ArrowError&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>, <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
 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#1416-1420">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>
@@ -213,68 +213,68 @@ 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#1428-1452">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#1455-1479">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#982-1030">source</a><a href="#impl-Array-for-PrimitiveArray%3CT%3E" class="anch [...]
-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#987-989">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; ArrayData</h4 [...]
+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#987-989">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/primitive_array.rs.html#1015-1017">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1027-1029">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class [...]
 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#195-197">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 [...]
-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#256-258">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 [...]
-</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1371-1385">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: ArrayData) -&gt; Self</h4></section></summary><div class='docblock' [...]
+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#256-258">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 [...]
+</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-36" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1371-1385">source</a><a href="#method.from-36" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(data: <a class="struct" href="../../arrow_data/data/struct.ArrayData.ht [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.DurationMicrosecondType.html" title="struct arrow_array::types::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3C%3CDurationMill [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3C%3CDurationMill [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.DurationMillisecondType.html" title="struct arrow_array::types::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3C%3CDurationNanose [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3C%3CDurationNanose [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.DurationNanosecondType.html" title="struct arrow_array::types::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.Arr [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3C%3CDurationSecondType+as+ [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3C%3CDurationSecondType+as+ [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.IntervalMonthDayNanoType.html" title="struct arrow_array::types::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/tra [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3C%3CIntervalYearMont [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3C%3CIntervalYearMont [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.IntervalYearMonthType.html" title="struct arrow_array::types::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowP [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3C%3CTime32Millisecon [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3C%3CTime32Millisecon [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.Time32MillisecondType.html" title="struct arrow_array::types::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowP [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3C%3CTime32SecondType+as+ArrowP [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3C%3CTime32SecondType+as+ArrowP [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.Time64MicrosecondType.html" title="struct arrow_array::types::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowP [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3C%3CTime64NanosecondTy [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3C%3CTime64NanosecondTy [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.TimestampMicrosecondType.html" title="struct arrow_array::types::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/tra [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1319">source</a><a href="#impl-From%3CVec%3C%3CTimestampM [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1319">source</a><a href="#impl-From%3CVec%3C%3CTimestampM [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.TimestampMillisecondType.html" title="struct arrow_array::types::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/tra [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3C%3CTimestampNan [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3C%3CTimestampNan [...]
     data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;<a class="struct" href="../types/struct.TimestampNanosecondType.html" title="struct arrow_array::types::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3C%3CTimestampSecondType+ [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3C%3CTimestampSecondType+ [...]
     data: <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;&lt;<a class="struct" href="../types/struct.Decimal128Type.html" title="struct arrow_array::types::Decimal128Type">Decimal128Type</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_ar [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal256Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDecimal256Type%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1303">source</a><a href="#impl-From%3CVec%3COption%3C%3CDecimal25 [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDecimal256Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDecimal256Type%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1303">source</a><a href="#impl-From%3CVec%3COption%3C%3CDecimal25 [...]
     data: <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;&lt;<a class="struct" href="../types/struct.Decimal256Type.html" title="struct arrow_array::types::Decimal256Type">Decimal256Type</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_ar [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMicrosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1316">source</a><a href="#impl-From%3CVec%3COpt [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMicrosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1316">source</a><a href="#impl-From%3CVec%3COpt [...]
     data: <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;&lt;<a class="struct" href="../types/struct.DurationMicrosecondType.html" title="struct arrow_array::types::DurationMicrosecondType">DurationMicrosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3COpt [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1315">source</a><a href="#impl-From%3CVec%3COpt [...]
     data: <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;&lt;<a class="struct" href="../types/struct.DurationMillisecondType.html" title="struct arrow_array::types::DurationMillisecondType">DurationMillisecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3COptio [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1317">source</a><a href="#impl-From%3CVec%3COptio [...]
     data: <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;&lt;<a class="struct" href="../types/struct.DurationNanosecondType.html" title="struct arrow_array::types::DurationNanosecondType">DurationNanosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.htm [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3COption%3C%3CD [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CDurationSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CDurationSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1314">source</a><a href="#impl-From%3CVec%3COption%3C%3CD [...]
     data: <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;&lt;<a class="struct" href="../types/struct.DurationSecondType.html" title="struct arrow_array::types::DurationSecondType">DurationSecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="tr [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CFloat16Type%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1299">source</a><a href="#impl-From%3CVec%3COption%3C%3CFloat16Type+as+ [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CFloat16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CFloat16Type%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1299">source</a><a href="#impl-From%3CVec%3COption%3C%3CFloat16Type+as+ [...]
     data: <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;&lt;<a class="struct" href="../types/struct.IntervalDayTimeType.html" title="struct arrow_array::types::IntervalDayTimeType">IntervalDayTimeType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title= [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalMonthDayNanoType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalMonthDayNanoType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1313">source</a><a href="#impl-From%3CVec%3CO [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalMonthDayNanoType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalMonthDayNanoType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1313">source</a><a href="#impl-From%3CVec%3CO [...]
     data: <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;&lt;<a class="struct" href="../types/struct.IntervalMonthDayNanoType.html" title="struct arrow_array::types::IntervalMonthDayNanoType">IntervalMonthDayNanoType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveTy [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3COption% [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CIntervalYearMonthType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CIntervalYearMonthType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1311">source</a><a href="#impl-From%3CVec%3COption% [...]
     data: <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;&lt;<a class="struct" href="../types/struct.IntervalYearMonthType.html" title="struct arrow_array::types::IntervalYearMonthType">IntervalYearMonthType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3COption% [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32MillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32MillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1308">source</a><a href="#impl-From%3CVec%3COption% [...]
     data: <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;&lt;<a class="struct" href="../types/struct.Time32MillisecondType.html" title="struct arrow_array::types::Time32MillisecondType">Time32MillisecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3COption%3C%3CTime3 [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime32SecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime32SecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1307">source</a><a href="#impl-From%3CVec%3COption%3C%3CTime3 [...]
     data: <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;&lt;<a class="struct" href="../types/struct.Time32SecondType.html" title="struct arrow_array::types::Time32SecondType">Time32SecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait ar [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64MicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64MicrosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1309">source</a><a href="#impl-From%3CVec%3COption% [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64MicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64MicrosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1309">source</a><a href="#impl-From%3CVec%3COption% [...]
     data: <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;&lt;<a class="struct" href="../types/struct.Time64MicrosecondType.html" title="struct arrow_array::types::Time64MicrosecondType">Time64MicrosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html"  [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3COption%3C [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTime64NanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTime64NanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1310">source</a><a href="#impl-From%3CVec%3COption%3C [...]
     data: <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;&lt;<a class="struct" href="../types/struct.Time64NanosecondType.html" title="struct arrow_array::types::Time64NanosecondType">Time64NanosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" tit [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampMicrosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1320">source</a><a href="#impl-From%3CVec%3CO [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampMicrosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampMicrosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1320">source</a><a href="#impl-From%3CVec%3CO [...]
     data: <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;&lt;<a class="struct" href="../types/struct.TimestampMicrosecondType.html" title="struct arrow_array::types::TimestampMicrosecondType">TimestampMicrosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveTy [...]
 ) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampMillisecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampMillisecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1319">source</a><a href="#impl-From%3CVec%3CO [...]
     data: <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;&lt;<a class="struct" href="../types/struct.TimestampMillisecondType.html" title="struct arrow_array::types::TimestampMillisecondType">TimestampMillisecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveTy [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3COpt [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampNanosecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampNanosecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1321">source</a><a href="#impl-From%3CVec%3COpt [...]
     data: <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;&lt;<a class="struct" href="../types/struct.TimestampNanosecondType.html" title="struct arrow_array::types::TimestampNanosecondType">TimestampNanosecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType. [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3COption%3C%3 [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CTimestampSecondType+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CTimestampSecondType%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1318">source</a><a href="#impl-From%3CVec%3COption%3C%3 [...]
     data: <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;&lt;<a class="struct" href="../types/struct.TimestampSecondType.html" title="struct arrow_array::types::TimestampSecondType">TimestampSecondType</a> as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title= [...]
-) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CUInt16Type%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1296">source</a><a href="#impl-From%3CVec%3COption%3C%3CUInt16Type+as+Arr [...]
+) -&gt; Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CVec%3COption%3C%3CUInt16Type+as+ArrowPrimitiveType%3E::Native%3E%3E%3E-for-PrimitiveArray%3CUInt16Type%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/primitive_array.rs.html#1296">source</a><a href="#impl-From%3CVec%3COption%3C%3CUInt16Type+as+Arr [...]
 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#239">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></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-PrimitiveArray%3CT%3E" class="impl"><a href="#impl-RefUnwindSafe-for-PrimitiveArray%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait [...]
     &lt;T as <a class="trait" href="../types/trait.ArrowPrimitiveType.html" title="trait arrow_array::types::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../types/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow_array::types::ArrowPrimitiveType::Native">Native</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwind [...]
diff --git a/arrow_array/array/struct.RunArray.html b/arrow_array/array/struct.RunArray.html
index 211d9707eb..40c960c8a0 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=" [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+</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=" [...]
 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, ArrowError&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, <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)
 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;, ArrowError&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="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 [...]
     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,13 +67,13 @@ 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; ArrayData</h4></sec [...]
+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 [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#383-387">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">ge [...]
 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.is_null" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#220-222">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="ht [...]
-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#256-258">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#256-258">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 [...]
 <h4 id="example"><a href="#example">Example:</a></h4>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arrow_array::{RunArray, PrimitiveArray, StringArray, types::Int16Type};
 
diff --git a/arrow_array/array/struct.StructArray.html b/arrow_array/array/struct.StructArray.html
index 15b2dc2a87..d34c287de9 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static [...]
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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 [<code>Schema</code>][arrow_schema::Schema]</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="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: D [...]
-    fields: Fields,
+</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>,
     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 href="#panics">Panics</a></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: Fields,
+    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
     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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></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: 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_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_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: Fields,
+    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
     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,26 +76,26 @@ 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 href="#panics-1">Panics</a></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; (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.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.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;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.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.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; ArrayData</h4></ [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/struct_array.rs.html#388-395">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn" [...]
 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#195-197">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 [...]
-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#256-258">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#256-258">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>
@@ -103,8 +103,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#239">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> = ArrowError</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details></div></details></div><h2 id=" [...]
+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 [...]
     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 21496910f2..f6b145857a 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#808-818">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#815-817">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#820-872">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#825-827">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; ArrayData</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/dictionary_array.rs.html#825-827">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#853-855">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/dictionary_array.rs.html#869-871">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class= [...]
diff --git a/arrow_array/array/struct.TypedRunArray.html b/arrow_array/array/struct.TypedRunArray.html
index e8925f9da6..0b31f5b594 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; ArrayData</h4></sec [...]
+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 [...]
 The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/run_array.rs.html#608-610">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn">ge [...]
diff --git a/arrow_array/array/struct.UnionArray.html b/arrow_array/array/struct.UnionArray.html
index 72040ae874..51e270b72f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin hre [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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;,
@@ -75,11 +75,11 @@ 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: 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 [...]
+</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 [...]
     field_type_ids: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>],
     type_ids: Buffer,
     value_offsets: <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;,
-    child_arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(Field, <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>)&gt;
+    child_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="struct" href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>, <a class="type" href="type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>)&gt;
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>UnionArray</code>.</p>
 <p>Accepts type ids, child arrays and optionally offsets (for dense unions) to create
 a new <code>UnionArray</code>.  This method makes no attempt to validate the data provided by the
@@ -102,8 +102,8 @@ to ensure that the data provided is valid.</p>
     field_type_ids: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>],
     type_ids: Buffer,
     value_offsets: <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;,
-    child_arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(Field, <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, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempts to create a new <code>UnionArray</code>, validating the inputs provided.</p>
+    child_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="struct" href="../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>, <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>
 </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#231-234">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 href="#panics">Panics</a></h5>
 <p>Panics if the <code>type_id</code> provided is less than zero or greater than the number of types
@@ -129,12 +129,12 @@ 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#433-435">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#383-385">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#387-389">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; ArrayData</h4></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/union_array.rs.html#387-389">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#415-417">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../src/arrow_array/array/union_array.rs.html#449-461">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Array.html#tymethod.get_array_memory_size" class="fn"> [...]
 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#195-197">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 [...]
+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#195-197">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 [...]
     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-1" 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-1" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     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_array/struct.StructArray.html b/arrow_array/array/struct_array/struct.StructArray.html
index e319cf563c..c32417fb0c 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin h [...]
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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 [<code>Schema</code>][arrow_schema::Schema]</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="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: D [...]
-    fields: Fields,
+</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>,
     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 href="#panics">Panics</a></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: Fields,
+    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
     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, 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>
+) -&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 [...]
 <h5 id="errors"><a href="#errors">Errors</a></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: 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_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_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: Fields,
+    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
     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,26 +76,26 @@ 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 href="#panics-1">Panics</a></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; (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.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.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;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.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.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; ArrayDa [...]
+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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/struct_array.rs.html#388-395">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" clas [...]
 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#195-197">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;  [...]
-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#256-258">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#256-258">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>
@@ -103,8 +103,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#239">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> = ArrowError</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details></div></details></div><h2 id=" [...]
+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> [...]
     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 1f0c86a603..8ae8dd85d7 100644
--- a/arrow_array/array/trait.Array.html
+++ b/arrow_array/array/trait.Array.html
@@ -1,9 +1,9 @@
 <!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 in the arrow columnar format"><title>Array in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=" [...]
 <details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 16 methods</span></summary>    // Required methods
     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; ArrayData;
-<span class="item-spacer"></span>    fn <a href="#tymethod.into_data" class="fn">into_data</a>(self) -&gt; ArrayData;
-<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.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.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>;
@@ -34,10 +34,10 @@ downcasted to a specific implementation.</p>
     .as_any()
     .downcast_ref::&lt;Int32Array&gt;()
     .expect(<span class="string">"Failed to downcast"</span>);</code></pre></div>
-</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#97">source</a><h4 class="code-header">fn <a href="#tymethod.to_data" class="fn">to_data</a>(&amp;self) -&gt; ArrayData</h4></section></summary><div class="docblock"><p>Returns the underlying data of this array</p>
-</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#102">source</a><h4 class="code-header">fn <a href="#tymethod.into_data" class="fn">into_data</a>(self) -&gt; ArrayData</h4></section></summary><div class="docblock"><p>Returns the underlying data of this array</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#97">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#102">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#116">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>
+</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#116">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  [...]
 <h5 id="example-1"><a href="#example-1">Example:</a></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};
@@ -143,9 +143,9 @@ even if the nulls present in <a href="dictionary_array/struct.DictionaryArray.ht
 and therefore would not appear in <a href="trait.Array.html#method.logical_nulls" title="method arrow_array::array::Array::logical_nulls"><code>Array::logical_nulls</code></a>.</p>
 </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-AsArray-for-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/cast.rs.html#842-886">source</a><a href="#impl-AsArray-for-dyn+Array" class="anchor">§</a><h3 class="code-header">impl <a class="trait" [...]
     &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;&amp;<a class="struct" href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray">DictionaryArray</a>&lt;K&gt;&gt;</h4></section></summary><div class='docblock'>Downcast this to a <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::D [...]
-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#239">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-for-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/array/mod.rs.html#443-447">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  [...]
+) -&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;<a class="struct" href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::DictionaryArray">DictionaryArray</a>&lt;K&gt;&gt;</h4></section></summary><div class='docblock'>Downcast this to a <a href="dictionary_array/struct.DictionaryArray.html" title="struct arrow_array::array::dictionary_array::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#239">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-dyn+Array" class="impl"><a class="src rightside" href="../../src/arrow_array/cast.rs.html#841">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><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#443-447">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#239">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#841">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#820-872">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 dbb26368e8..852b3c0b1c 100644
--- a/arrow_array/array/type.ArrayRef.html
+++ b/arrow_array/array/type.ArrayRef.html
@@ -5,7 +5,7 @@
     alloc: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/alloc/struct.Global.html" title="struct alloc::alloc::Global">Global</a>,
 }</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.ptr" class="structfield section-header"><a href="#structfield.ptr" class="anchor field">§</a><code>ptr: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ptr/non_null/struct.NonNull.html" title="struct core::ptr::non_null::NonNull">NonNull</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.ArcInner.html" title="str [...]
 </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#288-290">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#292-294">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; ArrayData</h4></section>< [...]
+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#292-294">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#320-322">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 [...]
 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#336-338">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 [...]
diff --git a/arrow_array/array/type.BinaryArray.html b/arrow_array/array/type.BinaryArray.html
index 3abf9edef5..80e3483da3 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.Date32Array.html b/arrow_array/array/type.Date32Array.html
index bb4e79f418..8529a7dc3c 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 42e3b9e5ed..d36184a62e 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 b1fac5b81e..db90fa8d53 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 f144097f5d..9c27c703c8 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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>
+}</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 [...]
 </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 0b3e72c118..f1e2bec422 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 77798d17b4..80d2d0186e 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 af6e757450..a3bc51b697 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" t [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 6285cb572c..6419e59256 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="fon [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 c223df3f51..77dde9306a 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     values: ScalarBuffer&lt;<a class="struct" href="https://docs.rs/half/2.3.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: 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.3.1/half/binary16/s [...]
+}</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 [...]
 </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 e8e5c4c8cd..68e543d6c3 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 cfc2756c18..60198f8867 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 735a7b19e8..7a5e0854e6 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" c [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 [...]
@@ -18,6 +18,6 @@
 ) -&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 href="#safety">Safety</a></h5>
 <p>caller must ensure that the indexes in the iterator are less than the <code>array.len()</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-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_ar [...]
+</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%3CGenericStringType%3COffsetSize%3E%3E%3E-for-GenericByteArray%3CGenericBinaryType%3COffsetSize%3E%3E" class="impl"><a class="src rightside" href="../../src/arrow_array/array/binary_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#239">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></div><script src="../../type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js" data-self-path="arrow_array::array::binary_array::GenericBinaryArray" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/array/type.GenericStringArray.html b/arrow_array/array/type.GenericStringArray.html
index 6a0339d535..9624c3a48d 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" cros [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 href="#performance">Performance</a></h5>
 <p>This function has <code>O(n)</code> time complexity where <code>n</code> is the string length.
@@ -22,8 +22,8 @@ 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, 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 [...]
+) -&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< [...]
 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 [...]
+</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#239">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></div><script src="../../type.impl/arrow_array/array/byte_array/struct.GenericByteArray.js" data-self-path="arrow_array::array::string_array::GenericStringArray" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/arrow_array/array/type.Int16Array.html b/arrow_array/array/type.Int16Array.html
index b5db8bafd9..40e2d78e53 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 9b06556094..b983e3e7a6 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 4d1574c369..dbb817109c 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.Int32Array.html b/arrow_array/array/type.Int32Array.html
index 34cb0f2a59..d537c18fd8 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 d59b295300..442187b42e 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 cbdcd26d43..7e6823fb65 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.Int64Array.html b/arrow_array/array/type.Int64Array.html
index 58432178a0..7bc1fbe6a1 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 aea321e63d..f26faf025c 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 62960d7619..f7e82418a2 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.Int8Array.html b/arrow_array/array/type.Int8Array.html
index 56a37f11e6..afdb49753b 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 c316a41e53..e058023322 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 2da4ddd181..38e0e24371 100644
--- a/arrow_array/array/type.IntervalDayTimeArray.html
+++ b/arrow_array/array/type.IntervalDayTimeArray.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 “calendar” intervals in days and milliseconds"><title>IntervalDayTimeArray in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" a [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 da9d198df3..a79d0845b8 100644
--- a/arrow_array/array/type.IntervalMonthDayNanoArray.html
+++ b/arrow_array/array/type.IntervalMonthDayNanoArray.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 “calendar” intervals in  months, days, and nanoseconds"><title>IntervalMonthDayNanoArray in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link r [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 a1fed4c2c6..51d8ba5ba8 100644
--- a/arrow_array/array/type.IntervalYearMonthArray.html
+++ b/arrow_array/array/type.IntervalYearMonthArray.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 “calendar” intervals in months"><title>IntervalYearMonthArray in arrow_array::array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 41297c18b3..ea92681b24 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.LargeListArray.html b/arrow_array/array/type.LargeListArray.html
index 9b0d9a348f..40c269d7d0 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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
+}</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
diff --git a/arrow_array/array/type.LargeStringArray.html b/arrow_array/array/type.LargeStringArray.html
index ab183a5695..b700e8cd0f 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.ListArray.html b/arrow_array/array/type.ListArray.html
index 0b7bfa09fb..1ba4be31c7 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" [...]
 </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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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;,
     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: 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
+}</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
diff --git a/arrow_array/array/type.StringArray.html b/arrow_array/array/type.StringArray.html
index 4d59e9abab..351f8f07f6 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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
+}</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
diff --git a/arrow_array/array/type.Time32MillisecondArray.html b/arrow_array/array/type.Time32MillisecondArray.html
index 6efdcb93a5..659f373785 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 23577fd6b7..943a4fd742 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 a5ba75637e..aa92be476f 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 5c9c03925b..5b9f54a2db 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 f53c6ba373..f15585277f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="prelo [...]
 <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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 68c1a07892..6b0777851f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="prelo [...]
 <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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 fc6199d116..41d64ffb84 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload [...]
 <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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 b58750e75f..3eb1aa240a 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="fo [...]
 <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::Timestamp"><code>Timestamp</code></a>.</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>
 <h2 id="example-utc-timestamps-post-epoch"><a href="#example-utc-timestamps-post-epoch">Example: UTC timestamps post epoch</a></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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 143c2e7187..8d28625234 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 d69f5aa01d..c165134e45 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 3867cb6d6c..08aa8b3407 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 e59290b3f1..db1b4c1fcf 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 a41dd149a2..84078fe505 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 4d646a4aec..120802d9a1 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 ab843eb77a..ca0e236f9d 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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 [...]
+}</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 [...]
 </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 6d5da9fb9c..81d67e9bd6 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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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_ [...]
+}</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= [...]
 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 8630be32af..06be030c98 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" [...]
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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;,
@@ -75,11 +75,11 @@ 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: 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 [...]
+</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 [...]
     field_type_ids: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>],
     type_ids: Buffer,
     value_offsets: <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;,
-    child_arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(Field, <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>)&gt;
+    child_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="struct" href="../../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>, <a class="type" href="../type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>)&gt;
 ) -&gt; Self</h4></section></summary><div class="docblock"><p>Creates a new <code>UnionArray</code>.</p>
 <p>Accepts type ids, child arrays and optionally offsets (for dense unions) to create
 a new <code>UnionArray</code>.  This method makes no attempt to validate the data provided by the
@@ -102,8 +102,8 @@ to ensure that the data provided is valid.</p>
     field_type_ids: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>],
     type_ids: Buffer,
     value_offsets: <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;,
-    child_arrays: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(Field, <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, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Attempts to create a new <code>UnionArray</code>, validating the inputs provided.</p>
+    child_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="struct" href="../../../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>, <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>
 </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#231-234">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 href="#panics">Panics</a></h5>
 <p>Panics if the <code>type_id</code> provided is less than zero or greater than the number of types
@@ -129,12 +129,12 @@ 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#433-435">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#383-385">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#387-389">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; ArrayDat [...]
+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#387-389">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#415-417">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.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method trait-impl"><a class="src rightside" href="../../../src/arrow_array/array/union_array.rs.html#449-461">source</a><a href="#method.get_array_memory_size" class="anchor">§</a><h4 class="code-header">fn <a href="../trait.Array.html#tymethod.get_array_memory_size" class [...]
 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#195-197">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;  [...]
+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#195-197">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;  [...]
     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-1" 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-1" class="anchor">§</a><h4 class="code-header">fn <a  [...]
     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/builder/boolean_builder/struct.BooleanBuilder.html b/arrow_array/builder/boolean_builder/struct.BooleanBuilder.html
index 6164e2e920..1200ad7d84 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>, 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>
+) -&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 [...]
 <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 95eab13b3f..abc90f3cee 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>, ArrowError&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>, <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>
 <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/fn.make_builder.html b/arrow_array/builder/fn.make_builder.html
index e8add1ee8c..38bad5c9e1 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><link rel="preload" as="font" type="font/wof [...]
-    datatype: &amp;DataType,
+    datatype: &amp;<a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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 e3d9dceba3..cc5527cf52 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, ArrowError&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, <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
 which is initialized with the given values.
 The indices of those dictionary values are used as keys.</p>
 <h5 id="example"><a href="#example">Example</a></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>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Append a value to the array. Return an existing index
+) -&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 [...]
 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/index.html b/arrow_array/builder/index.html
index d309686124..452221f75a 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"><a href="#modules">Modules</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="Restricted Visib [...]
+</div></details><h2 id="modules" class="section-header"><a href="#modules">Modules</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="Restricted Visib [...]
 This function is useful to construct arrays from an arbitrary vectors with known/expected
 schema.</div></li></ul><h2 id="types" class="section-header"><a href="#types">Type Aliases</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 class="item-name"> [...]
\ 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 fd0bf6fc22..2d3eae1d99 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as [...]
\ 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as [...]
\ 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 82bef4e9fc..b48f263a90 100644
--- a/arrow_array/builder/map_builder/struct.MapBuilder.html
+++ b/arrow_array/builder/map_builder/struct.MapBuilder.html
@@ -43,7 +43,7 @@ builder.append(<span class="bool-val">false</span>).unwrap();
 ) -&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.keys" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#113-115">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#118-120">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.append" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/map_builder.rs.html#126-137">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#126-137">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#140-150">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#153-161">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 c3ab2c7853..6338f9267a 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 [<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>
+}</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>
 </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#67">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 7aa6596923..bb4a3aaa06 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font [...]
     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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
 }</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: DataType) -&gt; Self</h4></section></summary><div class="docblock"><p>By default <a href="struct.PrimitiveBuilder.html" title="struct arrow_array::builde [...]
+</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 [...]
 data type of the generated array.</p>
 <p>This method allows overriding the data type, to allow specifying timezones
-for [<code>DataType::Timestamp</code>] or precision and scale for [<code>DataType::Decimal128</code>] and [<code>DataType::Decimal256</code>]</p>
+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 [...]
 <h5 id="panics"><a href="#panics">Panics</a></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, ArrowError&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, <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>
 </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 07e77c9b57..119256cc91 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Date64Builder.html b/arrow_array/builder/primitive_builder/type.Date64Builder.html
index 51f7e95d66..c378058118 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Decimal128Builder.html b/arrow_array/builder/primitive_builder/type.Decimal128Builder.html
index 917649371c..7e8cd10aa7 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Decimal256Builder.html b/arrow_array/builder/primitive_builder/type.Decimal256Builder.html
index abd418721b..0b6d77c888 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.DurationMicrosecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationMicrosecondBuilder.html
index a36b67369f..ae9cc7d316 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.DurationMillisecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationMillisecondBuilder.html
index 1aac2632ab..edf19602ce 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.DurationNanosecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationNanosecondBuilder.html
index ac336a7df9..5016c0c23b 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.DurationSecondBuilder.html b/arrow_array/builder/primitive_builder/type.DurationSecondBuilder.html
index b6d0279bf7..9485218aaf 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Float16Builder.html b/arrow_array/builder/primitive_builder/type.Float16Builder.html
index e0bb47908f..db7399ef92 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.3.1/half/binary16/struct.f16.html" title="struct half::binary16::f16">f16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    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.3.1/half/binary16/struct.f16.html" title="struct ha [...]
\ No newline at end of file
+    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.3.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 31f7cabafe..b98d81e0f2 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Float64Builder.html b/arrow_array/builder/primitive_builder/type.Float64Builder.html
index 8eb66666ca..c946e380bf 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Int16Builder.html b/arrow_array/builder/primitive_builder/type.Int16Builder.html
index b3b2f81fa5..5bda23e285 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Int32Builder.html b/arrow_array/builder/primitive_builder/type.Int32Builder.html
index 18c377ee59..ac1553aa9d 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Int64Builder.html b/arrow_array/builder/primitive_builder/type.Int64Builder.html
index 3f78c3a0e1..1a15636df6 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Int8Builder.html b/arrow_array/builder/primitive_builder/type.Int8Builder.html
index ba46a01b84..ee6d9e958a 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.IntervalDayTimeBuilder.html b/arrow_array/builder/primitive_builder/type.IntervalDayTimeBuilder.html
index aade895328..c0eee276c1 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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.IntervalMonthDayNanoBuilder.html b/arrow_array/builder/primitive_builder/type.IntervalMonthDayNanoBuilder.html
index 05ecd42173..a13a5245e5 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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.IntervalYearMonthBuilder.html b/arrow_array/builder/primitive_builder/type.IntervalYearMonthBuilder.html
index 1e8ce6fe8a..7f99d9dd4f 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Time32MillisecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time32MillisecondBuilder.html
index 0d3e08202e..a0e1845eb4 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Time32SecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time32SecondBuilder.html
index ec504c2b2c..6643bf6422 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Time64MicrosecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time64MicrosecondBuilder.html
index 6672968111..340f977143 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.Time64NanosecondBuilder.html b/arrow_array/builder/primitive_builder/type.Time64NanosecondBuilder.html
index a04e58b7b3..aaafa00d71 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.TimestampMicrosecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampMicrosecondBuilder.html
index 3ce23f7d6c..19bc85f8ff 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.TimestampMillisecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampMillisecondBuilder.html
index 94f90faaa8..4404790724 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.TimestampNanosecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampNanosecondBuilder.html
index 985baaa4bc..be2c4f823d 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.TimestampSecondBuilder.html b/arrow_array/builder/primitive_builder/type.TimestampSecondBuilder.html
index 69f61b3468..8a42e37083 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.UInt16Builder.html b/arrow_array/builder/primitive_builder/type.UInt16Builder.html
index af97cfd206..d4c1d1ef8f 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.UInt32Builder.html b/arrow_array/builder/primitive_builder/type.UInt32Builder.html
index 530bc33bdf..f67e1e3f98 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.UInt64Builder.html b/arrow_array/builder/primitive_builder/type.UInt64Builder.html
index 2d63730c81..eaa9ed7ca7 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: 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
+    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
diff --git a/arrow_array/builder/primitive_builder/type.UInt8Builder.html b/arrow_array/builder/primitive_builder/type.UInt8Builder.html
index e5abb3eda3..0edb48d972 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: 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
+    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
diff --git a/arrow_array/builder/primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html b/arrow_array/builder/primitive_dictionary_builder/struct.PrimitiveDictionaryBuilder.html
index 6587214ff5..a016f9b837 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-305">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 b7d9a82315..d1ceeac8b9 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>, 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>
+) -&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  [...]
 <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 9c79a8eda6..49f2ce9242 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>, ArrowError&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>, <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>
 <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.GenericByteDictionaryBuilder.html b/arrow_array/builder/struct.GenericByteDictionaryBuilder.html
index b0411c5e35..623f8b2c74 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, ArrowError&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, <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
 which is initialized with the given values.
 The indices of those dictionary values are used as keys.</p>
 <h5 id="example"><a href="#example">Example</a></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>, ArrowError&gt;</h4></section></summary><div class="docblock"><p>Append a value to the array. Return an existing index
+) -&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 [...]
 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.MapBuilder.html b/arrow_array/builder/struct.MapBuilder.html
index 8f4571049c..ada0511b9f 100644
--- a/arrow_array/builder/struct.MapBuilder.html
+++ b/arrow_array/builder/struct.MapBuilder.html
@@ -43,7 +43,7 @@ builder.append(<span class="bool-val">false</span>).unwrap();
 ) -&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.keys" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#113-115">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#118-120">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.append" class="method"><a class="src rightside" href="../../src/arrow_array/builder/map_builder.rs.html#126-137">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#126-137">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#140-150">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#153-161">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 8d530caaac..9e502ce8e9 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 [<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>
+}</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>
 </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#67">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 8c350a194f..c5ccba2e51 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin hr [...]
     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: DataType,
+    data_type: <a class="enum" href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
 }</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: DataType) -&gt; Self</h4></section></summary><div class="docblock"><p>By default <a href="primitive_builder/struct.PrimitiveBuilder.html" title="struct arro [...]
+</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>< [...]
 data type of the generated array.</p>
 <p>This method allows overriding the data type, to allow specifying timezones
-for [<code>DataType::Timestamp</code>] or precision and scale for [<code>DataType::Decimal128</code>] and [<code>DataType::Decimal256</code>]</p>
+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 [...]
 <h5 id="panics"><a href="#panics">Panics</a></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, ArrowError&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, <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>
 </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 7e73ad4de2..952830375a 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-305">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 b186e36877..cc278c0366 100644
--- a/arrow_array/builder/struct.StructBuilder.html
+++ b/arrow_array/builder/struct.StructBuilder.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="Builder for `StructArray`"><title>StructBuilder in arrow_array::builder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=".. [...]
-    fields: Fields,
+    fields: <a class="struct" href="../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
     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>
 <p>Note that callers should make sure that methods of all the child field builders are
 properly called to maintain the consistency of the data structure.</p>
-</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;,
+</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;,
     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#196-203">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.from_fields" class="method"><a class="src rightside" href="../../src/arrow_array/builder/struct_builder.rs.html#196-203">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.field_builder" class="method"><a class="src rightside" href="../../src/arrow_array/builder/struct_builder.rs.html#208-210">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 580b6f5fb0..35a652ad19 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#194-199">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>, ArrowError&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>, <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
 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>, ArrowError&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>, <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>
 </div></details><section id="method.append_option" class="method"><a class="src rightside" href="../../src/arrow_array/builder/union_builder.rs.html#211-274">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>, 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#277-312">source</a><h4 class="code-header">pub fn  [...]
+) -&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 [...]
 </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#140">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 224d01fad3..d22623e81e 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><link rel="preload" as="font [...]
-    datatype: &amp;DataType,
+    datatype: &amp;<a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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 dbb5c95392..46be599497 100644
--- a/arrow_array/builder/struct_builder/struct.StructBuilder.html
+++ b/arrow_array/builder/struct_builder/struct.StructBuilder.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="Builder for `StructArray`"><title>StructBuilder in arrow_array::builder::struct_builder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" c [...]
-    fields: Fields,
+    fields: <a class="struct" href="../../../arrow_schema/fields/struct.Fields.html" title="struct arrow_schema::fields::Fields">Fields</a>,
     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>
 <p>Note that callers should make sure that methods of all the child field builders are
 properly called to maintain the consistency of the data structure.</p>
-</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;,
+</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;,
     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#196-203">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.from_fields" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/struct_builder.rs.html#196-203">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.field_builder" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/struct_builder.rs.html#208-210">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 f1677533fb..b9746ad495 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: 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
+    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
diff --git a/arrow_array/builder/type.Date64Builder.html b/arrow_array/builder/type.Date64Builder.html
index d729d73e68..87f8c5ab94 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: 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
+    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
diff --git a/arrow_array/builder/type.Decimal128Builder.html b/arrow_array/builder/type.Decimal128Builder.html
index e2810dbec5..d10ddc4d13 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: 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
+    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
diff --git a/arrow_array/builder/type.Decimal256Builder.html b/arrow_array/builder/type.Decimal256Builder.html
index 7af443941e..079cef0423 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: 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
+    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
diff --git a/arrow_array/builder/type.DurationMicrosecondBuilder.html b/arrow_array/builder/type.DurationMicrosecondBuilder.html
index 4c506f17a5..d3e838cf06 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: 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
+    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
diff --git a/arrow_array/builder/type.DurationMillisecondBuilder.html b/arrow_array/builder/type.DurationMillisecondBuilder.html
index e7fccadb88..50969bda4c 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: 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
+    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
diff --git a/arrow_array/builder/type.DurationNanosecondBuilder.html b/arrow_array/builder/type.DurationNanosecondBuilder.html
index de3487b8a1..73ff4f3f0d 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: 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
+    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
diff --git a/arrow_array/builder/type.DurationSecondBuilder.html b/arrow_array/builder/type.DurationSecondBuilder.html
index 1ef50d1fdb..49e02d1898 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: 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
+    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
diff --git a/arrow_array/builder/type.Float16Builder.html b/arrow_array/builder/type.Float16Builder.html
index 70c6331eba..547d64f7ef 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.3.1/half/binary16/struct.f16.html" title="struct half::binary16::f16">f16</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    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.3.1/half/binary16/struct.f16.html" title="struct half: [...]
\ No newline at end of file
+    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.3.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 b53b283309..8b72c0d87d 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: 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
+    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
diff --git a/arrow_array/builder/type.Float64Builder.html b/arrow_array/builder/type.Float64Builder.html
index 411749a4e9..57ae425673 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: 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
+    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
diff --git a/arrow_array/builder/type.Int16Builder.html b/arrow_array/builder/type.Int16Builder.html
index b854b1c396..241c00b95a 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: 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
+    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
diff --git a/arrow_array/builder/type.Int32Builder.html b/arrow_array/builder/type.Int32Builder.html
index 3f35825b18..588793f7d5 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: 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
+    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
diff --git a/arrow_array/builder/type.Int64Builder.html b/arrow_array/builder/type.Int64Builder.html
index bf1fe09406..efc45389d8 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: 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
+    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
diff --git a/arrow_array/builder/type.Int8Builder.html b/arrow_array/builder/type.Int8Builder.html
index d78e9da926..b0007b2449 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: 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
+    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
diff --git a/arrow_array/builder/type.IntervalDayTimeBuilder.html b/arrow_array/builder/type.IntervalDayTimeBuilder.html
index 8986e044e7..ae318c8c6c 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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    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
+    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
diff --git a/arrow_array/builder/type.IntervalMonthDayNanoBuilder.html b/arrow_array/builder/type.IntervalMonthDayNanoBuilder.html
index 71fea63d55..e7eea154db 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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a>&gt;,
     null_buffer_builder: NullBufferBuilder,
-    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
+    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
diff --git a/arrow_array/builder/type.IntervalYearMonthBuilder.html b/arrow_array/builder/type.IntervalYearMonthBuilder.html
index e104c85258..4c70146528 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: 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
+    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
diff --git a/arrow_array/builder/type.Time32MillisecondBuilder.html b/arrow_array/builder/type.Time32MillisecondBuilder.html
index a4c347b1f4..e9d2f01c85 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: 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
+    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
diff --git a/arrow_array/builder/type.Time32SecondBuilder.html b/arrow_array/builder/type.Time32SecondBuilder.html
index 90051505c1..38cc24bda0 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: 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
+    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
diff --git a/arrow_array/builder/type.Time64MicrosecondBuilder.html b/arrow_array/builder/type.Time64MicrosecondBuilder.html
index f25364da1e..3c92b11acb 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: 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
+    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
diff --git a/arrow_array/builder/type.Time64NanosecondBuilder.html b/arrow_array/builder/type.Time64NanosecondBuilder.html
index 13c1f091f8..76046b7cce 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: 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
+    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
diff --git a/arrow_array/builder/type.TimestampMicrosecondBuilder.html b/arrow_array/builder/type.TimestampMicrosecondBuilder.html
index 9ecf0b1e6e..372bf0a8d9 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: 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
+    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
diff --git a/arrow_array/builder/type.TimestampMillisecondBuilder.html b/arrow_array/builder/type.TimestampMillisecondBuilder.html
index 4048427d11..317c1f6630 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: 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
+    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
diff --git a/arrow_array/builder/type.TimestampNanosecondBuilder.html b/arrow_array/builder/type.TimestampNanosecondBuilder.html
index e4fc6ed82f..2d2b3eb4e7 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: 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
+    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
diff --git a/arrow_array/builder/type.TimestampSecondBuilder.html b/arrow_array/builder/type.TimestampSecondBuilder.html
index 2e46f58b79..935096a313 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: 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
+    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
diff --git a/arrow_array/builder/type.UInt16Builder.html b/arrow_array/builder/type.UInt16Builder.html
index 4693fd898d..7c49008e9b 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: 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
+    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
diff --git a/arrow_array/builder/type.UInt32Builder.html b/arrow_array/builder/type.UInt32Builder.html
index cd0de15b94..223b6a5d80 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: 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
+    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
diff --git a/arrow_array/builder/type.UInt64Builder.html b/arrow_array/builder/type.UInt64Builder.html
index 56cf7137ce..5ad3f8e549 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: 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
+    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
diff --git a/arrow_array/builder/type.UInt8Builder.html b/arrow_array/builder/type.UInt8Builder.html
index f7ac6d1798..913cec6f4a 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: 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
+    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
diff --git a/arrow_array/builder/union_builder/struct.FieldData.html b/arrow_array/builder/union_builder/struct.FieldData.html
index 251c1d8cc7..a37f70fdb4 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf. [...]
     type_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a>,
-    data_type: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</a>,
     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: 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.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.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#66-96">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: DataType,
+    data_type: <a class="enum" href="../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">DataType</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 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#79-88">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 ecdc1d5ddb..2c3c0dab99 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#194-199">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>, ArrowError&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>, <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
 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>, ArrowError&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>, <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>
 </div></details><section id="method.append_option" class="method"><a class="src rightside" href="../../../src/arrow_array/builder/union_builder.rs.html#211-274">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>, 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#277-312">source</a><h4 class="code-header">pub  [...]
+) -&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 [...]
 </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#140">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/cast/fn.downcast_array.html b/arrow_array/cast/fn.downcast_array.html
index 3abf701ece..4a0b6cbfd1 100644
--- a/arrow_array/cast/fn.downcast_array.html
+++ b/arrow_array/cast/fn.downcast_array.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="Downcasts a `dyn Array` to a concrete type"><title>downcast_array in arrow_array::cast - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" cross [...]
-    T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;ArrayData&gt;,</div></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcasts a <code>dyn Array</code> to a concrete type</p>
+    T: <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_data/data/struct.ArrayData.html" title="struct arrow_data::data::ArrayData">ArrayData</a>&gt;,</div></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Downcasts a <code>dyn Array</code> to a concrete type</p>
 
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">struct </span>ConcreteBatch {
     col1: Int32Array,
diff --git a/arrow_array/index.html b/arrow_array/index.html
index 1a115d1e21..0abc58fd2b 100644
--- a/arrow_array/index.html
+++ b/arrow_array/index.html
@@ -107,16 +107,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"><a href="#reexports">Re-exports</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"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="arithmetic/index.html" title="mod arrow_array::arithmetic">arithmetic</a><span [...]
-<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 [...]
+<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 [...]
 accepts a number of subsequent patterns to match the data type</div></li></ul><h2 id="structs" class="section-header"><a href="#structs">Structs</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">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="../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="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"><a href="#traits">Traits</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 282591e27e..7be8092ac8 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4 [...]
     (<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"><code>DataType</code></a>, accepts
+}</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 [...]
 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 f68987c9a1..ac41509545 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><link rel="preload" as="font" type="font/woff2" [...]
     ($(<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"><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/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</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 6e802566ef..8616a79f11 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><link rel="preload" as="font" type="font/woff2" crosso [...]
     ($(<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"><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/enum.DataType.html" title="enum arrow_schema::datatype::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 421ba0a6ce..abeb61f12a 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"><code>DataType</code></a>
+}</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 [...]
 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 483b8d1cf4..bb5b90658f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98 [...]
     (<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"><code>DataType</code></a>, accepts
+}</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 [...]
 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 59406ff45c..40fb947bcc 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><link rel="preload" as="font" type="font/wof [...]
     ($(<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"><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/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</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 6593a2652f..a93c49ad62 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><link rel="preload" as="font" type="font/woff2" crossor [...]
     ($(<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"><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/enum.DataType.html" title="enum arrow_schema::datatype::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 5f38e89d0c..7857fb7019 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"><code>DataType</code></a>
+}</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 [...]
 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 a99730748f..6c1cecea64 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type= [...]
-<a href="arrow_schema::Schema">schema</a>.</p>
+<a href="../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::schema::Schema">schema</a>.</p>
 </div></details><h2 id="structs" class="section-header"><a href="#structs">Structs</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">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
+<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
diff --git a/arrow_array/record_batch/struct.RecordBatch.html b/arrow_array/record_batch/struct.RecordBatch.html
index d32a86ecf3..0fbc33d42c 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload"  [...]
-    schema: SchemaRef,
+    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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">schema</a>.</p>
+<a href="../../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::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: 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"  [...]
+</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 [...]
 <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-473">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: SchemaRef,
+    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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, ArrowError&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, <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>
 <p>Expects the following:</p>
 <ul>
 <li>the vec of columns to not be empty</li>
@@ -36,24 +36,24 @@ 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: SchemaRef,
+    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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, ArrowError&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, <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,
 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: 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.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.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: SchemaRef,
+    schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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, 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
+) -&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 [...]
 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: 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 [...]
+</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 [...]
 <p>Returns an error if <code>schema</code> is not a superset of the current schema
-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.project" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#240-263">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 <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.project" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#240-263">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#283-285">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 href="#example-1">Example</a></h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
@@ -105,7 +105,7 @@ as determined by [<code>Schema::contains</code>]</p>
 according to <code>offset</code> and <code>length</code></p>
 <h5 id="panics-2"><a href="#panics-2">Panics</a></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#409-423">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 [...]
+</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#409-423">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= [...]
     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
@@ -125,7 +125,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#446-464">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#446-464">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
@@ -145,7 +145,7 @@ testing.</p>
   (<span class="string">"b"</span>, b, <span class="bool-val">true</span>),
 ]);</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#467-472">source</a><h4 class="code-header">pub fn <a href="#method.get_array_memory_size" class="fn">get_array_memory_size</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>Re [...]
-</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-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">im [...]
+</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-RecordBatch" class="impl"><a class="src rightside" href="../../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">im [...]
 <h5 id="panics-3"><a href="#panics-3">Panics</a></h5>
 <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 [...]
diff --git a/arrow_array/record_batch/struct.RecordBatchIterator.html b/arrow_array/record_batch/struct.RecordBatchIterator.html
index 263909ef91..0d76dac2a4 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="prel [...]
-    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>{
+    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/ [...]
     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: SchemaRef,
+    inner_schema: <a class="type" href="../../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
 }</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 href="#example">Example</a></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>, ArrowError&gt;&gt;,</div></h3></section>< [...]
+</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/ [...]
 <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#595-608">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>, ArrowError&gt;&gt;,</div></h3></section>< [...]
+    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/ [...]
     &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 [...]
@@ -200,7 +200,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#610-617">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>, ArrowError&gt;&gt;,</div></h3></section>< [...]
+    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/ [...]
     &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. [...]
     &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 753b51e411..ee817f364b 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="fo [...]
+<!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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="fo [...]
     // Required method
-    fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef;
+    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>;
 
     // 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;, ArrowError&gt; { ... }
+    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 [...]
 }</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; SchemaRef</h4></section></summary><div class="docblock"><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 [...]
 <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>, ArrowError&gt;&gt;,</div></h3></section>< [...]
\ 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>, <a class="enum" href="../../arrow_schema/ [...]
\ 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 2dabc422c9..25ae8c132a 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="f [...]
     // 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>, 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;;
+    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;;
 }</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 96de878a33..453e7ea300 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="f [...]
-    schema: SchemaRef,
+    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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">schema</a>.</p>
+<a href="../arrow_schema/schema/struct.Schema.html" title="struct arrow_schema::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: 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"  [...]
+</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 [...]
 <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-473">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: SchemaRef,
+    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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, ArrowError&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, <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>
 <p>Expects the following:</p>
 <ul>
 <li>the vec of columns to not be empty</li>
@@ -36,24 +36,24 @@ 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: SchemaRef,
+    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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, ArrowError&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, <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,
 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: 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.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.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: SchemaRef,
+    schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
     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, 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
+) -&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 [...]
 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: 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 [...]
+</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 [...]
 <p>Returns an error if <code>schema</code> is not a superset of the current schema
-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.project" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#240-263">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 <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.project" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#240-263">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#283-285">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 href="#example-1">Example</a></h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code>
@@ -105,7 +105,7 @@ as determined by [<code>Schema::contains</code>]</p>
 according to <code>offset</code> and <code>length</code></p>
 <h5 id="panics-2"><a href="#panics-2">Panics</a></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#409-423">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 [...]
+</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#409-423">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=".. [...]
     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
@@ -125,7 +125,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#446-464">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#446-464">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
@@ -145,7 +145,7 @@ testing.</p>
   (<span class="string">"b"</span>, b, <span class="bool-val">true</span>),
 ]);</code></pre></div>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.get_array_memory_size" class="method"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#467-472">source</a><h4 class="code-header">pub fn <a href="#method.get_array_memory_size" class="fn">get_array_memory_size</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>Retur [...]
-</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-RecordBatch" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">impl  [...]
+</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-RecordBatch" class="impl"><a class="src rightside" href="../src/arrow_array/record_batch.rs.html#71">source</a><a href="#impl-Clone-for-RecordBatch" class="anchor">§</a><h3 class="code-header">impl  [...]
 <h5 id="panics-3"><a href="#panics-3">Panics</a></h5>
 <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 [...]
diff --git a/arrow_array/struct.RecordBatchIterator.html b/arrow_array/struct.RecordBatchIterator.html
index ddd6900f47..9026a16238 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" ty [...]
-    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>{
+    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 [...]
     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: SchemaRef,
+    inner_schema: <a class="type" href="../arrow_schema/schema/type.SchemaRef.html" title="type arrow_schema::schema::SchemaRef">SchemaRef</a>,
 }</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 href="#example">Example</a></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>, ArrowError&gt;&gt;,</div></h [...]
+</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 [...]
 <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#595-608">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>, ArrowError&gt;&gt;,</div></h [...]
+    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 [...]
     &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 [...]
@@ -200,7 +200,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#610-617">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>, ArrowError&gt;&gt;,</div></h [...]
+    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 [...]
     &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. [...]
     &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 fa1e7f3bc3..b036180144 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../ [...]
-</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/private/struct.TzOffset.html b/arrow_array/timezone/private/struct.TzOffset.html
index e715c65685..b0ce52ea27 100644
--- a/arrow_array/timezone/private/struct.TzOffset.html
+++ b/arrow_array/timezone/private/struct.TzOffset.html
@@ -2,7 +2,7 @@
     tz: <a class="struct" href="struct.Tz.html" title="struct arrow_array::timezone::private::Tz">Tz</a>,
     offset: <a class="struct" href="https://docs.rs/chrono/latest/chrono/offset/fixed/struct.FixedOffset.html" title="struct chrono::offset::fixed::FixedOffset">FixedOffset</a>,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An <a href="https://docs.rs/chrono/latest/chrono/offset/trait.Offset.html" title="trait chrono::offset::Offset"><code>Offset</code></a> for <a href="struct.Tz.html" title="struct arrow_array::timezone::private::Tz"><code>Tz</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.tz" class="structfield section-header"><a href="#structfield.tz" class="anchor field">§</a><code>tz: <a class="struct" href="struct.Tz.html" title="struct arrow_array::timezone::private::Tz">Tz</a></code></span><span id="structfield.offset" class="structfield section-header"><a href="#structfield.offset" class="anchor field">§</a><code>offset: <a class="str [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.tz" class="structfield section-header"><a href="#structfield.tz" class="anchor field">§</a><code>tz: <a class="struct" href="struct.Tz.html" title="struct arrow_array::timezone::private::Tz">Tz</a></code></span><span id="structfield.offset" class="structfield section-header"><a href="#structfield.offset" class="anchor field">§</a><code>offset: <a class="str [...]
     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/timezone/struct.Tz.html b/arrow_array/timezone/struct.Tz.html
index 1a7f94f360..5a647b4376 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files [...]
-</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/timezone/struct.TzOffset.html b/arrow_array/timezone/struct.TzOffset.html
index 8de1230581..934ec1b97b 100644
--- a/arrow_array/timezone/struct.TzOffset.html
+++ b/arrow_array/timezone/struct.TzOffset.html
@@ -2,7 +2,7 @@
     tz: <a class="struct" href="private/struct.Tz.html" title="struct arrow_array::timezone::private::Tz">Tz</a>,
     offset: <a class="struct" href="https://docs.rs/chrono/latest/chrono/offset/fixed/struct.FixedOffset.html" title="struct chrono::offset::fixed::FixedOffset">FixedOffset</a>,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An <a href="https://docs.rs/chrono/latest/chrono/offset/trait.Offset.html" title="trait chrono::offset::Offset"><code>Offset</code></a> for <a href="private/struct.Tz.html" title="struct arrow_array::timezone::private::Tz"><code>Tz</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.tz" class="structfield section-header"><a href="#structfield.tz" class="anchor field">§</a><code>tz: <a class="struct" href="private/struct.Tz.html" title="struct arrow_array::timezone::private::Tz">Tz</a></code></span><span id="structfield.offset" class="structfield section-header"><a href="#structfield.offset" class="anchor field">§</a><code>offset: <a cl [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.tz" class="structfield section-header"><a href="#structfield.tz" class="anchor field">§</a><code>tz: <a class="struct" href="private/struct.Tz.html" title="struct arrow_array::timezone::private::Tz">Tz</a></code></span><span id="structfield.offset" class="structfield section-header"><a href="#structfield.offset" class="anchor field">§</a><code>offset: <a 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/trait.ArrowNativeTypeOp.html b/arrow_array/trait.ArrowNativeTypeOp.html
index 2415e65b30..1db485998b 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, ArrowError&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, <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.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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&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, <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_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, ArrowError&gt;</h4></section></summary><di [...]
+</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_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, ArrowError&gt;</h4></section></summary><di [...]
+</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_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, ArrowError&gt;</h4></section></summary><di [...]
+</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_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, ArrowError&gt;</h4></section></summary><di [...]
+</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_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, ArrowError&gt;</h4></section></summary><div class="do [...]
+</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_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 d4030819d7..c5f211527e 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossor [...]
+<!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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossor [...]
     // Required method
-    fn <a href="#tymethod.schema" class="fn">schema</a>(&amp;self) -&gt; SchemaRef;
+    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>;
 
     // 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;, Arro [...]
+    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 [...]
 }</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; SchemaRef</h4></section></summary><div class="docblock"><p>Ret [...]
+</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 [...]
 <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>, ArrowError&gt;&gt;,</div></h [...]
\ 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>, <a class="enum" href="../arr [...]
\ No newline at end of file
diff --git a/arrow_array/trait.RecordBatchWriter.html b/arrow_array/trait.RecordBatchWriter.html
index 82e3977f42..69e919016f 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crosso [...]
     // 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>, 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;;
+    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;;
 }</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 e23ec555b2..d5b524f83e 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preloa [...]
     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>, 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>
+) -&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 [...]
 <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 5c134df57d..3934b6da67 100644
--- a/arrow_array/types/index.html
+++ b/arrow_array/types/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="Zero-sized types used to parameterize generic array implementations"><title>arrow_array::types - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff [...]
 </div></details><h2 id="modules" class="section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><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 class="desc docblock-short">Crate private types for Byte Arrays</div></li><li><div class="item-name"><a class="mod" href="decimal/index.html" title="mod arrow_array::types::decimal">decimal</a><span titl [...]
-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 bridging the dynamic-typed nature of Arrow (via [<code>DataType</code>]) with the
+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 bridging the dynamic-typed nature of Arrow (via <a href="../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType"><code>Data [...]
 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><di [...]
 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.BooleanType.html b/arrow_array/types/struct.BooleanType.html
index d15b6e29f8..dc9c8d0e69 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static. [...]
-</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#43-46">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#43-46">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#40">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 a18f7241e0..69f95cbf55 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#176-181">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#176-181">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 740c7b3b1d..2d69d3cc85 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#182-187">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#182-187">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 a69122b4e4..97c3b75dca 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossori [...]
-</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#1285-1289">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#1285-1289">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>, 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">< [...]
+) -&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 [...]
     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 9e20d9eb49..8ce36eb835 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossori [...]
-</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#1315-1319">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#1315-1319">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>, 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">< [...]
+) -&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 [...]
     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 b25b06c5fb..82b3a2969e 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2"  [...]
-</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#242-247">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#242-247">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 27c64e97a0..ab24586135 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2"  [...]
-</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#236-241">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#236-241">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 8f2e162cd3..a46e21e22e 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" cr [...]
-</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#248-253">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#248-253">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 c185d3a5ba..1b360b88fd 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigi [...]
-</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#230-235">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#230-235">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 145e383183..014f1f7091 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin 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-Float16Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#134-139">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#134-139">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 d68058abb0..da6b3c2a69 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin 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-Float32Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#140-145">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#140-145">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 5f69f86c10..9d6213a98d 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin 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-Float64Type" class="impl"><a class="src rightside" href="../../src/arrow_array/types.rs.html#146-151">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#146-151">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 f937857690..086d611652 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#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>, 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 [...]
+) -&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  [...]
     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 948268b141..30a306fbb8 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#1407">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#1407">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>, 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 [...]
+) -&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  [...]
     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 f65132aeb2..9245457781 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../. [...]
-</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#92-97">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#92-97">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 6d5e077e0b..d2f0384cc4 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../. [...]
-</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#98-103">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#98-103">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 711eb71adc..31d6de4e48 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../. [...]
-</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#104-109">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#104-109">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 27bfefac4c..ec4d3ddb56 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../ [...]
-</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#91">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#91">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 e80f07faa4..9967938f3f 100644
--- a/arrow_array/types/struct.IntervalDayTimeType.html
+++ b/arrow_array/types/struct.IntervalDayTimeType.html
@@ -15,7 +15,7 @@
 <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#218-223">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#218-223">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 5a85f67086..e7d76590bc 100644
--- a/arrow_array/types/struct.IntervalMonthDayNanoType.html
+++ b/arrow_array/types/struct.IntervalMonthDayNanoType.html
@@ -17,7 +17,7 @@
 <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#224-229">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#224-229">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 0113534963..06af173cf3 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#212-217">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#212-217">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.Time32MillisecondType.html b/arrow_array/types/struct.Time32MillisecondType.html
index 16c0b6c06a..8d99d54276 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link r [...]
-</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#194-199">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#194-199">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 d7abab61bc..7b369a5038 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preloa [...]
-</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#188-193">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#188-193">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 6f38ef49c7..d35989608b 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link r [...]
-</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#200-205">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#200-205">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 db4c75c12f..1b95b791b7 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
-</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#206-211">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#206-211">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 721f19338a..8f5cdab539 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#164-169">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#164-169">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 0fed6885c8..beb5ef236b 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#158-163">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#158-163">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 5b519a746d..a93bc1c78b 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#170-175">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#170-175">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 bca0b1b297..816b8eb843 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#152-157">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#152-157">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 d12aa1ef26..062b415949 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=" [...]
-</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#116-121">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#116-121">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 450eb014b0..fee501faaf 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=" [...]
-</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#122-127">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#122-127">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 cb64d4b155..c8a2ef15f7 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=" [...]
-</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#128-133">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#128-133">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 af2f43c892..01f70d2bd2 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href=".. [...]
-</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#110-115">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#110-115">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 37c07218c4..09292bc602 100644
--- a/arrow_array/types/trait.ArrowPrimitiveType.html
+++ b/arrow_array/types/trait.ArrowPrimitiveType.html
@@ -1,16 +1,16 @@
 <!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 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><link rel="preload" as="font" type="font/woff2"  [...]
     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>: DataType;
+    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>;
 
     // 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 bridging the dynamic-typed nature of Arrow (via [<code>DataType</code>]) with the
+}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait 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 (<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#54">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#57">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="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#57">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="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#60-62">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#67-69">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 9b146b4aa2..157141f5b2 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="prelo [...]
-    const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: TimeUnit;
+    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>;
 
     // 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; TimeUnit { ... }
+    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> { ... }
 }</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#310">source</a><h4 class="code-header">const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: TimeUnit</h4></section></summary><div c [...]
+</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#310">source</a><h4 class="code-header">const <a href="#associatedconstant.UNIT" class="constant">UNIT</a>: <a class="enum" href="../../arrow_schem [...]
 </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#321">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 [<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#314-316">source</a><h4 class="code-header">fn <a href="#method.get_time_unit" class="fn">get_time_unit</a>() -&gt; TimeUnit</h4></section></summary><span class="i [...]
-</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 <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#314-316">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
diff --git a/arrow_array/types/trait.ByteArrayType.html b/arrow_array/types/trait.ByteArrayType.html
index 9d6d1af1a4..70c0696b0d 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>: DataType;
+    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>;
 
     // 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>, ArrowError&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;;
 }</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#1383">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#1390">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#1393">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><details class="toggle" open><summary><section id="associatedconstant.DATA_TYPE" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1393">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></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#1396">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>, 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
+) -&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
diff --git a/arrow_array/types/trait.DecimalType.html b/arrow_array/types/trait.DecimalType.html
index f353588167..da5d81a07c 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; DataType;
-    const <a href="#associatedconstant.DEFAULT_TYPE" class="constant">DEFAULT_TYPE</a>: DataType;
+    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.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>, ArrowError&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;;
 }</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#1203">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#1205">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#1207">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#1209">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#1211">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.TYPE_CONSTRUCTOR" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1209">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#1211">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.PREFIX" class="method"><a class="src rightside" href="../../src/arrow_array/types.rs.html#1214">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#1217">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#1220">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>, 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
+) -&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
diff --git a/arrow_cast/cast/trait.DecimalCast.html b/arrow_cast/cast/trait.DecimalCast.html
index 00b31d16c1..7b81ffbe86 100644
--- a/arrow_cast/cast/trait.DecimalCast.html
+++ b/arrow_cast/cast/trait.DecimalCast.html
@@ -5,4 +5,4 @@
 <span class="item-spacer"></span>    fn <a href="#tymethod.from_decimal" class="fn">from_decimal</a>&lt;T: <a class="trait" href="trait.DecimalCast.html" title="trait arrow_cast::cast::DecimalCast">DecimalCast</a>&gt;(n: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A utility trait that provides checked conversions between
 decimal types inspired by <a href="https://docs.rs/num-traits/0.2/num_traits/cast/trait.NumCast.html" title="trait num_traits::cast::NumCast"><code>NumCast</code></a></p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><section id="tymethod.to_i128" class="method"><a class="src rightside" href="../../src/arrow_cast/cast.rs.html#2061">source</a><h4 class="code-header">fn <a href="#tymethod.to_i128" class="fn">to_i128</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option"> [...]
\ No newline at end of file
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><section id="tymethod.to_i128" class="method"><a class="src rightside" href="../../src/arrow_cast/cast.rs.html#2061">source</a><h4 class="code-header">fn <a href="#tymethod.to_i128" class="fn">to_i128</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option"> [...]
\ No newline at end of file
diff --git a/arrow_cast/display/enum.FormatError.html b/arrow_cast/display/enum.FormatError.html
index ca3e4b1bea..4cc4fe7581 100644
--- a/arrow_cast/display/enum.FormatError.html
+++ b/arrow_cast/display/enum.FormatError.html
@@ -2,7 +2,7 @@
     Format(<a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>),
     Arrow(ArrowError),
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Either an [<code>ArrowError</code>] or <a href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error"><code>std::fmt::Error</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.Format" class="variant"><a href="#variant.Format" class="anchor">§</a><h3 class="code-header">Format(<a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>)</h3></section><section id="variant.Arrow" class="variant"><a href="#variant.Arrow" class="anchor">§< [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Format" class="variant"><a href="#variant.Format" class="anchor">§</a><h3 class="code-header">Format(<a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>)</h3></section><section id="variant.Arrow" class="variant"><a href="#variant.Arrow" class="anchor">§< [...]
     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_flight/error/enum.FlightError.html b/arrow_flight/error/enum.FlightError.html
index b96d44e4e7..7c0e37a9dc 100644
--- a/arrow_flight/error/enum.FlightError.html
+++ b/arrow_flight/error/enum.FlightError.html
@@ -13,7 +13,7 @@
 </div><section id="variant.DecodeError" class="variant"><a href="#variant.DecodeError" class="anchor">§</a><h3 class="code-header">DecodeError(<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>An error occurred during decoding</p>
 </div><section id="variant.ExternalError" class="variant"><a href="#variant.ExternalError" class="anchor">§</a><h3 class="code-header">ExternalError(<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="https://doc.rust-lang.org/nightly/core/error/trait.Error.html" title="trait core::error::Error">Error</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Se [...]
 </div></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-FlightError" class="impl"><a class="src rightside" href="../../src/arrow_flight/error.rs.html#39-48">source</a><a href="#impl-FlightError" class="anchor">§</a><h3 class="code-header">impl <a class="enum" href="enum.FlightError.html" title="enum arrow_flight: [...]
-</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-FlightError" class="impl"><a class="src rightside" href="../../src/arrow_flight/error.rs.html#23">source</a><a href="#impl-Debug-for-FlightError" class="anchor">§</a><h3 class="code-header">impl <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-Debug-for-FlightError" class="impl"><a class="src rightside" href="../../src/arrow_flight/error.rs.html#23">source</a><a href="#impl-Debug-for-FlightError" class="anchor">§</a><h3 class="code-header">impl <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_flight/gen/struct.FlightData.html b/arrow_flight/gen/struct.FlightData.html
index c4e25c057f..f7319b9cf1 100644
--- a/arrow_flight/gen/struct.FlightData.html
+++ b/arrow_flight/gen/struct.FlightData.html
@@ -28,7 +28,7 @@ convert a stream of <a href="../../arrow_array/record_batch/struct.RecordBatch.h
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_header" class="method"><a class="src rightside" href="../../src/arrow_flight/lib.rs.html#412-415">source</a><h4 class="code-header">pub fn <a href="#method.with_data_header" class="fn">with_data_header</a>(self, data_header: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Bytes&gt;) -&gt; Self</h4></sec [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_body" class="method"><a class="src rightside" href="../../src/arrow_flight/lib.rs.html#420-423">source</a><h4 class="code-header">pub fn <a href="#method.with_data_body" class="fn">with_data_body</a>(self, data_body: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Bytes&gt;) -&gt; Self</h4></section></s [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_app_metadata" class="method"><a class="src rightside" href="../../src/arrow_flight/lib.rs.html#426-429">source</a><h4 class="code-header">pub fn <a href="#method.with_app_metadata" class="fn">with_app_metadata</a>(self, app_metadata: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Bytes&gt;) -&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-Clone-for-FlightData" class="impl"><a class="src rightside" href="../../src/arrow_flight/arrow.flight.protocol.rs.html#264">source</a><a href="#impl-Clone-for-FlightData" class="anchor">§</a><h3 class="code-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-Clone-for-FlightData" class="impl"><a class="src rightside" href="../../src/arrow_flight/arrow.flight.protocol.rs.html#264">source</a><a href="#impl-Clone-for-FlightData" class="anchor">§</a><h3 class="code-h [...]
     B: BufMut,
     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'>Encodes the message to a buffer. <a href="https://docs.rs/prost/0.12.2/prost/message/trait.Message.html#method.encode">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_to_vec" class="method trait-impl"><a class="src rightside" href="https: [...]
     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'>Encodes the message to a newly allocated buffer.</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_length_delimited" class="method trait-impl"><a class="src rightside" href="https://docs.rs/prost/0.12.2/src/prost/message.rs.html#78-81">source</a><a href= [...]
diff --git a/arrow_flight/gen/struct.Location.html b/arrow_flight/gen/struct.Location.html
index 2a80018a0d..e46e0423df 100644
--- a/arrow_flight/gen/struct.Location.html
+++ b/arrow_flight/gen/struct.Location.html
@@ -2,7 +2,7 @@
     pub uri: <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>A location where a Flight service will accept retrieval of a particular
 stream given a ticket.</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.uri" class="structfield section-header"><a href="#structfield.uri" class="anchor field">§</a><code>uri: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementati [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.uri" class="structfield section-header"><a href="#structfield.uri" class="anchor field">§</a><code>uri: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementati [...]
     B: BufMut,
     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'>Encodes the message to a buffer. <a href="https://docs.rs/prost/0.12.2/prost/message/trait.Message.html#method.encode">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_to_vec" class="method trait-impl"><a class="src rightside" href="https: [...]
     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'>Encodes the message to a newly allocated buffer.</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_length_delimited" class="method trait-impl"><a class="src rightside" href="https://docs.rs/prost/0.12.2/src/prost/message.rs.html#78-81">source</a><a href= [...]
diff --git a/arrow_flight/gen/struct.SchemaResult.html b/arrow_flight/gen/struct.SchemaResult.html
index a8b72189e0..2ce6559fb9 100644
--- a/arrow_flight/gen/struct.SchemaResult.html
+++ b/arrow_flight/gen/struct.SchemaResult.html
@@ -22,7 +22,7 @@ a flatbuffer Message whose header is the Schema</p>
     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'>Decodes a length-delimited instance of the message from buffer, and
 merges it into <code>self</code>.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-SchemaResult" class="impl"><a class="src rightside" href="../../src/arrow_flight/arrow.flight.protocol.rs.html#83">source</a><a href="#impl-PartialEq-for-SchemaResult" 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 core::cmp::PartialE [...]
 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#239">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%3C%26SchemaResult%3E-for-Schema" class="impl"><a class="src rightside" href="../../src/arrow_flight/lib.rs.html#360-365">source</a><a href="#impl-TryFrom%3C%26SchemaResult%3E-for-Schema" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trai [...]
+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%3C%26SchemaResult%3E-for-Schema" class="impl"><a class="src rightside" href="../../src/arrow_flight/lib.rs.html#360-365">source</a><a href="#impl-TryFrom%3C%26SchemaResult%3E-for-Schema" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/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 [...]
     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_flight/gen/struct.Ticket.html b/arrow_flight/gen/struct.Ticket.html
index 290e6e41ca..915bf283a6 100644
--- a/arrow_flight/gen/struct.Ticket.html
+++ b/arrow_flight/gen/struct.Ticket.html
@@ -7,7 +7,7 @@ behavior to reuse a ticket.</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.ticket" class="structfield section-header"><a href="#structfield.ticket" class="anchor field">§</a><code>ticket: Bytes</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" open><summary><section id="impl-Ticke [...]
 <h5 id="example"><a href="#example">Example</a></h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span>ticket = Ticket::new(<span class="string">"SELECT * from FOO"</span>);</code></pre></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-Clone-for-Ticket" class="impl"><a class="src rightside" href="../../src/arrow_flight/arrow.flight.protocol.rs.html#256">source</a><a href="#impl-Clone-for-Ticket" class="anchor">§</a><h3 class="code-header">i [...]
+</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-Ticket" class="impl"><a class="src rightside" href="../../src/arrow_flight/arrow.flight.protocol.rs.html#256">source</a><a href="#impl-Clone-for-Ticket" class="anchor">§</a><h3 class="code-header">i [...]
     B: BufMut,
     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'>Encodes the message to a buffer. <a href="https://docs.rs/prost/0.12.2/prost/message/trait.Message.html#method.encode">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_to_vec" class="method trait-impl"><a class="src rightside" href="https: [...]
     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'>Encodes the message to a newly allocated buffer.</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_length_delimited" class="method trait-impl"><a class="src rightside" href="https://docs.rs/prost/0.12.2/src/prost/message.rs.html#78-81">source</a><a href= [...]
diff --git a/arrow_flight/sql/metadata/sql_info/enum.SqlInfoValue.html b/arrow_flight/sql/metadata/sql_info/enum.SqlInfoValue.html
index 55e0dbeedd..722ee875bb 100644
--- a/arrow_flight/sql/metadata/sql_info/enum.SqlInfoValue.html
+++ b/arrow_flight/sql/metadata/sql_info/enum.SqlInfoValue.html
@@ -6,7 +6,7 @@
     StringList(<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/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;),
     ListMap(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>, <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.i32. [...]
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Represents a dynamic value</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(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</h3></section><section id="variant.Bool" class="variant"><a href="#variant.Bool" class="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(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</h3></section><section id="variant.Bool" class="variant"><a href="#variant.Bool" class="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#239">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-StructuralPartialEq-for-SqlInfoValue" class="impl"><a class="src rightside" href="../../../../src/arrow_flight/sql/metadata/sql_info.rs.html#47">source</a><a href="#impl-StructuralPartialEq-for-SqlInfoValue" 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: [...]
     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_flight/struct.FlightData.html b/arrow_flight/struct.FlightData.html
index 7c4abfee00..315800dd18 100644
--- a/arrow_flight/struct.FlightData.html
+++ b/arrow_flight/struct.FlightData.html
@@ -28,7 +28,7 @@ convert a stream of <a href="../arrow_array/record_batch/struct.RecordBatch.html
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_header" class="method"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#412-415">source</a><h4 class="code-header">pub fn <a href="#method.with_data_header" class="fn">with_data_header</a>(self, data_header: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Bytes&gt;) -&gt; Self</h4></sectio [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_data_body" class="method"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#420-423">source</a><h4 class="code-header">pub fn <a href="#method.with_data_body" class="fn">with_data_body</a>(self, data_body: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Bytes&gt;) -&gt; Self</h4></section></summ [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="method.with_app_metadata" class="method"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#426-429">source</a><h4 class="code-header">pub fn <a href="#method.with_app_metadata" class="fn">with_app_metadata</a>(self, app_metadata: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Bytes&gt;) -&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-Clone-for-FlightData" class="impl"><a class="src rightside" href="../src/arrow_flight/arrow.flight.protocol.rs.html#264">source</a><a href="#impl-Clone-for-FlightData" class="anchor">§</a><h3 class="code-head [...]
+</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-FlightData" class="impl"><a class="src rightside" href="../src/arrow_flight/arrow.flight.protocol.rs.html#264">source</a><a href="#impl-Clone-for-FlightData" class="anchor">§</a><h3 class="code-head [...]
     B: BufMut,
     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'>Encodes the message to a buffer. <a href="https://docs.rs/prost/0.12.2/prost/message/trait.Message.html#method.encode">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_to_vec" class="method trait-impl"><a class="src rightside" href="https: [...]
     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'>Encodes the message to a newly allocated buffer.</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_length_delimited" class="method trait-impl"><a class="src rightside" href="https://docs.rs/prost/0.12.2/src/prost/message.rs.html#78-81">source</a><a href= [...]
diff --git a/arrow_flight/struct.IpcMessage.html b/arrow_flight/struct.IpcMessage.html
index 5fee8a8daf..95b5a60bbd 100644
--- a/arrow_flight/struct.IpcMessage.html
+++ b/arrow_flight/struct.IpcMessage.html
@@ -1089,7 +1089,7 @@ given separator between each.</p>
 <h5 id="examples-59"><a href="#examples-59">Examples</a></h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="macro">assert_eq!</span>([<span class="string">"hello"</span>, <span class="string">"world"</span>].connect(<span class="string">" "</span>), <span class="string">"hello world"</span>);
 <span class="macro">assert_eq!</span>([[<span class="number">1</span>, <span class="number">2</span>], [<span class="number">3</span>, <span class="number">4</span>]].connect(<span class="kw-2">&amp;</span><span class="number">0</span>), [<span class="number">1</span>, <span class="number">2</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">4</span>]);</code></pre></div>
-</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-IpcMessage" class="impl"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#131">source</a><a href="#impl-Debug-for-IpcMessage" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="ht [...]
+</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-IpcMessage" class="impl"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#131">source</a><a href="#impl-Debug-for-IpcMessage" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="ht [...]
     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_flight/struct.Location.html b/arrow_flight/struct.Location.html
index fe6c964e91..ab8f4379a6 100644
--- a/arrow_flight/struct.Location.html
+++ b/arrow_flight/struct.Location.html
@@ -2,7 +2,7 @@
     pub uri: <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>A location where a Flight service will accept retrieval of a particular
 stream given a ticket.</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.uri" class="structfield section-header"><a href="#structfield.uri" class="anchor field">§</a><code>uri: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementati [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.uri" class="structfield section-header"><a href="#structfield.uri" class="anchor field">§</a><code>uri: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementati [...]
     B: BufMut,
     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'>Encodes the message to a buffer. <a href="https://docs.rs/prost/0.12.2/prost/message/trait.Message.html#method.encode">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_to_vec" class="method trait-impl"><a class="src rightside" href="https: [...]
     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'>Encodes the message to a newly allocated buffer.</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_length_delimited" class="method trait-impl"><a class="src rightside" href="https://docs.rs/prost/0.12.2/src/prost/message.rs.html#78-81">source</a><a href= [...]
diff --git a/arrow_flight/struct.SchemaResult.html b/arrow_flight/struct.SchemaResult.html
index 909a17d799..ac1a6aabd1 100644
--- a/arrow_flight/struct.SchemaResult.html
+++ b/arrow_flight/struct.SchemaResult.html
@@ -22,7 +22,7 @@ a flatbuffer Message whose header is the Schema</p>
     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'>Decodes a length-delimited instance of the message from buffer, and
 merges it into <code>self</code>.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-SchemaResult" class="impl"><a class="src rightside" href="../src/arrow_flight/arrow.flight.protocol.rs.html#83">source</a><a href="#impl-PartialEq-for-SchemaResult" 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 core::cmp::PartialEq"> [...]
 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#239">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%3C%26SchemaResult%3E-for-Schema" class="impl"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#360-365">source</a><a href="#impl-TryFrom%3C%26SchemaResult%3E-for-Schema" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.T [...]
+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%3C%26SchemaResult%3E-for-Schema" class="impl"><a class="src rightside" href="../src/arrow_flight/lib.rs.html#360-365">source</a><a href="#impl-TryFrom%3C%26SchemaResult%3E-for-Schema" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.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 [...]
     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_flight/struct.Ticket.html b/arrow_flight/struct.Ticket.html
index 75049acedd..963db252f0 100644
--- a/arrow_flight/struct.Ticket.html
+++ b/arrow_flight/struct.Ticket.html
@@ -7,7 +7,7 @@ behavior to reuse a ticket.</p>
 </div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.ticket" class="structfield section-header"><a href="#structfield.ticket" class="anchor field">§</a><code>ticket: Bytes</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" open><summary><section id="impl-Ticke [...]
 <h5 id="example"><a href="#example">Example</a></h5>
 <div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span>ticket = Ticket::new(<span class="string">"SELECT * from FOO"</span>);</code></pre></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-Clone-for-Ticket" class="impl"><a class="src rightside" href="../src/arrow_flight/arrow.flight.protocol.rs.html#256">source</a><a href="#impl-Clone-for-Ticket" class="anchor">§</a><h3 class="code-header">impl [...]
+</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-Ticket" class="impl"><a class="src rightside" href="../src/arrow_flight/arrow.flight.protocol.rs.html#256">source</a><a href="#impl-Clone-for-Ticket" class="anchor">§</a><h3 class="code-header">impl [...]
     B: BufMut,
     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'>Encodes the message to a buffer. <a href="https://docs.rs/prost/0.12.2/prost/message/trait.Message.html#method.encode">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_to_vec" class="method trait-impl"><a class="src rightside" href="https: [...]
     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'>Encodes the message to a newly allocated buffer.</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_length_delimited" class="method trait-impl"><a class="src rightside" href="https://docs.rs/prost/0.12.2/src/prost/message.rs.html#78-81">source</a><a href= [...]
diff --git a/arrow_integration_test/struct.ArrowJsonField.html b/arrow_integration_test/struct.ArrowJsonField.html
index 8c813eb69e..4526a748d7 100644
--- a/arrow_integration_test/struct.ArrowJsonField.html
+++ b/arrow_integration_test/struct.ArrowJsonField.html
@@ -10,7 +10,7 @@
 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_arrow_field" class="method"><a class="src rightside" href="../src/arrow_integration_test/lib.rs.html#272-277">source</a><h4 class="code-header">pub(crate) fn <a href="#method.to_arrow_field" class="fn">to_arrow_field</a>(&amp;self) -&gt; Result&lt;<a class="struct" href="../arrow_schema/field/struct.Field.html" title="struct arrow_schema::field::Field">Field</a>&gt;</h4></section></summary><div cla [...]
 TODO: convert to use an Into</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-Debug-for-ArrowJsonField" class="impl"><a class="src rightside" href="../src/arrow_integration_test/lib.rs.html#71">source</a><a href="#impl-Debug-for-ArrowJsonField" class="anchor">§</a><h3 class="code-heade [...]
-    __D: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a>&lt;'de&gt;,</div></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.193/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From% [...]
+    __D: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a>&lt;'de&gt;,</div></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.193/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From% [...]
     __S: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div class='docblock'>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#syn [...]
     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_ipc/gen/Message/struct.FieldNode.html b/arrow_ipc/gen/Message/struct.FieldNode.html
index 408345329f..2a9a42d38f 100644
--- a/arrow_ipc/gen/Message/struct.FieldNode.html
+++ b/arrow_ipc/gen/Message/struct.FieldNode.html
@@ -11,7 +11,7 @@ tree</p>
 </div></details><section id="method.set_length" class="method"><a class="src rightside" href="../../../src/arrow_ipc/gen/Message.rs.html#426-438">source</a><h4 class="code-header">pub fn <a href="#method.set_length" class="fn">set_length</a>(&amp;mut self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>)</h4></section><details class="toggle method-toggle" open><summary><section id="method.null_count" class="method"><a class="src rightside"  [...]
 to write their physical validity bitmap out as a materialized buffer,
 instead setting the length of the bitmap buffer to 0.</p>
-</div></details><section id="method.set_null_count" class="method"><a class="src rightside" href="../../../src/arrow_ipc/gen/Message.rs.html#458-470">source</a><h4 class="code-header">pub fn <a href="#method.set_null_count" class="fn">set_null_count</a>(&amp;mut self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>)</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait [...]
+</div></details><section id="method.set_null_count" class="method"><a class="src rightside" href="../../../src/arrow_ipc/gen/Message.rs.html#458-470">source</a><h4 class="code-header">pub fn <a href="#method.set_null_count" class="fn">set_null_count</a>(&amp;mut self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>)</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait [...]
 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#239">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-Push-for-FieldNode" class="impl"><a class="src rightside" href="../../../src/arrow_ipc/gen/Message.rs.html#379-387">source</a><a href="#impl-Push-for-FieldNode" class="anchor">§</a><h3 class="code-header">impl&lt;'b&gt; Push for <a class="struct" href="struct.FieldNode.html" title="struct arrow_ipc::gen::Message::Fie [...]
     v: &amp;mut Verifier&lt;'_, '_&gt;,
diff --git a/arrow_ipc/gen/Schema/struct.Buffer.html b/arrow_ipc/gen/Schema/struct.Buffer.html
index 19e02e3da1..c13ede7907 100644
--- a/arrow_ipc/gen/Schema/struct.Buffer.html
+++ b/arrow_ipc/gen/Schema/struct.Buffer.html
@@ -7,7 +7,7 @@ from offset (inclusive) to offset + length (non-inclusive). When building
 messages using the encapsulated IPC message, padding bytes may be written
 after a buffer, but such padding bytes do not need to be accounted for in
 the size here.</p>
-</div></details><section id="method.set_length" class="method"><a class="src rightside" href="../../../src/arrow_ipc/gen/Schema.rs.html#1210-1222">source</a><h4 class="code-header">pub fn <a href="#method.set_length" class="fn">set_length</a>(&amp;mut self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>)</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementa [...]
+</div></details><section id="method.set_length" class="method"><a class="src rightside" href="../../../src/arrow_ipc/gen/Schema.rs.html#1210-1222">source</a><h4 class="code-header">pub fn <a href="#method.set_length" class="fn">set_length</a>(&amp;mut self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>)</h4></section></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementa [...]
 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#239">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-Push-for-Buffer" class="impl"><a class="src rightside" href="../../../src/arrow_ipc/gen/Schema.rs.html#1130-1137">source</a><a href="#impl-Push-for-Buffer" class="anchor">§</a><h3 class="code-header">impl&lt;'b&gt; Push for <a class="struct" href="struct.Buffer.html" title="struct arrow_ipc::gen::Schema::Buffer">Buff [...]
     v: &amp;mut Verifier&lt;'_, '_&gt;,
diff --git a/arrow_json/reader/serializer/struct.ListSerializer.html b/arrow_json/reader/serializer/struct.ListSerializer.html
index 1901f508da..4c71973296 100644
--- a/arrow_json/reader/serializer/struct.ListSerializer.html
+++ b/arrow_json/reader/serializer/struct.ListSerializer.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="API documentation for the Rust `ListSerializer` struct in crate `arrow_json`."><title>ListSerializer in arrow_json::reader::serializer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><l [...]
     serializer: &amp;'a mut <a class="struct" href="struct.TapeSerializer.html" title="struct arrow_json::reader::serializer::TapeSerializer">TapeSerializer</a>&lt;'b&gt;,
     start: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.serializer" class="structfield section-header"><a href="#structfield.serializer" class="anchor field">§</a><code>serializer: &amp;'a mut <a class="struct" href="struct.TapeSerializer.html" title="struct arrow_json::reader::serializer::TapeSerializer">TapeSerializer</a>&lt;'b&gt;</code></span><span id="structfield.start" class="structfield section-header"><a h [...]
-    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a sequence element.</div></details><details class="toggle method-toggle" open><summary><section id="method.end-1" class="method trait-impl"><a class="src [...]
-    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a tuple element.</div></details><details class="toggle method-toggle" open><summary><section id="method.end" class="method trait-impl"><a class="src righ [...]
-    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a tuple struct field.</div></details><details class="toggle method-toggle" open><summary><section id="method.end-2" class="method trait-impl"><a class="s [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.serializer" class="structfield section-header"><a href="#structfield.serializer" class="anchor field">§</a><code>serializer: &amp;'a mut <a class="struct" href="struct.TapeSerializer.html" title="struct arrow_json::reader::serializer::TapeSerializer">TapeSerializer</a>&lt;'b&gt;</code></span><span id="structfield.start" class="structfield section-header"><a h [...]
+    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a sequence element.</div></details><details class="toggle method-toggle" open><summary><section id="method.end-2" class="method trait-impl"><a class="src [...]
+    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a tuple element.</div></details><details class="toggle method-toggle" open><summary><section id="method.end-1" class="method trait-impl"><a class="src ri [...]
+    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a tuple struct field.</div></details><details class="toggle method-toggle" open><summary><section id="method.end" class="method trait-impl"><a class="src [...]
     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_json/reader/serializer/struct.ObjectSerializer.html b/arrow_json/reader/serializer/struct.ObjectSerializer.html
index 121f843aeb..dc2519a4b3 100644
--- a/arrow_json/reader/serializer/struct.ObjectSerializer.html
+++ b/arrow_json/reader/serializer/struct.ObjectSerializer.html
@@ -1,20 +1,20 @@
 <!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 `ObjectSerializer` struct in crate `arrow_json`."><title>ObjectSerializer in arrow_json::reader::serializer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2 [...]
     serializer: &amp;'a mut <a class="struct" href="struct.TapeSerializer.html" title="struct arrow_json::reader::serializer::TapeSerializer">TapeSerializer</a>&lt;'b&gt;,
     start: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.serializer" class="structfield section-header"><a href="#structfield.serializer" class="anchor field">§</a><code>serializer: &amp;'a mut <a class="struct" href="struct.TapeSerializer.html" title="struct arrow_json::reader::serializer::TapeSerializer">TapeSerializer</a>&lt;'b&gt;</code></span><span id="structfield.start" class="structfield section-header"><a h [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.serializer" class="structfield section-header"><a href="#structfield.serializer" class="anchor field">§</a><code>serializer: &amp;'a mut <a class="struct" href="struct.TapeSerializer.html" title="struct arrow_json::reader::serializer::TapeSerializer">TapeSerializer</a>&lt;'b&gt;</code></span><span id="structfield.start" class="structfield section-header"><a h [...]
     T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a map key. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeMap.html#tymethod.serialize_key">Read more</a></div></details><details class=" [...]
-    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a map value. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeMap.html#tymethod.serialize_value">Read more</a></div></details><details cla [...]
+    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a map value. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeMap.html#tymethod.serialize_value">Read more</a></div></details><details cla [...]
     &amp;mut self,
     key: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;K</a>,
     value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;V</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>, Self::<a class="associatedtype" href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeMap.html#associatedtype.Error" title="type serde::ser::SerializeMap::Error">Error</a>&gt;<div class="where">where
     K: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
-    V: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a map entry consisting of a key and a value. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeMap.html#method.serialize_entry">Read more</ [...]
+    V: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a map entry consisting of a key and a value. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeMap.html#method.serialize_entry">Read more</ [...]
     &amp;mut self,
     key: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
     value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</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>, Self::<a class="associatedtype" href="https://docs.rs/serde/1.0.193/serde/ser/trait.SerializeStruct.html#associatedtype.Error" title="type serde::ser::SerializeStruct::Error">Error</a>&gt;<div class="where">where
-    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a struct field.</div></details><details class="toggle method-toggle" open><summary><section id="method.end-1" class="method trait-impl"><a class="src rig [...]
+    T: <a class="trait" href="https://docs.rs/serde/1.0.193/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<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'>Serialize a struct field.</div></details><details class="toggle method-toggle" open><summary><section id="method.end" class="method trait-impl"><a class="src right [...]
     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_json/reader/serializer/struct.SerializerError.html b/arrow_json/reader/serializer/struct.SerializerError.html
index b7cb5b187f..183a964095 100644
--- a/arrow_json/reader/serializer/struct.SerializerError.html
+++ b/arrow_json/reader/serializer/struct.SerializerError.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 `SerializerError` struct in crate `arrow_json`."><title>SerializerError in arrow_json::reader::serializer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"> [...]
+<!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 `SerializerError` struct in crate `arrow_json`."><title>SerializerError in arrow_json::reader::serializer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"> [...]
     T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>,</div></h4></section></summary><div class='docblock'>Used when a <a href="../trait.Serialize.html"><code>Serialize</code></a> implementation encounters any error
-while serializing a type. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.Error.html#tymethod.custom">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-SerializerError" class="impl"><a href="#impl-RefUnwindSafe-for-SerializerError" class="anchor">§</a><h3 class [...]
+while serializing a type. <a href="https://docs.rs/serde/1.0.193/serde/ser/trait.Error.html#tymethod.custom">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Error-for-SerializerError-1" class="impl"><a class="src rightside" href="../../../src/arrow_json/reader/serializer.rs.html#28">source</a><a href="#impl-Error-for-SerializerError-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://d [...]
     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_ord/cmp/enum.Op.html b/arrow_ord/cmp/enum.Op.html
index 719da8ef01..62b5724d06 100644
--- a/arrow_ord/cmp/enum.Op.html
+++ b/arrow_ord/cmp/enum.Op.html
@@ -7,7 +7,7 @@
     GreaterEqual,
     Distinct,
     NotDistinct,
-}</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Equal" class="variant"><a href="#variant.Equal" class="anchor">§</a><h3 class="code-header">Equal</h3></section><section id="variant.NotEqual" class="variant"><a href="#variant.NotEqual" class="anchor">§</a><h3 class="code-header">NotEqual</h3></section><section id="variant.Less" class="variant"><a href="#variant.Less" class="anch [...]
+}</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Equal" class="variant"><a href="#variant.Equal" class="anchor">§</a><h3 class="code-header">Equal</h3></section><section id="variant.NotEqual" class="variant"><a href="#variant.NotEqual" class="anchor">§</a><h3 class="code-header">NotEqual</h3></section><section id="variant.Less" class="variant"><a href="#variant.Less" class="anch [...]
     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/help.html b/help.html
index a875bbabbf..970d1b1e04 100644
--- a/help.html
+++ b/help.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="Documentation for Rustdoc"><title>Help</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843f [...]
\ 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="Documentation for Rustdoc"><title>Help</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843f [...]
\ No newline at end of file
diff --git a/index.html b/index.html
index 42793a07c6..4534af4d11 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><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843f [...]
\ 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><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843f [...]
\ No newline at end of file
diff --git a/parquet/all.html b/parquet/all.html
index ee0d5f25c1..5b10cfc24f 100644
--- a/parquet/all.html
+++ b/parquet/all.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 all items in this crate"><title>List of all items in this crate</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.fi [...]
\ 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 all items in this crate"><title>List of all items in this crate</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.fi [...]
\ 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 8ffc953745..67bbf3b6f6 100644
--- a/parquet/arrow/arrow_reader/selection/struct.RowSelection.html
+++ b/parquet/arrow/arrow_reader/selection/struct.RowSelection.html
@@ -66,7 +66,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#408-410">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#413-415">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#92">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#92">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#239">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#92">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 8ef8e516f0..37fa6f7114 100644
--- a/parquet/arrow/arrow_reader/struct.RowSelection.html
+++ b/parquet/arrow/arrow_reader/struct.RowSelection.html
@@ -66,7 +66,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#408-410">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#413-415">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#92">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#92">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#239">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#92">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/arrow_writer/byte_array/fn.compute_min_max.html b/parquet/arrow/arrow_writer/byte_array/fn.compute_min_max.html
index 4c4d2dc1db..9535397de2 100644
--- a/parquet/arrow/arrow_writer/byte_array/fn.compute_min_max.html
+++ b/parquet/arrow/arrow_writer/byte_array/fn.compute_min_max.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="Computes the min and max for the provided array and indices"><title>compute_min_max in parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link  [...]
+<!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="Computes the min and max for the provided array and indices"><title>compute_min_max in parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link  [...]
     array: T,
     valid: 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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;
 ) -&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="../../../data_type/struct.ByteArray.html" title="struct parquet::data_type::ByteArray">ByteArray</a>, <a class="struct" href="../../../data_type/struct.ByteArray.html" title="struct parquet::data_type::ByteArray">ByteArray</a>)&gt;<div class="where">where
diff --git a/parquet/arrow/arrow_writer/byte_array/fn.encode.html b/parquet/arrow/arrow_writer/byte_array/fn.encode.html
index 593e05a415..70225f1875 100644
--- a/parquet/arrow/arrow_writer/byte_array/fn.encode.html
+++ b/parquet/arrow/arrow_writer/byte_array/fn.encode.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="Encodes the provided `values` and `indices` to `encoder`"><title>encode in parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload [...]
+<!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="Encodes the provided `values` and `indices` to `encoder`"><title>encode in parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload [...]
     T: <a class="trait" href="../../../../arrow_array/array/trait.ArrayAccessor.html" title="trait arrow_array::array::ArrayAccessor">ArrayAccessor</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a>,
     T::<a class="associatedtype" href="../../../../arrow_array/array/trait.ArrayAccessor.html#associatedtype.Item" title="type arrow_array::array::ArrayAccessor::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/c [...]
 <p>This is a free function so it can be used with <code>downcast_op!</code></p>
diff --git a/parquet/arrow/arrow_writer/byte_array/index.html b/parquet/arrow/arrow_writer/byte_array/index.html
index 6110edce6e..391e5840ab 100644
--- a/parquet/arrow/arrow_writer/byte_array/index.html
+++ b/parquet/arrow/arrow_writer/byte_array/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 `byte_array` mod in crate `parquet`."><title>parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preloa [...]
\ 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 `byte_array` mod in crate `parquet`."><title>parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preloa [...]
\ No newline at end of file
diff --git a/parquet/arrow/arrow_writer/byte_array/struct.ByteArrayEncoder.html b/parquet/arrow/arrow_writer/byte_array/struct.ByteArrayEncoder.html
index 16da93bd61..a9c42153b3 100644
--- a/parquet/arrow/arrow_writer/byte_array/struct.ByteArrayEncoder.html
+++ b/parquet/arrow/arrow_writer/byte_array/struct.ByteArrayEncoder.html
@@ -1,27 +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 `ByteArrayEncoder` struct in crate `parquet`."><title>ByteArrayEncoder in parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295 [...]
+<!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 `ByteArrayEncoder` struct in crate `parquet`."><title>ByteArrayEncoder in parquet::arrow::arrow_writer::byte_array - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295 [...]
     fallback: <a class="struct" href="struct.FallbackEncoder.html" title="struct parquet::arrow::arrow_writer::byte_array::FallbackEncoder">FallbackEncoder</a>,
     dict_encoder: <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.DictEncoder.html" title="struct parquet::arrow::arrow_writer::byte_array::DictEncoder">DictEncoder</a>&gt;,
+    statistics_enabled: <a class="enum" href="../../../file/properties/enum.EnabledStatistics.html" title="enum parquet::file::properties::EnabledStatistics">EnabledStatistics</a>,
     min_value: <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="../../../data_type/struct.ByteArray.html" title="struct parquet::data_type::ByteArray">ByteArray</a>&gt;,
     max_value: <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="../../../data_type/struct.ByteArray.html" title="struct parquet::data_type::ByteArray">ByteArray</a>&gt;,
     bloom_filter: <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="../../../bloom_filter/struct.Sbbf.html" title="struct parquet::bloom_filter::Sbbf">Sbbf</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.fallback" class="structfield section-header"><a href="#structfield.fallback" class="anchor field">§</a><code>fallback: <a class="struct" href="struct.FallbackEncoder.html" title="struct parquet::arrow::arrow_writer::byte_array::FallbackEncoder">FallbackEncoder</a></code></span><span id="structfield.dict_encoder" class="structfield section-header"><a href="#st [...]
-    &amp;self,
-    values: &amp;dyn <a class="trait" href="../../../../arrow_array/array/trait.Array.html" title="trait arrow_array::array::Array">Array</a>,
-    value_indices: <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.usize.html">usize</a>]&gt;
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(Self::<a class="associatedtype" href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>, Self::<a class="associatedtype" href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::en [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.fallback" class="structfield section-header"><a href="#structfield.fallback" class="anchor field">§</a><code>fallback: <a class="struct" href="struct.FallbackEncoder.html" title="struct parquet::arrow::arrow_writer::byte_array::FallbackEncoder">FallbackEncoder</a></code></span><span id="structfield.dict_encoder" class="structfield section-header"><a href="#st [...]
 will <em>not</em> be tracked by the bloom filter as it is empty since. This should be called once
-near the end of encoding.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_writer/byte_array.rs.html#412-434">source</a><a href="#method.try_new" class="anchor">§</a><h4 class="code-header">fn <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schem [...]
-    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'>Create a new <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></div></details><details class="toggle method-toggle" open><summary><section id="method.write" class="method tra [...]
+near the end of encoding.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_writer/byte_array.rs.html#395-420">source</a><a href="#method.try_new" class="anchor">§</a><h4 class="code-header">fn <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schem [...]
+    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'>Create a new <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></div></details><details class="toggle method-toggle" open><summary><section id="method.write" class="method tra [...]
     &amp;mut self,
     _values: &amp;Self::<a class="associatedtype" href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     _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">usize</a>
-) -&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'>Write the corresponding values to this <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></div></details><detai [...]
+) -&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'>Write the corresponding values to this <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></div></details><detai [...]
     &amp;mut self,
     values: &amp;Self::<a class="associatedtype" href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]
-) -&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'>Write the values at the indexes in <code>indices</code> to this <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code>< [...]
-<a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#tymethod.write"><code>Self::write</code></a> will not be dictionary encoded <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#tymethod.flush_dict_page">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flush_data_page" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_writer/byte_array.rs.html#482-490">sour [...]
+) -&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'>Write the values at the indexes in <code>indices</code> to this <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code>< [...]
+<a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#tymethod.write"><code>Self::write</code></a> will not be dictionary encoded <a href="../../../column/writer/encoder/trait.ColumnValueEncoder.html#tymethod.flush_dict_page">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flush_data_page" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_writer/byte_array.rs.html#468-476">sour [...]
     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/parquet/arrow/buffer/dictionary_buffer/enum.DictionaryBuffer.html b/parquet/arrow/buffer/dictionary_buffer/enum.DictionaryBuffer.html
index 153f1fd535..ee39c5432a 100644
--- a/parquet/arrow/buffer/dictionary_buffer/enum.DictionaryBuffer.html
+++ b/parquet/arrow/buffer/dictionary_buffer/enum.DictionaryBuffer.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 variable length byte arrays that are potentially dictionary encoded and can be converted into a corresponding `ArrayRef`"><title>DictionaryBuffer in parquet::arrow::buffer::dictionary_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../.. [...]
+<!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 that are potentially dictionary encoded and can be converted into a corresponding `ArrayRef`"><title>DictionaryBuffer in parquet::arrow::buffer::dictionary_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../.. [...]
     Dict {
-        keys: <a class="struct" href="../../record_reader/buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;K&gt;,
+        keys: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;K&gt;,
         values: <a class="type" href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>,
     },
     Values {
@@ -8,20 +8,20 @@
     },
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An array of variable length byte arrays that are potentially dictionary encoded
 and can be converted into a corresponding <a href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef"><code>ArrayRef</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.Dict" class="variant"><a href="#variant.Dict" class="anchor">§</a><h3 class="code-header">Dict</h3></section><div class="sub-variant" id="variant.Dict.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Dict.field.keys" class="section-header"><a href="#variant.Dict.field.keys" class="anchor field">§</a><code> [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Dict" class="variant"><a href="#variant.Dict" class="anchor">§</a><h3 class="code-header">Dict</h3></section><div class="sub-variant" id="variant.Dict.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Dict.field.keys" class="section-header"><a href="#variant.Dict.field.keys" class="anchor field">§</a><code> [...]
 <p>Returns None if the dictionary needs to be recomputed</p>
 <h5 id="panic"><a href="#panic">Panic</a></h5>
 <p>Panics if the dictionary is too large for <code>K</code></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.spill_values" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_buffer.rs.html#103-132">source</a><h4 class="code-header">pub fn <a href="#method.spill_values" class="fn">spill_values</a>(&amp;mut self) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;&amp;mut <a class="struct" href="../offset_b [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.spill_values" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_buffer.rs.html#96-125">source</a><h4 class="code-header">pub fn <a href="#method.spill_values" class="fn">spill_values</a>(&amp;mut self) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;&amp;mut <a class="struct" href="../offset_bu [...]
 <p>If this is currently dictionary encoded, this will convert from the
 dictionary encoded representation</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.into_array" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_buffer.rs.html#135-192">source</a><h4 class="code-header">pub fn <a href="#method.into_array" class="fn">into_array</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="method.into_array" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_buffer.rs.html#128-185">source</a><h4 class="code-header">pub fn <a href="#method.into_array" class="fn">into_array</a>(
     self,
     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;<a class="struct" href="../../../../arrow_buffer/buffer/immutable/struct.Buffer.html" title="struct arrow_buffer::buffer::immutable::Buffer">Buffer</a>&gt;,
     data_type: &amp;<a class="enum" href="../../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">ArrowType</a>
 ) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="type" href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a>&gt;</h4></section></summary><div class="docblock"><p>Converts this into an <a href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef"><code>ArrayRef</code></a> with the provided <code>data_type</code> and <co [...]
-</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-BufferQueue-for-DictionaryBuffer%3CK,+V%3E" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_buffer.rs.html#221-247">source</a><a href="#impl-BufferQueue-for-Diction [...]
-to append data to the end of this <a href="../../record_reader/buffer/trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> <a href="../../record_reader/buffer/trait.BufferQueue.html#tymethod.spare_capacity_mut">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_len" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_b [...]
+</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-BufferQueue-for-DictionaryBuffer%3CK,+V%3E" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictionary_buffer.rs.html#214-240">source</a><a href="#impl-BufferQueue-for-Diction [...]
+to append data to the end of this <a href="../../record_reader/buffer/trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> <a href="../../record_reader/buffer/trait.BufferQueue.html#tymethod.get_output_slice">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.truncate_buffer" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/dictio [...]
     &amp;mut self,
     read_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     values_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -29,7 +29,9 @@ to append data to the end of this <a href="../../record_reader/buffer/trait.Buff
     valid_mask: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
 )</h4></section></summary><div class='docblock'>If a column contains nulls, more level data may be read than value data, as null
 values are not encoded. Therefore, first the levels data is read, the null count
-determined, and then the corresponding number of values read to a <a href="../../record_reader/buffer/trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer"><code>ValuesBuffer</code></a>. <a href="../../record_reader/buffer/trait.ValuesBuffer.html#tymethod.pad_nulls">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ValuesBufferSlice-for-DictionaryBuffer%3CK,+V%3E" class="impl"><a c [...]
+determined, and then the corresponding number of values read to a <a href="../../record_reader/buffer/trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer"><code>ValuesBuffer</code></a>. <a href="../../record_reader/buffer/trait.ValuesBuffer.html#tymethod.pad_nulls">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ValuesBufferSlice-for-DictionaryBuffer%3CK,+V%3E" class="impl"><a c [...]
+    K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
+    V: <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-DictionaryBuffer%3CK,+V%3E" class="impl"><a href="#impl-UnwindSafe-for-DictionaryBuffer%3CK,+V%3E" class="anchor">§</a><h3 class="code-header">impl&lt;K, V&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_saf [...]
     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/parquet/arrow/buffer/dictionary_buffer/index.html b/parquet/arrow/buffer/dictionary_buffer/index.html
index 0283b51359..805c5dd520 100644
--- a/parquet/arrow/buffer/dictionary_buffer/index.html
+++ b/parquet/arrow/buffer/dictionary_buffer/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="API documentation for the Rust `dictionary_buffer` mod in crate `parquet`."><title>parquet::arrow::buffer::dictionary_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
+<!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 `dictionary_buffer` mod in crate `parquet`."><title>parquet::arrow::buffer::dictionary_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel [...]
 and can be converted into a corresponding <a href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef"><code>ArrayRef</code></a></div></li></ul></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/arrow/buffer/offset_buffer/index.html b/parquet/arrow/buffer/offset_buffer/index.html
index 3757ac5f53..e9e0d2d7ae 100644
--- a/parquet/arrow/buffer/offset_buffer/index.html
+++ b/parquet/arrow/buffer/offset_buffer/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="API documentation for the Rust `offset_buffer` mod in crate `parquet`."><title>parquet::arrow::buffer::offset_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preloa [...]
+<!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 `offset_buffer` mod in crate `parquet`."><title>parquet::arrow::buffer::offset_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preloa [...]
 a corresponding <a href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef"><code>ArrayRef</code></a></div></li></ul></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/arrow/buffer/offset_buffer/struct.OffsetBuffer.html b/parquet/arrow/buffer/offset_buffer/struct.OffsetBuffer.html
index 6a6361232f..7d3b5b42bb 100644
--- a/parquet/arrow/buffer/offset_buffer/struct.OffsetBuffer.html
+++ b/parquet/arrow/buffer/offset_buffer/struct.OffsetBuffer.html
@@ -1,9 +1,9 @@
-<!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 buffer of variable-sized byte arrays that can be converted into a corresponding `ArrayRef`"><title>OffsetBuffer in parquet::arrow::buffer::offset_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98ef [...]
-    pub offsets: <a class="struct" href="../../record_reader/buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;I&gt;,
-    pub values: <a class="struct" href="../../record_reader/buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;,
+<!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 buffer of variable-sized byte arrays that can be converted into a corresponding `ArrayRef`"><title>OffsetBuffer in parquet::arrow::buffer::offset_buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98ef [...]
+    pub offsets: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;I&gt;,
+    pub values: <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.u8.html">u8</a>&gt;,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A buffer of variable-sized byte arrays that can be converted into
 a corresponding <a href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef"><code>ArrayRef</code></a></p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets" class="structfield section-header"><a href="#structfield.offsets" class="anchor field">§</a><code>offsets: <a class="struct" href="../../record_reader/buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;I&gt;</code></span><span id="structfield.values" class="structfield section-hea [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.offsets" class="structfield section-header"><a href="#structfield.offsets" class="anchor field">§</a><code>offsets: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;I&gt;</code></span><span id="structfield.values" class="structfield section-header"><a href="#structfield.values" cl [...]
 </div></details><section id="method.is_empty" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/offset_buffer.rs.html#52-54">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><details class="toggle method-toggle" open><summary><section id="method.try_push" class="method"><a class="src right [...]
 the start of a UTF-8 codepoint</p>
 <p>Note: This does not verify that the entirety of <code>data</code> is valid
@@ -28,8 +28,8 @@ sequence, but not the individual string slices it contains</p>
     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;<a class="struct" href="../../../../arrow_buffer/buffer/immutable/struct.Buffer.html" title="struct arrow_buffer::buffer::immutable::Buffer">Buffer</a>&gt;,
     data_type: <a class="enum" href="../../../../arrow_schema/datatype/enum.DataType.html" title="enum arrow_schema::datatype::DataType">ArrowType</a>
 ) -&gt; <a class="type" href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef">ArrayRef</a></h4></section></summary><div class="docblock"><p>Converts this into an <a href="../../../../arrow_array/array/type.ArrayRef.html" title="type arrow_array::array::ArrayRef"><code>ArrayRef</code></a> with the provided <code>data_type</code> and <code>null_buffer</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-BufferQueue-for-OffsetBuffer%3CI%3E" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/offset_buffer.rs.html#144-159">source</a><a href="#impl-BufferQueue-for-OffsetBuffer%3CI%3 [...]
-to append data to the end of this <a href="../../record_reader/buffer/trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> <a href="../../record_reader/buffer/trait.BufferQueue.html#tymethod.spare_capacity_mut">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_len" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/offset_buffe [...]
+</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-BufferQueue-for-OffsetBuffer%3CI%3E" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/offset_buffer.rs.html#144-159">source</a><a href="#impl-BufferQueue-for-OffsetBuffer%3CI%3 [...]
+to append data to the end of this <a href="../../record_reader/buffer/trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> <a href="../../record_reader/buffer/trait.BufferQueue.html#tymethod.get_output_slice">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.truncate_buffer" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/offset [...]
     &amp;mut self,
     read_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     values_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -37,7 +37,10 @@ to append data to the end of this <a href="../../record_reader/buffer/trait.Buff
     valid_mask: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
 )</h4></section></summary><div class='docblock'>If a column contains nulls, more level data may be read than value data, as null
 values are not encoded. Therefore, first the levels data is read, the null count
-determined, and then the corresponding number of values read to a <a href="../../record_reader/buffer/trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer"><code>ValuesBuffer</code></a>. <a href="../../record_reader/buffer/trait.ValuesBuffer.html#tymethod.pad_nulls">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ValuesBufferSlice-for-OffsetBuffer%3CI%3E" class="impl"><a class="s [...]
+determined, and then the corresponding number of values read to a <a href="../../record_reader/buffer/trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer"><code>ValuesBuffer</code></a>. <a href="../../record_reader/buffer/trait.ValuesBuffer.html#tymethod.pad_nulls">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ValuesBufferSlice-for-OffsetBuffer%3CI%3E" class="impl"><a class="s [...]
+    I: <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-OffsetBuffer%3CI%3E" class="impl"><a href="#impl-Send-for-OffsetBuffer%3CI%3E" class="anchor">§</a><h3 class="code-header">impl&lt;I&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Sen [...]
+    I: <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-OffsetBuffer%3CI%3E" class="impl"><a href="#impl-UnwindSafe-for-OffsetBuffer%3CI%3E" class="anchor">§</a><h3 class="code-header">impl&lt;I&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">Unw [...]
+    I: <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 [...]
     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/parquet/arrow/record_reader/buffer/index.html b/parquet/arrow/record_reader/buffer/index.html
index a6cfa07368..4c70639d8d 100644
--- a/parquet/arrow/record_reader/buffer/index.html
+++ b/parquet/arrow/record_reader/buffer/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 `buffer` mod in crate `parquet`."><title>parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
\ 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 `buffer` mod in crate `parquet`."><title>parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/buffer/sidebar-items.js b/parquet/arrow/record_reader/buffer/sidebar-items.js
index 182e8c41fd..a51538196f 100644
--- a/parquet/arrow/record_reader/buffer/sidebar-items.js
+++ b/parquet/arrow/record_reader/buffer/sidebar-items.js
@@ -1 +1 @@
-window.SIDEBAR_ITEMS = {"struct":["ScalarBuffer"],"trait":["BufferQueue","ScalarValue","ValuesBuffer"]};
\ No newline at end of file
+window.SIDEBAR_ITEMS = {"trait":["BufferQueue","ValuesBuffer"]};
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/buffer/struct.ScalarBuffer.html b/parquet/arrow/record_reader/buffer/struct.ScalarBuffer.html
deleted file mode 100644
index e230a77b2d..0000000000
--- a/parquet/arrow/record_reader/buffer/struct.ScalarBuffer.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!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 typed buffer similar to `Vec&lt;T&gt;` but using `MutableBuffer` for storage"><title>ScalarBuffer in parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf. [...]
-    buffer: <a class="struct" href="../../../../arrow_buffer/buffer/mutable/struct.MutableBuffer.html" title="struct arrow_buffer::buffer::mutable::MutableBuffer">MutableBuffer</a>,
-    len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    _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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.fn.html">fn</a>(_: T) -&gt; T&gt;,
-}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A typed buffer similar to <a href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec"><code>Vec&lt;T&gt;</code></a> but using <a href="../../../../arrow_buffer/buffer/mutable/struct.MutableBuffer.html" title="struct arrow_buffer::buffer::mutable::MutableBuffer"><code>MutableBuffer</code></a> for storage</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.buffer" class="structfield section-header"><a href="#structfield.buffer" class="anchor field">§</a><code>buffer: <a class="struct" href="../../../../arrow_buffer/buffer/mutable/struct.MutableBuffer.html" title="struct arrow_buffer::buffer::mutable::MutableBuffer">MutableBuffer</a></code></span><span id="structfield.len" class="structfield section-header"><a [...]
-</div><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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.fn.html">fn</a>(_: T) -&gt; T&gt;</code></span><div class="docblock"><p>Placeholder to allow <code>T</code> as an i [...]
-without making it !Send</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-ScalarBuffer%3CT%3E" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#104-143">source</a><a href="#impl-ScalarBuffer%3CT%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T: <a class="trait" href="trait.S [...]
-to append data to the end of this <a href="trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> <a href="trait.BufferQueue.html#tymethod.spare_capacity_mut">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_len" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#180-186">source</a><a href="#method.set_len" [...]
-    &amp;mut self,
-    read_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    values_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    levels_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-    valid_mask: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
-)</h4></section></summary><div class='docblock'>If a column contains nulls, more level data may be read than value data, as null
-values are not encoded. Therefore, first the levels data is read, the null count
-determined, and then the corresponding number of values read to a <a href="trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer"><code>ValuesBuffer</code></a>. <a href="trait.ValuesBuffer.html#tymethod.pad_nulls">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><sec [...]
-    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= [...]
-</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#747-749">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#756">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
-<code><a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
-</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#803-805">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" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U [...]
-    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 [...]
-    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></div></section></div></ma [...]
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/buffer/trait.BufferQueue.html b/parquet/arrow/record_reader/buffer/trait.BufferQueue.html
index d556d4a086..9278a272b5 100644
--- a/parquet/arrow/record_reader/buffer/trait.BufferQueue.html
+++ b/parquet/arrow/record_reader/buffer/trait.BufferQueue.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 buffer that supports writing new data to the end, and removing data from the front"><title>BufferQueue in parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295 [...]
+<!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 buffer that supports writing new data to the end, and removing data from the front"><title>BufferQueue in parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295 [...]
     type <a href="#associatedtype.Output" class="associatedtype">Output</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>;
     type <a href="#associatedtype.Slice" class="associatedtype">Slice</a>: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>;
 
     // Required methods
     fn <a href="#tymethod.consume" class="fn">consume</a>(&amp;mut self) -&gt; Self::<a class="associatedtype" href="trait.BufferQueue.html#associatedtype.Output" title="type parquet::arrow::record_reader::buffer::BufferQueue::Output">Output</a>;
-<span class="item-spacer"></span>    fn <a href="#tymethod.spare_capacity_mut" class="fn">spare_capacity_mut</a>(&amp;mut self, batch_size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;mut Self::<a class="associatedtype" href="trait.BufferQueue.html#associatedtype.Slice" title="type parquet::arrow::record_reader::buffer::BufferQueue::Slice">Slice</a>;
-<span class="item-spacer"></span>    fn <a href="#tymethod.set_len" class="fn">set_len</a>(&amp;mut self, len: <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.get_output_slice" class="fn">get_output_slice</a>(&amp;mut self, batch_size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;mut Self::<a class="associatedtype" href="trait.BufferQueue.html#associatedtype.Slice" title="type parquet::arrow::record_reader::buffer::BufferQueue::Slice">Slice</a>;
+<span class="item-spacer"></span>    fn <a href="#tymethod.truncate_buffer" class="fn">truncate_buffer</a>(&amp;mut self, len: <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 buffer that supports writing new data to the end, and removing data from the front</p>
 <p>Used by <a href="../type.RecordReader.html" title="type parquet::arrow::record_reader::RecordReader">RecordReader</a> to buffer up values before returning a
 potentially smaller number of values, corresponding to a whole number of semantic records</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"><section id="associatedtype.Output" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#29">source</a><h4 class="code-header">type <a href="#associatedtype.Output" class="associatedtype">Output</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/c [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.spare_capacity_mut" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#41">source</a><h4 class="code-header">fn <a href="#tymethod.spare_capacity_mut" class="fn">spare_capacity_mut</a>(&amp;mut self, batch_size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;mut Self::<a class="associa [...]
+</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"><section id="associatedtype.Output" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#25">source</a><h4 class="code-header">type <a href="#associatedtype.Output" class="associatedtype">Output</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/c [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.get_output_slice" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#37">source</a><h4 class="code-header">fn <a href="#tymethod.get_output_slice" class="fn">get_output_slice</a>(&amp;mut self, batch_size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;mut Self::<a class="associatedtyp [...]
 to append data to the end of this <a href="trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a></p>
 <p>NB: writes to the returned slice will not update the length of <a href="trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a>
-instead a subsequent call should be made to <a href="trait.BufferQueue.html#tymethod.set_len" title="method parquet::arrow::record_reader::buffer::BufferQueue::set_len"><code>BufferQueue::set_len</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.set_len" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#60">source</a><h4 class="code-header">fn <a href="#tymethod.set_len" class="fn">set_len</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</h4></section></summary><div class="docblock"><p>Sets the length of the <a hre [...]
-<p>Intended to be used in combination with <a href="trait.BufferQueue.html#tymethod.spare_capacity_mut" title="method parquet::arrow::record_reader::buffer::BufferQueue::spare_capacity_mut"><code>BufferQueue::spare_capacity_mut</code></a></p>
+instead a subsequent call should be made to <a href="trait.BufferQueue.html#tymethod.truncate_buffer" title="method parquet::arrow::record_reader::buffer::BufferQueue::truncate_buffer"><code>BufferQueue::truncate_buffer</code></a></p>
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.truncate_buffer" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#56">source</a><h4 class="code-header">fn <a href="#tymethod.truncate_buffer" class="fn">truncate_buffer</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</h4></section></summary><div class="docblock"><p>Sets  [...]
+<p>Intended to be used in combination with <a href="trait.BufferQueue.html#tymethod.get_output_slice" title="method parquet::arrow::record_reader::buffer::BufferQueue::get_output_slice"><code>BufferQueue::get_output_slice</code></a></p>
 <h5 id="panics"><a href="#panics">Panics</a></h5>
 <p>Implementations must panic if <code>len</code> is beyond the initialized length</p>
 <p>Implementations may panic if <code>set_len</code> is called with less than what has been written</p>
@@ -24,4 +24,4 @@ instead a subsequent call should be made to <a href="trait.BufferQueue.html#tyme
 <p>For example, <a href="trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> returns a default-initialized <code>&amp;mut [T]</code>, and does not
 track how much of this slice is actually written to by the caller. This is still
 safe as the slice is default-initialized.</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="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/parquet/arrow/record_reader/buffer/trait.ScalarValue.html b/parquet/arrow/record_reader/buffer/trait.ScalarValue.html
deleted file mode 100644
index ae8efd59a7..0000000000
--- a/parquet/arrow/record_reader/buffer/trait.ScalarValue.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<!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 marker trait for scalar types"><title>ScalarValue in parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/ [...]
-<p>This means that a <code>[Self::default()]</code> of length <code>len</code> can be safely created from a
-zero-initialized <code>[u8]</code> with length <code>len * std::mem::size_of::&lt;Self&gt;()</code> and
-alignment of <code>std::mem::size_of::&lt;Self&gt;()</code></p>
-</div></details><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><section id="impl-ScalarValue-for-bool" class="impl"><a class="src rightsi [...]
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/buffer/trait.ValuesBuffer.html b/parquet/arrow/record_reader/buffer/trait.ValuesBuffer.html
index f801ce79d3..5153ba2190 100644
--- a/parquet/arrow/record_reader/buffer/trait.ValuesBuffer.html
+++ b/parquet/arrow/record_reader/buffer/trait.ValuesBuffer.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 `BufferQueue` capable of storing column values"><title>ValuesBuffer in parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as= [...]
+<!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 `BufferQueue` capable of storing column values"><title>ValuesBuffer in parquet::arrow::record_reader::buffer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as= [...]
     // Required method
     fn <a href="#tymethod.pad_nulls" class="fn">pad_nulls</a>(
         &amp;mut self,
@@ -8,7 +8,7 @@
         valid_mask: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
     );
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <a href="trait.BufferQueue.html" title="trait parquet::arrow::record_reader::buffer::BufferQueue"><code>BufferQueue</code></a> capable of storing column values</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.pad_nulls" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#206-212">source</a><h4 class="code-header">fn <a href="#tymethod.pad_nulls" class="fn">pad_nulls</a>(
+</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.pad_nulls" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/buffer.rs.html#97-103">source</a><h4 class="code-header">fn <a href="#tymethod.pad_nulls" class="fn">pad_nulls</a>(
     &amp;mut self,
     read_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     values_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -26,4 +26,10 @@ the non-null level positions. This is what this method does.</p>
 <li><code>levels_read</code> - the number of levels read</li>
 <li><code>valid_mask</code> - a packed mask of valid levels</li>
 </ul>
-</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"><section id="impl-ValuesBuffer-for-OffsetBuffer%3CI%3E" class= [...]
\ 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 [...]
+    &amp;mut self,
+    read_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
+    values_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
+    levels_read: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
+    valid_mask: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
+)</h4></section></div></details><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-ValuesBuffer-for-OffsetBuffer%3CI%3E" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/buffer/offset_buffer.rs.html#161-209">source</a><a href="#impl-ValuesBuffer-for-OffsetBuffer%3CI%3E" class="anchor">§</a><h3 class="code-header">impl&lt;I: <a class="trait" href="../../../../arrow [...]
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/definition_levels/enum.BufferInner.html b/parquet/arrow/record_reader/definition_levels/enum.BufferInner.html
index 226073f162..c9e923cad6 100644
--- a/parquet/arrow/record_reader/definition_levels/enum.BufferInner.html
+++ b/parquet/arrow/record_reader/definition_levels/enum.BufferInner.html
@@ -1,13 +1,13 @@
-<!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 `BufferInner` enum in crate `parquet`."><title>BufferInner in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf [...]
+<!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 `BufferInner` enum in crate `parquet`."><title>BufferInner in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf [...]
     Full {
-        levels: <a class="struct" href="../buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;,
+        levels: <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.i16.html">i16</a>&gt;,
         nulls: <a class="struct" href="../../../../arrow_buffer/builder/boolean/struct.BooleanBufferBuilder.html" title="struct arrow_buffer::builder::boolean::BooleanBufferBuilder">BooleanBufferBuilder</a>,
         max_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>,
     },
     Mask {
         nulls: <a class="struct" href="../../../../arrow_buffer/builder/boolean/struct.BooleanBufferBuilder.html" title="struct arrow_buffer::builder::boolean::BooleanBufferBuilder">BooleanBufferBuilder</a>,
     },
-}</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Full" class="variant"><a href="#variant.Full" class="anchor">§</a><h3 class="code-header">Full</h3></section><div class="sub-variant" id="variant.Full.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Full.field.levels" class="section-header"><a href="#variant.Full.field.levels" class="anchor field">§</a><cod [...]
+}</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Full" class="variant"><a href="#variant.Full" class="anchor">§</a><h3 class="code-header">Full</h3></section><div class="sub-variant" id="variant.Full.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Full.field.levels" class="section-header"><a href="#variant.Full.field.levels" class="anchor field">§</a><cod [...]
 </div><section id="variant.Mask" class="variant"><a href="#variant.Mask" class="anchor">§</a><h3 class="code-header">Mask</h3></section><div class="sub-variant" id="variant.Mask.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Mask.field.nulls" class="section-header"><a href="#variant.Mask.field.nulls" class="anchor field">§</a><code>nulls: <a class="struct" href="../../../../arrow_buffer/builder/boolean/struct.BooleanBufferBuilder.html" title="struct arrow_buffer: [...]
 <p>This is an optimisation for the common case of a nullable scalar column, as decoding
 the definition level data is only required when decoding nested structures</p>
diff --git a/parquet/arrow/record_reader/definition_levels/enum.MaybePacked.html b/parquet/arrow/record_reader/definition_levels/enum.MaybePacked.html
index e1b567c4ce..b746fbe0e9 100644
--- a/parquet/arrow/record_reader/definition_levels/enum.MaybePacked.html
+++ b/parquet/arrow/record_reader/definition_levels/enum.MaybePacked.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 `MaybePacked` enum in crate `parquet`."><title>MaybePacked in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf [...]
+<!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 `MaybePacked` enum in crate `parquet`."><title>MaybePacked in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf [...]
     Packed(<a class="struct" href="struct.PackedDecoder.html" title="struct parquet::arrow::record_reader::definition_levels::PackedDecoder">PackedDecoder</a>),
     Fallback(<a class="struct" href="../../../column/reader/decoder/struct.DefinitionLevelDecoderImpl.html" title="struct parquet::column::reader::decoder::DefinitionLevelDecoderImpl">DefinitionLevelDecoderImpl</a>),
 }</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Packed" class="variant"><a href="#variant.Packed" class="anchor">§</a><h3 class="code-header">Packed(<a class="struct" href="struct.PackedDecoder.html" title="struct parquet::arrow::record_reader::definition_levels::PackedDecoder">PackedDecoder</a>)</h3></section><section id="variant.Fallback" class="variant"><a href="#variant.Fal [...]
diff --git a/parquet/arrow/record_reader/definition_levels/index.html b/parquet/arrow/record_reader/definition_levels/index.html
index 99c208108e..6612e9912a 100644
--- a/parquet/arrow/record_reader/definition_levels/index.html
+++ b/parquet/arrow/record_reader/definition_levels/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="API documentation for the Rust `definition_levels` mod in crate `parquet`."><title>parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><l [...]
+<!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 `definition_levels` mod in crate `parquet`."><title>parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><l [...]
 directly into a bitmask</div></li></ul><h2 id="enums" class="section-header"><a href="#enums">Enums</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.BufferInner.html" title="enum parquet::arrow::record_reader::definition_levels::BufferInner">BufferInner</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="enum" href="enum.MaybePacked.html" title="enum parquet::arrow::record_reader::definition_levels::May [...]
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBuffer.html b/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBuffer.html
index 681566122d..32be557874 100644
--- a/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBuffer.html
+++ b/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBuffer.html
@@ -1,11 +1,11 @@
-<!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 `DefinitionLevelBuffer` struct in crate `parquet`."><title>DefinitionLevelBuffer in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regula [...]
+<!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 `DefinitionLevelBuffer` struct in crate `parquet`."><title>DefinitionLevelBuffer in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regula [...]
     inner: <a class="enum" href="enum.BufferInner.html" title="enum parquet::arrow::record_reader::definition_levels::BufferInner">BufferInner</a>,
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
 }</code></pre><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: <a class="enum" href="enum.BufferInner.html" title="enum parquet::arrow::record_reader::definition_levels::BufferInner">BufferInner</a></code></span><span id="structfield.len" class="structfield section-header"><a href="#structfield.len" class="anchor [...]
 <p>Note: <code>buffer</code> and <code>builder</code> may contain more elements</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-DefinitionLevelBuffer" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#59-117">source</a><a href="#impl-DefinitionLevelBuffer" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href [...]
-</div></details><section id="method.set_len" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#97-100">source</a><h4 class="code-header">pub fn <a href="#method.set_len" class="fn">set_len</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</h4></section><details class="toggle method-toggle" open><summary><section id="method.consume_bitmask" class="metho [...]
-</div></details><section id="method.nulls" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#111-116">source</a><h4 class="code-header">pub fn <a href="#method.nulls" class="fn">nulls</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../../../arrow_buffer/builder/boolean/struct.BooleanBufferBuilder.html" title="struct arrow_buffer::builder::boolean::BooleanBufferBuilder">BooleanBufferBuilder</a></h4></section></div></de [...]
+</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-DefinitionLevelBuffer" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#57-115">source</a><a href="#impl-DefinitionLevelBuffer" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href [...]
+</div></details><section id="method.set_len" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#95-98">source</a><h4 class="code-header">pub fn <a href="#method.set_len" class="fn">set_len</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</h4></section><details class="toggle method-toggle" open><summary><section id="method.consume_bitmask" class="method [...]
+</div></details><section id="method.nulls" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#109-114">source</a><h4 class="code-header">pub fn <a href="#method.nulls" class="fn">nulls</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../../../arrow_buffer/builder/boolean/struct.BooleanBufferBuilder.html" title="struct arrow_buffer::builder::boolean::BooleanBufferBuilder">BooleanBufferBuilder</a></h4></section></div></de [...]
     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/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBufferDecoder.html b/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBufferDecoder.html
index 26bc1a69fd..f5e79d736d 100644
--- a/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBufferDecoder.html
+++ b/parquet/arrow/record_reader/definition_levels/struct.DefinitionLevelBufferDecoder.html
@@ -1,11 +1,11 @@
-<!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 `DefinitionLevelBufferDecoder` struct in crate `parquet`."><title>DefinitionLevelBufferDecoder in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/Sourc [...]
+<!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 `DefinitionLevelBufferDecoder` struct in crate `parquet`."><title>DefinitionLevelBufferDecoder in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/Sourc [...]
     max_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>,
     decoder: <a class="enum" href="enum.MaybePacked.html" title="enum parquet::arrow::record_reader::definition_levels::MaybePacked">MaybePacked</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.max_level" class="structfield section-header"><a href="#structfield.max_level" class="anchor field">§</a><code>max_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code></span><span id="structfield.decoder" class="structfield section-header"><a href="#structfield.decoder" class="anchor field">§</a><code>deco [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.max_level" class="structfield section-header"><a href="#structfield.max_level" class="anchor field">§</a><code>max_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code></span><span id="structfield.decoder" class="structfield section-header"><a href="#structfield.decoder" class="anchor field">§</a><code>deco [...]
     &amp;mut self,
     writer: &amp;mut Self::<a class="associatedtype" href="../../../column/reader/decoder/trait.ColumnLevelDecoder.html#associatedtype.Slice" title="type parquet::column::reader::decoder::ColumnLevelDecoder::Slice">Slice</a>,
     range: <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; <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'>Read definition level data into <code>out[range]</code> returning the number of levels read <a href="../../../column/reader/decoder/trait.DefinitionLevelDecoder.html#tymethod.read_def_levels">Read more</a></div></details><details  [...]
+) -&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'>Read definition level data into <code>out[range]</code> returning the number of levels read <a href="../../../column/reader/decoder/trait.DefinitionLevelDecoder.html#tymethod.read_def_levels">Read more</a></div></details><details  [...]
     &amp;mut self,
     num_levels: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     max_def_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>
diff --git a/parquet/arrow/record_reader/definition_levels/struct.PackedDecoder.html b/parquet/arrow/record_reader/definition_levels/struct.PackedDecoder.html
index 133adc7f5d..d29beee787 100644
--- a/parquet/arrow/record_reader/definition_levels/struct.PackedDecoder.html
+++ b/parquet/arrow/record_reader/definition_levels/struct.PackedDecoder.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="An optimized decoder for decoding RLE and BIT_PACKED data with a bit width of 1 directly into a bitmask"><title>PackedDecoder in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/Sourc [...]
+<!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 optimized decoder for decoding RLE and BIT_PACKED data with a bit width of 1 directly into a bitmask"><title>PackedDecoder in parquet::arrow::record_reader::definition_levels - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/Sourc [...]
     data: Bytes,
     data_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     rle_left: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -15,12 +15,12 @@ but it can exploit properties of the encoded data to reduce work further</p>
 <li>Packed runs are already bitmask encoded and can simply be appended</li>
 <li>Runs of 1 or 0 bits can be efficiently appended with byte (or larger) operations</li>
 </ul>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data" class="structfield section-header"><a href="#structfield.data" class="anchor field">§</a><code>data: Bytes</code></span><span id="structfield.data_offset" class="structfield section-header"><a href="#structfield.data_offset" class="anchor field">§</a><code>data_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.ht [...]
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PackedDecoder-1" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#278-363">source</a><a href="#impl-PackedDecoder-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.PackedDecoder.html" title="struct parquet::arrow::record_reader::definition_levels::PackedDecoder">PackedDecoder</a></h3>< [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.data" class="structfield section-header"><a href="#structfield.data" class="anchor field">§</a><code>data: Bytes</code></span><span id="structfield.data_offset" class="structfield section-header"><a href="#structfield.data_offset" class="anchor field">§</a><code>data_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.ht [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PackedDecoder-1" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#276-361">source</a><a href="#impl-PackedDecoder-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.PackedDecoder.html" title="struct parquet::arrow::record_reader::definition_levels::PackedDecoder">PackedDecoder</a></h3>< [...]
     &amp;mut self,
     buffer: &amp;mut <a class="struct" href="../../../../arrow_buffer/builder/boolean/struct.BooleanBufferBuilder.html" title="struct arrow_buffer::builder::boolean::BooleanBufferBuilder">BooleanBufferBuilder</a>,
     len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>
-) -&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><details class="toggle method-toggle" open><summary><section id="method.skip" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#333-362">source</a><h4 class="code-header">fn <a href="#method.skip" [...]
+) -&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><details class="toggle method-toggle" open><summary><section id="method.skip" class="method"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#331-360">source</a><h4 class="code-header">fn <a href="#method.skip" [...]
 <p>Returns the number of values skipped and the number of levels skipped</p>
 </div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-PackedDecoder" class="impl"><a href="#impl-RefUnwindSafe-for-PackedDecoder" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.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/arrow/record_reader/fn.packed_null_mask.html b/parquet/arrow/record_reader/fn.packed_null_mask.html
index 90e83cd173..4e56a1aeb4 100644
--- a/parquet/arrow/record_reader/fn.packed_null_mask.html
+++ b/parquet/arrow/record_reader/fn.packed_null_mask.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="Returns true if we do not need to unpack the nullability for this column, this is only possible if the max definition level is 1, and corresponds to nulls at the leaf level, as opposed to a nullable parent nested type"><title>packed_null_mask in parquet::arrow::record_reader - Rust</titl [...]
+<!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 true if we do not need to unpack the nullability for this column, this is only possible if the max definition level is 1, and corresponds to nulls at the leaf level, as opposed to a nullable parent nested type"><title>packed_null_mask in parquet::arrow::record_reader - Rust</titl [...]
 only possible if the max definition level is 1, and corresponds to nulls at the
 leaf level, as opposed to a nullable parent nested type</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/index.html b/parquet/arrow/record_reader/index.html
index 20ef81ee76..e0bb3b8521 100644
--- a/parquet/arrow/record_reader/index.html
+++ b/parquet/arrow/record_reader/index.html
@@ -1,3 +1,3 @@
-<!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 `record_reader` mod in crate `parquet`."><title>parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font [...]
+<!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 `record_reader` mod in crate `parquet`."><title>parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font [...]
 only possible if the max definition level is 1, and corresponds to nulls at the
 leaf level, as opposed to a nullable parent nested type</div></li></ul><h2 id="types" class="section-header"><a href="#types">Type Aliases</a></h2><ul class="item-table"><li><div class="item-name"><a class="type" href="type.ColumnReader.html" title="type parquet::arrow::record_reader::ColumnReader">ColumnReader</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="type" href="type.RecordReader.html" title="type parquet::arrow::record_reader [...]
\ No newline at end of file
diff --git a/parquet/arrow/record_reader/struct.GenericRecordReader.html b/parquet/arrow/record_reader/struct.GenericRecordReader.html
index 60c795e4e4..741fd77fa1 100644
--- a/parquet/arrow/record_reader/struct.GenericRecordReader.html
+++ b/parquet/arrow/record_reader/struct.GenericRecordReader.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 generic stateful column reader that delimits semantic records"><title>GenericRecordReader in parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="p [...]
+<!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 generic stateful column reader that delimits semantic records"><title>GenericRecordReader in parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="p [...]
     column_desc: <a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a>,
     values: V,
     def_levels: <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="definition_levels/struct.DefinitionLevelBuffer.html" title="struct parquet::arrow::record_reader::definition_levels::DefinitionLevelBuffer">DefinitionLevelBuffer</a>&gt;,
-    rep_levels: <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="buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;&gt;,
+    rep_levels: <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/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;&gt;,
     column_reader: <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="../../column/reader/struct.GenericColumnReader.html" title="struct parquet::column::reader::GenericColumnReader">GenericColumnReader</a>&lt;<a class="struct" href="../../column/reader/decoder/struct.RepetitionLevelDecoderImpl.html" title="struct parquet::column::reader::decoder::RepetitionLevelDecoderImpl">Repetit [...]
     num_values: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -10,42 +10,42 @@
 <p>This type is hidden from the docs, and relies on private traits with no
 public implementations. As such this type signature may be changed without
 breaking downstream users as it can only be constructed through type aliases</p>
-</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.column_desc" class="structfield section-header"><a href="#structfield.column_desc" class="anchor field">§</a><code>column_desc: <a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfi [...]
+</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.column_desc" class="structfield section-header"><a href="#structfield.column_desc" class="anchor field">§</a><code>column_desc: <a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a></code></span><span id="structfield.values" class="structfield section-header"><a href="#structfi [...]
 </div><span id="structfield.num_records" class="structfield section-header"><a href="#structfield.num_records" class="anchor field">§</a><code>num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><div class="docblock"><p>Number of buffered records</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-GenericRecordReader%3CV,+CV%3E" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#64-73">source</a><a href="#impl-GenericRecordReader%3CV,+CV%3E" class="anchor">§</a><h3 class="code-header">impl&lt;V, CV&gt; <a class= [...]
+</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-GenericRecordReader%3CV,+CV%3E" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#63-72">source</a><a href="#impl-GenericRecordReader%3CV,+CV%3E" class="anchor">§</a><h3 class="code-header">impl&lt;V, CV&gt; <a class= [...]
     V: <a class="trait" href="buffer/trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer">ValuesBuffer</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/default/trait.Default.html" title="trait core::default::Default">Default</a>,
-    CV: <a class="trait" href="../../column/reader/decoder/trait.ColumnValueDecoder.html" title="trait parquet::column::reader::decoder::ColumnValueDecoder">ColumnValueDecoder</a>&lt;Slice = V::<a class="associatedtype" href="buffer/trait.BufferQueue.html#associatedtype.Slice" title="type parquet::arrow::record_reader::buffer::BufferQueue::Slice">Slice</a>&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.ne [...]
-</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericRecordReader%3CV,+CV%3E-1" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#75-246">source</a><a href="#impl-GenericRecordReader%3CV,+CV%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;V, CV&gt; <a class="struct" href="struct.GenericRecordReader.html" title="struct parquet::arrow::record_reader::GenericRecordReader">G [...]
+    CV: <a class="trait" href="../../column/reader/decoder/trait.ColumnValueDecoder.html" title="trait parquet::column::reader::decoder::ColumnValueDecoder">ColumnValueDecoder</a>&lt;Slice = V::<a class="associatedtype" href="buffer/trait.BufferQueue.html#associatedtype.Slice" title="type parquet::arrow::record_reader::buffer::BufferQueue::Slice">Slice</a>&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.ne [...]
+</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GenericRecordReader%3CV,+CV%3E-1" class="impl"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#74-247">source</a><a href="#impl-GenericRecordReader%3CV,+CV%3E-1" class="anchor">§</a><h3 class="code-header">impl&lt;V, CV&gt; <a class="struct" href="struct.GenericRecordReader.html" title="struct parquet::arrow::record_reader::GenericRecordReader">G [...]
     V: <a class="trait" href="buffer/trait.ValuesBuffer.html" title="trait parquet::arrow::record_reader::buffer::ValuesBuffer">ValuesBuffer</a>,
-    CV: <a class="trait" href="../../column/reader/decoder/trait.ColumnValueDecoder.html" title="trait parquet::column::reader::decoder::ColumnValueDecoder">ColumnValueDecoder</a>&lt;Slice = V::<a class="associatedtype" href="buffer/trait.BufferQueue.html#associatedtype.Slice" title="type parquet::arrow::record_reader::buffer::BufferQueue::Slice">Slice</a>&gt;,</div></h3></section></summary><div class="impl-items"><section id="method.new_with_records" class="method"><a class="src rightsi [...]
+    CV: <a class="trait" href="../../column/reader/decoder/trait.ColumnValueDecoder.html" title="trait parquet::column::reader::decoder::ColumnValueDecoder">ColumnValueDecoder</a>&lt;Slice = V::<a class="associatedtype" href="buffer/trait.BufferQueue.html#associatedtype.Slice" title="type parquet::arrow::record_reader::buffer::BufferQueue::Slice">Slice</a>&gt;,</div></h3></section></summary><div class="impl-items"><section id="method.new_with_records" class="method"><a class="src rightsi [...]
     &amp;mut self,
     page_reader: <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="../../column/page/trait.PageReader.html" title="trait parquet::column::page::PageReader">PageReader</a>&gt;
 ) -&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"><p>Set the current page reader.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.read_records" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#124-139">source</a><h4 class="code-header">pub fn <a href="#method.read_records" class="fn">read_records</a>(&amp;mut self, num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../../errors/type.Result.htm [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.read_records" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#123-138">source</a><h4 class="code-header">pub fn <a href="#method.read_records" class="fn">read_records</a>(&amp;mut self, num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../../errors/type.Result.htm [...]
 <h5 id="returns"><a href="#returns">Returns</a></h5>
 <p>Number of actual records read.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.skip_records" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#146-151">source</a><h4 class="code-header">pub fn <a href="#method.skip_records" class="fn">skip_records</a>(&amp;mut self, num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../../errors/type.Result.htm [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.skip_records" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#145-150">source</a><h4 class="code-header">pub fn <a href="#method.skip_records" class="fn">skip_records</a>(&amp;mut self, num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../../errors/type.Result.htm [...]
 <h5 id="returns-1"><a href="#returns-1">Returns</a></h5>
 <p>Number of records skipped</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.num_records" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#155-157">source</a><h4 class="code-header">pub fn <a href="#method.num_records" class="fn">num_records</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 number of reco [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.num_values" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#162-164">source</a><h4 class="code-header">pub fn <a href="#method.num_values" class="fn">num_values</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 number of values s [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.num_records" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#154-156">source</a><h4 class="code-header">pub fn <a href="#method.num_records" class="fn">num_records</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 number of reco [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.num_values" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#161-163">source</a><h4 class="code-header">pub fn <a href="#method.num_values" class="fn">num_values</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 number of values s [...]
 If the parquet column is not repeated, it should be equals to <code>num_records</code>,
 otherwise it should be larger than or equal to <code>num_records</code>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_def_levels" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#170-172">source</a><h4 class="code-header">pub fn <a href="#method.consume_def_levels" class="fn">consume_def_levels</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= [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_def_levels" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#169-171">source</a><h4 class="code-header">pub fn <a href="#method.consume_def_levels" class="fn">consume_def_levels</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= [...]
 The implementation has side effects. It will create a new buffer to hold those
 definition level values that have already been read into memory but not counted
 as record values, e.g. those from <code>self.num_values</code> to <code>self.values_written</code>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_rep_levels" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#176-178">source</a><h4 class="code-header">pub fn <a href="#method.consume_rep_levels" class="fn">consume_rep_levels</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= [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_rep_levels" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#175-179">source</a><h4 class="code-header">pub fn <a href="#method.consume_rep_levels" class="fn">consume_rep_levels</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= [...]
 The side effect is similar to <code>consume_def_levels</code>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_record_data" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#182-184">source</a><h4 class="code-header">pub fn <a href="#method.consume_record_data" class="fn">consume_record_data</a>(&amp;mut self) -&gt; V::<a class="associatedtype" href="buffer/trait.BufferQueue.html#associatedtype.Output" title="type parquet::arrow::record_reader::buffer::B [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_record_data" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#183-185">source</a><h4 class="code-header">pub fn <a href="#method.consume_record_data" class="fn">consume_record_data</a>(&amp;mut self) -&gt; V::<a class="associatedtype" href="buffer/trait.BufferQueue.html#associatedtype.Output" title="type parquet::arrow::record_reader::buffer::B [...]
 The side effect is similar to <code>consume_def_levels</code>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_bitmap_buffer" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#188-190">source</a><h4 class="code-header">pub fn <a href="#method.consume_bitmap_buffer" class="fn">consume_bitmap_buffer</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; [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_bitmap_buffer" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#189-191">source</a><h4 class="code-header">pub fn <a href="#method.consume_bitmap_buffer" class="fn">consume_bitmap_buffer</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; [...]
 The side effect is similar to <code>consume_def_levels</code>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.reset" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#195-198">source</a><h4 class="code-header">pub fn <a href="#method.reset" class="fn">reset</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Reset state of record reader.
+</div></details><details class="toggle method-toggle" open><summary><section id="method.reset" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#196-199">source</a><h4 class="code-header">pub fn <a href="#method.reset" class="fn">reset</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Reset state of record reader.
 Should be called after consuming data, e.g. <code>consume_rep_levels</code>,
 <code>consume_rep_levels</code>, <code>consume_record_data</code> and <code>consume_bitmap_buffer</code>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_bitmap" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#201-205">source</a><h4 class="code-header">pub fn <a href="#method.consume_bitmap" class="fn">consume_bitmap</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" hre [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.read_one_batch" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#208-245">source</a><h4 class="code-header">fn <a href="#method.read_one_batch" class="fn">read_one_batch</a>(&amp;mut self, batch_size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../../errors/type.Result.ht [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.consume_bitmap" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#202-206">source</a><h4 class="code-header">pub fn <a href="#method.consume_bitmap" class="fn">consume_bitmap</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" hre [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.read_one_batch" class="method"><a class="src rightside" href="../../../src/parquet/arrow/record_reader/mod.rs.html#209-246">source</a><h4 class="code-header">fn <a href="#method.read_one_batch" class="fn">read_one_batch</a>(&amp;mut self, batch_size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="type" href="../../errors/type.Result.ht [...]
 </div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-GenericRecordReader%3CV,+CV%3E" class="impl"><a href="#impl-RefUnwindSafe-for-GenericRecordReader%3CV,+CV%3E" class="anchor">§</a><h3 class="code-header">impl&lt;V, CV&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/c [...]
     CV: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
     V: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-Sync-for-GenericRecordReader%3CV,+CV%3E" class="impl"><a href="#impl-Sync-for-GenericRecordReader%3CV,+CV%3E" class="anchor">§</a><h3 class="code-header">impl&lt;V, CV&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="str [...]
diff --git a/parquet/arrow/record_reader/type.ColumnReader.html b/parquet/arrow/record_reader/type.ColumnReader.html
index 4fcd8040c2..e9c320f43a 100644
--- a/parquet/arrow/record_reader/type.ColumnReader.html
+++ b/parquet/arrow/record_reader/type.ColumnReader.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 `ColumnReader` type in crate `parquet`."><title>ColumnReader in parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="p [...]
+<!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 `ColumnReader` type in crate `parquet`."><title>ColumnReader in parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="p [...]
     descr: <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="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>&gt;,
     page_reader: <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="../../column/page/trait.PageReader.html" title="trait parquet::column::page::PageReader">PageReader</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="enum" href="../../column/page/enum.Page.html" title="enum p [...]
     num_buffered_values: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
diff --git a/parquet/arrow/record_reader/type.RecordReader.html b/parquet/arrow/record_reader/type.RecordReader.html
index 4de5dfd1f3..b67fc8d5cb 100644
--- a/parquet/arrow/record_reader/type.RecordReader.html
+++ b/parquet/arrow/record_reader/type.RecordReader.html
@@ -1,12 +1,12 @@
-<!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 `RecordReader` is a stateful column reader that delimits semantic records."><title>RecordReader in parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link  [...]
+<!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 `RecordReader` is a stateful column reader that delimits semantic records."><title>RecordReader in parquet::arrow::record_reader - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link  [...]
 </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 RecordReader&lt;T&gt; {
     column_desc: <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="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>&gt;,
-    values: <a class="struct" href="buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;&lt;T as <a class="trait" href="../../data_type/trait.DataType.html" title="trait parquet::data_type::DataType">DataType</a>&gt;::<a class="associatedtype" href="../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>&gt;,
+    values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;&lt;T as <a class="trait" href="../../data_type/trait.DataType.html" title="trait parquet::data_type::DataType">DataType</a>&gt;::<a class="associatedtype" href="../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>&gt;,
     def_levels: <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="definition_levels/struct.DefinitionLevelBuffer.html" title="struct parquet::arrow::record_reader::definition_levels::DefinitionLevelBuffer">DefinitionLevelBuffer</a>&gt;,
-    rep_levels: <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="buffer/struct.ScalarBuffer.html" title="struct parquet::arrow::record_reader::buffer::ScalarBuffer">ScalarBuffer</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;&gt;,
+    rep_levels: <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/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>&gt;&gt;,
     column_reader: <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="../../column/reader/struct.GenericColumnReader.html" title="struct parquet::column::reader::GenericColumnReader">GenericColumnReader</a>&lt;<a class="struct" href="../../column/reader/decoder/struct.RepetitionLevelDecoderImpl.html" title="struct parquet::column::reader::decoder::RepetitionLevelDecoderImpl">Repetit [...]
     num_values: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
     num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.column_desc" class="structfield section-header"><a href="#structfield.column_desc" class="anchor field">§</a><code>column_desc: <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="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema:: [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.column_desc" class="structfield section-header"><a href="#structfield.column_desc" class="anchor field">§</a><code>column_desc: <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="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema:: [...]
 </div><span id="structfield.num_records" class="structfield section-header"><a href="#structfield.num_records" class="anchor field">§</a><code>num_records: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></span><div class="docblock"><p>Number of buffered records</p>
 </div><script src="../../../type.impl/parquet/arrow/record_reader/struct.GenericRecordReader.js" data-self-path="parquet::arrow::record_reader::RecordReader" async></script></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/basic/enum.ColumnOrder.html b/parquet/basic/enum.ColumnOrder.html
index 77073a5dca..fdd1f174d4 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#556-572">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#575-580">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#474">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#474">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#239">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#474">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 a49402e3df..bf2f383272 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#239">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#943-964">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.Encoding.html b/parquet/basic/enum.Encoding.html
index 6bfc2768ad..0d60f351dc 100644
--- a/parquet/basic/enum.Encoding.html
+++ b/parquet/basic/enum.Encoding.html
@@ -53,7 +53,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></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-Encoding" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#234">source</a><a href="#impl-Clone-for-Encoding" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust [...]
+</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-Encoding" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#234">source</a><a href="#impl-Clone-for-Encoding" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust [...]
     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/basic/enum.LogicalType.html b/parquet/basic/enum.LogicalType.html
index 48ef8f9ae5..26e1ee59ca 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#239">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.PageType.html b/parquet/basic/enum.PageType.html
index aac854ff51..d42d4f2c1a 100644
--- a/parquet/basic/enum.PageType.html
+++ b/parquet/basic/enum.PageType.html
@@ -5,7 +5,7 @@
     DATA_PAGE_V2,
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Available data pages for Parquet file format.
 Note that some of the page types may not be supported.</p>
-</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.DATA_PAGE" class="variant"><a href="#variant.DATA_PAGE" class="anchor">§</a><h3 class="code-header">DATA_PAGE</h3></section><section id="variant.INDEX_PAGE" class="variant"><a href="#variant.INDEX_PAGE" class="anchor">§</a><h3 class="code-header">INDEX_PAGE</h3></section><section id="variant.DICTIONARY_PAGE" class="variant"><a h [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.DATA_PAGE" class="variant"><a href="#variant.DATA_PAGE" class="anchor">§</a><h3 class="code-header">DATA_PAGE</h3></section><section id="variant.INDEX_PAGE" class="variant"><a href="#variant.INDEX_PAGE" class="anchor">§</a><h3 class="code-header">INDEX_PAGE</h3></section><section id="variant.DICTIONARY_PAGE" class="variant"><a h [...]
 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#239">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%3CPageType%3E-for-PageType" class="impl"><a class="src rightside" href="../../src/parquet/basic.rs.html#984-996">source</a><a href="#impl-TryFrom%3CPageType%3E-for-PageType" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.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 [...]
diff --git a/parquet/basic/enum.Type.html b/parquet/basic/enum.Type.html
index e88e206f3a..2cf2c1241e 100644
--- a/parquet/basic/enum.Type.html
+++ b/parquet/basic/enum.Type.html
@@ -12,7 +12,7 @@ These physical types are intended to be used in combination with the encodings t
 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="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.BOOLEAN" class="variant"><a href="#variant.BOOLEAN" class="anchor">§</a><h3 class="code-header">BOOLEAN</h3></section><section id="variant.INT32" class="variant"><a href="#variant.INT32" class="anchor">§</a><h3 class="code-header">INT32</h3></section><section id="variant.INT64" class="variant"><a href="#variant.INT64" class="anc [...]
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.BOOLEAN" class="variant"><a href="#variant.BOOLEAN" class="anchor">§</a><h3 class="code-header">BOOLEAN</h3></section><section id="variant.INT32" class="variant"><a href="#variant.INT32" class="anchor">§</a><h3 class="code-header">INT32</h3></section><section id="variant.INT64" class="variant"><a href="#variant.INT64" class="anc [...]
     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#239">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/column/reader/decoder/trait.ColumnLevelDecoder.html b/parquet/column/reader/decoder/trait.ColumnLevelDecoder.html
index a8b143bfda..e1986af27c 100644
--- a/parquet/column/reader/decoder/trait.ColumnLevelDecoder.html
+++ b/parquet/column/reader/decoder/trait.ColumnLevelDecoder.html
@@ -5,4 +5,4 @@
     fn <a href="#tymethod.set_data" class="fn">set_data</a>(&amp;mut self, encoding: <a class="enum" href="../../../basic/enum.Encoding.html" title="enum parquet::basic::Encoding">Encoding</a>, data: Bytes);
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Decodes level data to a <a href="trait.LevelsBufferSlice.html" title="trait parquet::column::reader::decoder::LevelsBufferSlice"><code>LevelsBufferSlice</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"><section id="associatedtype.Slice" class="method"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#66">source</a><h4 class="code-header">type <a href="#associatedtype.Slice" class="associatedtype">Slice</a>: <a class="trait" href="trait.LevelsBufferSlice.html" title="trait  [...]
-</div></details></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 id="impl-ColumnLevelDecoder-for-DefinitionLevelBufferDecoder" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#152-161">source</a><a href="#impl-ColumnLevelDecoder-for-DefinitionLevelBufferDecoder" class="anch [...]
\ No newline at end of file
+</div></details></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 id="impl-ColumnLevelDecoder-for-DefinitionLevelBufferDecoder" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#150-159">source</a><a href="#impl-ColumnLevelDecoder-for-DefinitionLevelBufferDecoder" class="anch [...]
\ No newline at end of file
diff --git a/parquet/column/reader/decoder/trait.DefinitionLevelDecoder.html b/parquet/column/reader/decoder/trait.DefinitionLevelDecoder.html
index adb789c0d9..f5c4399caf 100644
--- a/parquet/column/reader/decoder/trait.DefinitionLevelDecoder.html
+++ b/parquet/column/reader/decoder/trait.DefinitionLevelDecoder.html
@@ -25,4 +25,4 @@ that only track capacity and not length</p>
     max_def_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>
 ) -&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>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)&gt;</h4></section></summary><div class="docblock"><p>Skips over <code>num_levels</code> definition levels</p>
 <p>Returns the number of values skipped, and the number of levels skipped</p>
-</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-DefinitionLevelDecoder-for-DefinitionLevelBufferDecoder" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#163-205">source</a><a href="#impl-DefinitionLevelDecoder-for-DefinitionLevelBufferDecoder" class="anchor">§</a><h3 class="code-header">impl <a clas [...]
\ No newline at end of file
+</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-DefinitionLevelDecoder-for-DefinitionLevelBufferDecoder" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/record_reader/definition_levels.rs.html#161-203">source</a><a href="#impl-DefinitionLevelDecoder-for-DefinitionLevelBufferDecoder" class="anchor">§</a><h3 class="code-header">impl <a clas [...]
\ No newline at end of file
diff --git a/parquet/column/reader/decoder/trait.LevelsBufferSlice.html b/parquet/column/reader/decoder/trait.LevelsBufferSlice.html
index 3e2e3dea56..5b345c3d91 100644
--- a/parquet/column/reader/decoder/trait.LevelsBufferSlice.html
+++ b/parquet/column/reader/decoder/trait.LevelsBufferSlice.html
@@ -5,4 +5,4 @@
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A slice of levels buffer data that is written to by a <a href="trait.ColumnLevelDecoder.html" title="trait parquet::column::reader::decoder::ColumnLevelDecoder"><code>ColumnLevelDecoder</code></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.capacity" class="method"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#36">source</a><h4 class="code-header">fn <a href="#tymethod.capacity" class="fn">capacity</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rus [...]
 </div></details><details class="toggle method-toggle" open><summary><section id="tymethod.count_nulls" class="method"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#39">source</a><h4 class="code-header">fn <a href="#tymethod.count_nulls" class="fn">count_nulls</a>(&amp;self, range: <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=" [...]
-</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-LevelsBufferSlice-for-%5Bi16%5D" class="impl"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#42-50">source</a><a href="#impl-LevelsBufferSlice-for-%5Bi16%5D" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="tra [...]
\ No newline at end of file
+</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-LevelsBufferSlice-for-%5Bi16%5D" class="impl"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#42-50">source</a><a href="#impl-LevelsBufferSlice-for-%5Bi16%5D" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="tra [...]
\ No newline at end of file
diff --git a/parquet/column/reader/decoder/trait.ValuesBufferSlice.html b/parquet/column/reader/decoder/trait.ValuesBufferSlice.html
index efa176496a..afee06cce4 100644
--- a/parquet/column/reader/decoder/trait.ValuesBufferSlice.html
+++ b/parquet/column/reader/decoder/trait.ValuesBufferSlice.html
@@ -3,4 +3,4 @@
     fn <a href="#tymethod.capacity" class="fn">capacity</a>(&amp;self) -&gt; <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 slice of values buffer data that is written to by a <a href="trait.ColumnValueDecoder.html" title="trait parquet::column::reader::decoder::ColumnValueDecoder"><code>ColumnValueDecoder</code></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.capacity" class="method"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#55">source</a><h4 class="code-header">fn <a href="#tymethod.capacity" class="fn">capacity</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rus [...]
-</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-ValuesBufferSlice-for-%5BT%5D" class="impl"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#58-62">source</a><a href="#impl-ValuesBufferSlice-for-%5BT%5D" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href [...]
\ No newline at end of file
+</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-ValuesBufferSlice-for-%5BT%5D" class="impl"><a class="src rightside" href="../../../../src/parquet/column/reader/decoder.rs.html#58-62">source</a><a href="#impl-ValuesBufferSlice-for-%5BT%5D" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href [...]
\ No newline at end of file
diff --git a/parquet/column/writer/encoder/fn.get_min_max.html b/parquet/column/writer/encoder/fn.get_min_max.html
index b6093991cf..2d0b0bfed7 100644
--- a/parquet/column/writer/encoder/fn.get_min_max.html
+++ b/parquet/column/writer/encoder/fn.get_min_max.html
@@ -1,3 +1,3 @@
-<!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_min_max` fn in crate `parquet`."><title>get_min_max in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel= [...]
+<!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_min_max` fn in crate `parquet`."><title>get_min_max in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel= [...]
     T: <a class="trait" href="../../../data_type/private/trait.ParquetValueType.html" title="trait parquet::data_type::private::ParquetValueType">ParquetValueType</a> + 'a,
     I: <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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a T</a>&gt;,</div></code></pre></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/encoder/fn.replace_zero.html b/parquet/column/writer/encoder/fn.replace_zero.html
index 9a290cc7bb..d06c20c214 100644
--- a/parquet/column/writer/encoder/fn.replace_zero.html
+++ b/parquet/column/writer/encoder/fn.replace_zero.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 `replace_zero` fn in crate `parquet`."><title>replace_zero in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link re [...]
+<!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 `replace_zero` fn in crate `parquet`."><title>replace_zero in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link re [...]
     val: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>,
     descr: &amp;<a class="struct" href="../../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>,
     replace: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>
diff --git a/parquet/column/writer/encoder/index.html b/parquet/column/writer/encoder/index.html
index d7831401ec..f3cc548ceb 100644
--- a/parquet/column/writer/encoder/index.html
+++ b/parquet/column/writer/encoder/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="API documentation for the Rust `encoder` mod in crate `parquet`."><title>parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font [...]
+<!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 `encoder` mod in crate `parquet`."><title>parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font [...]
 <a href="../struct.GenericColumnWriter.html" title="struct parquet::column::writer::GenericColumnWriter">super::GenericColumnWriter`</a></div></li><li><div class="item-name"><a class="trait" href="trait.ColumnValues.html" title="trait parquet::column::writer::encoder::ColumnValues">ColumnValues</a></div><div class="desc docblock-short">A collection of <a href="../../../data_type/private/trait.ParquetValueType.html" title="trait parquet::data_type::private::ParquetValueType"><code>Parquet [...]
\ No newline at end of file
diff --git a/parquet/column/writer/encoder/struct.ColumnValueEncoderImpl.html b/parquet/column/writer/encoder/struct.ColumnValueEncoderImpl.html
index 236d9adbc3..21c67d9695 100644
--- a/parquet/column/writer/encoder/struct.ColumnValueEncoderImpl.html
+++ b/parquet/column/writer/encoder/struct.ColumnValueEncoderImpl.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 `ColumnValueEncoderImpl` struct in crate `parquet`."><title>ColumnValueEncoderImpl in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac [...]
+<!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 `ColumnValueEncoderImpl` struct in crate `parquet`."><title>ColumnValueEncoderImpl in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regular-46f98efaafac [...]
     encoder: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn Encoder&lt;T&gt;&gt;,
     dict_encoder: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;DictEncoder&lt;T&gt;&gt;,
     descr: <a class="type" href="../../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a>,
@@ -7,18 +7,18 @@
     min_value: <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="../../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>&gt;,
     max_value: <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="../../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>&gt;,
     bloom_filter: <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="../../../bloom_filter/struct.Sbbf.html" title="struct parquet::bloom_filter::Sbbf">Sbbf</a>&gt;,
-}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.encoder" class="structfield section-header"><a href="#structfield.encoder" class="anchor field">§</a><code>encoder: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn Encoder&lt;T&gt;&gt;</code></span><span id="structfield.dict_encoder" class="structfield section-header"><a hr [...]
+}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.encoder" class="structfield section-header"><a href="#structfield.encoder" class="anchor field">§</a><code>encoder: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn Encoder&lt;T&gt;&gt;</code></span><span id="structfield.dict_encoder" class="structfield section-header"><a hr [...]
     &amp;self,
-    values: &amp;Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
+    values: &amp;[T::<a class="associatedtype" href="../../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>],
     value_indices: <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.usize.html">usize</a>]&gt;
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>, Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>)&gt;</h4></section></summa [...]
+) -&gt; <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="../../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>, T::<a class="associatedtype" href="../../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>)&gt;</h4></section><section id="method.write_slice" class="met [...]
 will <em>not</em> be tracked by the bloom filter as it is empty since. This should be called once
-near the end of encoding.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#184-213">source</a><a href="#method.try_new" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ColumnValueEncoder.html#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schema/types/type.ColumnDescPtr.html" title= [...]
+near the end of encoding.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_new" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#171-200">source</a><a href="#method.try_new" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ColumnValueEncoder.html#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schema/types/type.ColumnDescPtr.html" title= [...]
     &amp;mut self,
     values: &amp;Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]
-) -&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'>Write the values at the indexes in <code>indices</code> to this <a href="trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></div></details><details cla [...]
-<a href="trait.ColumnValueEncoder.html#tymethod.write"><code>Self::write</code></a> will not be dictionary encoded <a href="trait.ColumnValueEncoder.html#tymethod.flush_dict_page">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flush_data_page" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#275-288">source</a><a href="#method.flush_data_page" class="anchor">§</a><h4 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.unit.html">()</a>&gt;</h4></section></summary><div class='docblock'>Write the values at the indexes in <code>indices</code> to this <a href="trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></div></details><details cla [...]
+<a href="trait.ColumnValueEncoder.html#tymethod.write"><code>Self::write</code></a> will not be dictionary encoded <a href="trait.ColumnValueEncoder.html#tymethod.flush_dict_page">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flush_data_page" class="method trait-impl"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#262-275">source</a><a href="#method.flush_data_page" class="anchor">§</a><h4 class= [...]
     &lt;T as <a class="trait" href="../../../data_type/trait.DataType.html" title="trait parquet::data_type::DataType">DataType</a>&gt;::<a class="associatedtype" href="../../../data_type/trait.DataType.html#associatedtype.T" title="type parquet::data_type::DataType::T">T</a>: <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-ColumnValueEncoderImpl%3CT%3E [...]
     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/column/writer/encoder/trait.ColumnValueEncoder.html b/parquet/column/writer/encoder/trait.ColumnValueEncoder.html
index 5a4e23f4de..f20c90cc07 100644
--- a/parquet/column/writer/encoder/trait.ColumnValueEncoder.html
+++ b/parquet/column/writer/encoder/trait.ColumnValueEncoder.html
@@ -1,14 +1,9 @@
-<!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 generic encoder of `ColumnValues` to data and dictionary pages used by super::GenericColumnWriter`"><title>ColumnValueEncoder in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regula [...]
+<!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 generic encoder of `ColumnValues` to data and dictionary pages used by super::GenericColumnWriter`"><title>ColumnValueEncoder in parquet::column::writer::encoder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/SourceSerif4-Regula [...]
     type <a href="#associatedtype.T" class="associatedtype">T</a>: <a class="trait" href="../../../data_type/private/trait.ParquetValueType.html" title="trait parquet::data_type::private::ParquetValueType">ParquetValueType</a>;
     type <a href="#associatedtype.Values" class="associatedtype">Values</a>: <a class="trait" href="trait.ColumnValues.html" title="trait parquet::column::writer::encoder::ColumnValues">ColumnValues</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>;
 
     // Required methods
-    fn <a href="#tymethod.min_max" class="fn">min_max</a>(
-        &amp;self,
-        values: &amp;Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
-        value_indices: <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.usize.html">usize</a>]&gt;
-    ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>, Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>)&gt;;
-<span class="item-spacer"></span>    fn <a href="#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a>, props: &amp;<a class="struct" href="../../../file/properties/struct.WriterProperties.html" title="struct parquet::file::properties::WriterProperties">WriterProperties</a>) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parq [...]
+    fn <a href="#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a>, props: &amp;<a class="struct" href="../../../file/properties/struct.WriterProperties.html" title="struct parquet::file::properties::WriterProperties">WriterProperties</a>) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&l [...]
        <span class="where">where Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a></span>;
 <span class="item-spacer"></span>    fn <a href="#tymethod.write" class="fn">write</a>(
         &amp;mut self,
@@ -33,35 +28,29 @@
 </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.T" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#74">source</a><h4 class="code-header">type <a href="#associatedtype.T" class="associatedtype">T</a>: <a class="trait" href="../../../data_typ [...]
 <p>Note: this avoids needing to fully qualify <code>&lt;Self::Values as ColumnValues&gt;::T</code></p>
 </div></details><details class="toggle" open><summary><section id="associatedtype.Values" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#77">source</a><h4 class="code-header">type <a href="#associatedtype.Values" class="associatedtype">Values</a>: <a class="trait" href="trait.ColumnValues.html" title="trait parquet::column::writer::encoder::ColumnValues">ColumnValues</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/ [...]
-</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.min_max" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#82-86">source</a><h4 class="code-header">fn <a href="#tymethod.min_max" class="fn">min_max</a>(
-    &amp;self,
-    values: &amp;Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
-    value_indices: <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.usize.html">usize</a>]&gt;
-) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>, Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>)&gt;</h4></section></summa [...]
-<p>Returns <code>None</code> if no values found</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.try_new" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#89-91">source</a><h4 class="code-header">fn <a href="#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a>, props: &amp;<a class="struct" href="../../../fi [...]
+</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.try_new" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#80-82">source</a><h4 class="code-header">fn <a href="#tymethod.try_new" class="fn">try_new</a>(descr: &amp;<a class="type" href="../../../schema/typ [...]
     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"><p>Create a new <a href="trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.write" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#94">source</a><h4 class="code-header">fn <a href="#tymethod.write" class="fn">write</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.write" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#85">source</a><h4 class="code-header">fn <a href="#tymethod.write" class="fn">write</a>(
     &amp;mut self,
     values: &amp;Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     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">usize</a>
 ) -&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"><p>Write the corresponding values to this <a href="trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.write_gather" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#97">source</a><h4 class="code-header">fn <a href="#tymethod.write_gather" class="fn">write_gather</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.write_gather" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#88">source</a><h4 class="code-header">fn <a href="#tymethod.write_gather" class="fn">write_gather</a>(
     &amp;mut self,
     values: &amp;Self::<a class="associatedtype" href="trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     indices: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>]
 ) -&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"><p>Write the values at the indexes in <code>indices</code> to this <a href="trait.ColumnValueEncoder.html" title="trait parquet::column::writer::encoder::ColumnValueEncoder"><code>ColumnValueEncoder</code></a></p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.num_values" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#100">source</a><h4 class="code-header">fn <a href="#tymethod.num_values" class="fn">num_values</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 buffer [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.has_dictionary" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#103">source</a><h4 class="code-header">fn <a href="#tymethod.has_dictionary" class="fn">has_dictionary</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 true if th [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.estimated_dict_page_size" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#106">source</a><h4 class="code-header">fn <a href="#tymethod.estimated_dict_page_size" class="fn">estimated_dict_page_size</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>&l [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.estimated_data_page_size" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#109">source</a><h4 class="code-header">fn <a href="#tymethod.estimated_data_page_size" class="fn">estimated_data_page_size</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= [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.flush_dict_page" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#116">source</a><h4 class="code-header">fn <a href="#tymethod.flush_dict_page" class="fn">flush_dict_page</a>(&amp;mut self) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.num_values" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#91">source</a><h4 class="code-header">fn <a href="#tymethod.num_values" class="fn">num_values</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 buffere [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.has_dictionary" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#94">source</a><h4 class="code-header">fn <a href="#tymethod.has_dictionary" class="fn">has_dictionary</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 true if thi [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.estimated_dict_page_size" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#97">source</a><h4 class="code-header">fn <a href="#tymethod.estimated_dict_page_size" class="fn">estimated_dict_page_size</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 [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.estimated_data_page_size" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#100">source</a><h4 class="code-header">fn <a href="#tymethod.estimated_data_page_size" class="fn">estimated_data_page_size</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= [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.flush_dict_page" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#107">source</a><h4 class="code-header">fn <a href="#tymethod.flush_dict_page" class="fn">flush_dict_page</a>(&amp;mut self) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/ [...]
 <a href="trait.ColumnValueEncoder.html#tymethod.write"><code>Self::write</code></a> will not be dictionary encoded</p>
 <p>Note: <a href="trait.ColumnValueEncoder.html#tymethod.flush_data_page"><code>Self::flush_data_page</code></a> must be called first, as this will error if there
 are any pending page values</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.flush_data_page" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#119">source</a><h4 class="code-header">fn <a href="#tymethod.flush_data_page" class="fn">flush_data_page</a>(&amp;mut self) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="struct.DataPageValues.ht [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.flush_bloom_filter" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#124">source</a><h4 class="code-header">fn <a href="#tymethod.flush_bloom_filter" class="fn">flush_bloom_filter</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="st [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.flush_data_page" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#110">source</a><h4 class="code-header">fn <a href="#tymethod.flush_data_page" class="fn">flush_data_page</a>(&amp;mut self) -&gt; <a class="type" href="../../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="struct.DataPageValues.ht [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.flush_bloom_filter" class="method"><a class="src rightside" href="../../../../src/parquet/column/writer/encoder.rs.html#115">source</a><h4 class="code-header">fn <a href="#tymethod.flush_bloom_filter" class="fn">flush_bloom_filter</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="st [...]
 will <em>not</em> be tracked by the bloom filter as it is empty since. This should be called once
 near the end of encoding.</p>
-</div></details></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 id="impl-ColumnValueEncoder-for-ByteArrayEncoder" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_writer/byte_array.rs.html#387-491">source</a><a href="#impl-ColumnValueEncoder-for-ByteArrayEncoder" class="anchor">§</a><h3 class="code-header" [...]
\ No newline at end of file
+</div></details></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 id="impl-ColumnValueEncoder-for-ByteArrayEncoder" class="impl"><a class="src rightside" href="../../../../src/parquet/arrow/arrow_writer/byte_array.rs.html#388-477">source</a><a href="#impl-ColumnValueEncoder-for-ByteArrayEncoder" class="anchor">§</a><h3 class="code-header" [...]
\ No newline at end of file
diff --git a/parquet/column/writer/fn.compare_greater.html b/parquet/column/writer/fn.compare_greater.html
index 1116e4141b..a72a0332f6 100644
--- a/parquet/column/writer/fn.compare_greater.html
+++ b/parquet/column/writer/fn.compare_greater.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="Evaluate `a &gt; b` according to underlying logical type."><title>compare_greater in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font [...]
+<!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="Evaluate `a &gt; b` according to underlying logical type."><title>compare_greater in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font [...]
     descr: &amp;<a class="struct" href="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>,
     a: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>,
     b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>
diff --git a/parquet/column/writer/fn.compare_greater_byte_array_decimals.html b/parquet/column/writer/fn.compare_greater_byte_array_decimals.html
index 2b85b97d5e..099735f44b 100644
--- a/parquet/column/writer/fn.compare_greater_byte_array_decimals.html
+++ b/parquet/column/writer/fn.compare_greater_byte_array_decimals.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="Signed comparison of bytes arrays"><title>compare_greater_byte_array_decimals in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" ty [...]
+<!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="Signed comparison of bytes arrays"><title>compare_greater_byte_array_decimals in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" ty [...]
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/fn.fallback_encoding.html b/parquet/column/writer/fn.fallback_encoding.html
index 9b6f0e5ab2..61321ed7e3 100644
--- a/parquet/column/writer/fn.fallback_encoding.html
+++ b/parquet/column/writer/fn.fallback_encoding.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="Returns encoding for a column when no other encoding is provided in writer properties."><title>fallback_encoding in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff [...]
+<!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 encoding for a column when no other encoding is provided in writer properties."><title>fallback_encoding in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff [...]
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/fn.has_dictionary_support.html b/parquet/column/writer/fn.has_dictionary_support.html
index fd490b476a..3ffdba0411 100644
--- a/parquet/column/writer/fn.has_dictionary_support.html
+++ b/parquet/column/writer/fn.has_dictionary_support.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="Returns true if dictionary is supported for column writer, false otherwise."><title>has_dictionary_support in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><li [...]
+<!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 true if dictionary is supported for column writer, false otherwise."><title>has_dictionary_support in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><li [...]
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/fn.increment.html b/parquet/column/writer/fn.increment.html
index 9d09738d1a..26257631c6 100644
--- a/parquet/column/writer/fn.increment.html
+++ b/parquet/column/writer/fn.increment.html
@@ -1,3 +1,3 @@
-<!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="Try and increment the bytes from right to left."><title>increment in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/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="Try and increment the bytes from right to left."><title>increment in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/wof [...]
 <p>Returns <code>None</code> if all bytes are set to <code>u8::MAX</code>.</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/fn.increment_utf8.html b/parquet/column/writer/fn.increment_utf8.html
index fc016560d5..e26b4866b3 100644
--- a/parquet/column/writer/fn.increment_utf8.html
+++ b/parquet/column/writer/fn.increment_utf8.html
@@ -1,3 +1,3 @@
-<!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="Try and increment the the string’s bytes from right to left, returning when the result is a valid UTF8 string. Returns `None` when it can’t increment any byte."><title>increment_utf8 in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href [...]
+<!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="Try and increment the the string’s bytes from right to left, returning when the result is a valid UTF8 string. Returns `None` when it can’t increment any byte."><title>increment_utf8 in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href [...]
 is a valid UTF8 string. Returns <code>None</code> when it can’t increment any byte.</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/fn.is_nan.html b/parquet/column/writer/fn.is_nan.html
index c103d7cc1a..853b8942af 100644
--- a/parquet/column/writer/fn.is_nan.html
+++ b/parquet/column/writer/fn.is_nan.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 `is_nan` fn in crate `parquet`."><title>is_nan in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" ty [...]
\ 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 `is_nan` fn in crate `parquet`."><title>is_nan in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" ty [...]
\ No newline at end of file
diff --git a/parquet/column/writer/fn.truncate_utf8.html b/parquet/column/writer/fn.truncate_utf8.html
index 7bc5999f43..693d96a127 100644
--- a/parquet/column/writer/fn.truncate_utf8.html
+++ b/parquet/column/writer/fn.truncate_utf8.html
@@ -1,3 +1,3 @@
-<!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="Truncate a UTF8 slice to the longest prefix that is still a valid UTF8 string, while being less than `length` bytes and non-empty"><title>truncate_utf8 in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceS [...]
+<!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="Truncate a UTF8 slice to the longest prefix that is still a valid UTF8 string, while being less than `length` bytes and non-empty"><title>truncate_utf8 in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceS [...]
 while being less than <code>length</code> bytes and non-empty</p>
 </div></details></section></div></main></body></html>
\ No newline at end of file
diff --git a/parquet/column/writer/fn.update_max.html b/parquet/column/writer/fn.update_max.html
index a32e89078e..3d696c5a4b 100644
--- a/parquet/column/writer/fn.update_max.html
+++ b/parquet/column/writer/fn.update_max.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 `update_max` fn in crate `parquet`."><title>update_max in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
+<!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 `update_max` fn in crate `parquet`."><title>update_max in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
     descr: &amp;<a class="struct" href="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>,
     val: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>,
     max: &amp;mut <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;T&gt;
diff --git a/parquet/column/writer/fn.update_min.html b/parquet/column/writer/fn.update_min.html
index cae2553b65..0dd3901681 100644
--- a/parquet/column/writer/fn.update_min.html
+++ b/parquet/column/writer/fn.update_min.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 `update_min` fn in crate `parquet`."><title>update_min in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
+<!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 `update_min` fn in crate `parquet`."><title>update_min in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as=" [...]
     descr: &amp;<a class="struct" href="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>,
     val: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>,
     min: &amp;mut <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;T&gt;
diff --git a/parquet/column/writer/fn.update_stat.html b/parquet/column/writer/fn.update_stat.html
index fc6f7c2463..289fdd9231 100644
--- a/parquet/column/writer/fn.update_stat.html
+++ b/parquet/column/writer/fn.update_stat.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="Perform a conditional update of `cur`, skipping any NaN values"><title>update_stat in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="fon [...]
+<!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="Perform a conditional update of `cur`, skipping any NaN values"><title>update_stat in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="fon [...]
     descr: &amp;<a class="struct" href="../../schema/types/struct.ColumnDescriptor.html" title="struct parquet::schema::types::ColumnDescriptor">ColumnDescriptor</a>,
     val: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>,
     cur: &amp;mut <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;T&gt;,
diff --git a/parquet/column/writer/index.html b/parquet/column/writer/index.html
index 7d3e3a842e..902720a366 100644
--- a/parquet/column/writer/index.html
+++ b/parquet/column/writer/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="Contains column writer API."><title>parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../st [...]
+<!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="Contains column writer API."><title>parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../st [...]
 </div></details><h2 id="modules" class="section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="encoder/index.html" title="mod parquet::column::writer::encoder">encoder</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li></ul><h2 id="macros" class="section-header"><a href="#macros">Macros</a></h2><ul class="item-table"><li><div class="item-name"><a class="macro" href="macro.downcast_writer.html" title="macro p [...]
 supports dictionary encoding.</div></li></ul><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.compare_greater.html" title="fn parquet::column::writer::compare_greater">compare_greater</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="desc docblock-short">Evaluate <code>a &gt; b</code> according to underlying logical type.</div></li><li><div class="item-name"><a c [...]
 non-generic type to a generic column writer type <code>ColumnWriterImpl</code>.</div></li><li><div class="item-name"><a class="fn" href="fn.get_typed_column_writer_mut.html" title="fn parquet::column::writer::get_typed_column_writer_mut">get_typed_column_writer_mut</a></div><div class="desc docblock-short">Similar to <code>get_typed_column_writer</code> but returns a reference.</div></li><li><div class="item-name"><a class="fn" href="fn.get_typed_column_writer_ref.html" title="fn parquet [...]
diff --git a/parquet/column/writer/struct.GenericColumnWriter.html b/parquet/column/writer/struct.GenericColumnWriter.html
index 7c2d7bac00..286efc9201 100644
--- a/parquet/column/writer/struct.GenericColumnWriter.html
+++ b/parquet/column/writer/struct.GenericColumnWriter.html
@@ -20,11 +20,11 @@
 </details>}</code></pre><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.descr" class="structfield section-header"><a href="#structfield.descr" class="anchor field">§</a><code>descr: <a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a></code></span><span id="structfield.props" class="structfield section-header"><a href="#structfield.props"  [...]
 but we use a BTreeSet so that the output is deterministic</p>
 </div><span id="structfield.def_levels_sink" class="structfield section-header"><a href="#structfield.def_levels_sink" class="anchor field">§</a><code>def_levels_sink: <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.i16.html">i16</a>&gt;</code></span><span id="structfield.rep_levels_sink" class="structfield section-header"><a href="#str [...]
-</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-GenericColumnWriter%3C'a,+E%3E" class="impl"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#240-1092">source</a><a href="#impl-GenericColumnWriter%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, E: <a class="trait [...]
+</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-GenericColumnWriter%3C'a,+E%3E" class="impl"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#240-1076">source</a><a href="#impl-GenericColumnWriter%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, E: <a class="trait [...]
     descr: <a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a>,
     props: <a class="type" href="../../file/properties/type.WriterPropertiesPtr.html" title="type parquet::file::properties::WriterPropertiesPtr">WriterPropertiesPtr</a>,
     page_writer: <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="../page/trait.PageWriter.html" title="trait parquet::column::page::PageWriter">PageWriter</a> + 'a&gt;
-) -&gt; Self</h4></section><section id="method.write_batch_internal" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#296-389">source</a><h4 class="code-header">pub(crate) fn <a href="#method.write_batch_internal" class="fn">write_batch_internal</a>(
+) -&gt; Self</h4></section><section id="method.write_batch_internal" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#296-372">source</a><h4 class="code-header">pub(crate) fn <a href="#method.write_batch_internal" class="fn">write_batch_internal</a>(
     &amp;mut self,
     values: &amp;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     value_indices: <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.usize.html">usize</a>]&gt;,
@@ -33,7 +33,7 @@ but we use a BTreeSet so that the output is deterministic</p>
     min: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>&gt;,
     max: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>&gt;,
     distinct_count: <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.u64.html">u64</a>&gt;
-) -&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><details class="toggle method-toggle" open><summary><section id="method.write_batch" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#403-410">source</a><h4 class="code-header">pub fn <a href="#method.write_batch" 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><details class="toggle method-toggle" open><summary><section id="method.write_batch" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#386-393">source</a><h4 class="code-header">pub fn <a href="#method.write_batch" class=" [...]
     &amp;mut self,
     values: &amp;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     def_levels: <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.i16.html">i16</a>]&gt;,
@@ -47,7 +47,7 @@ actual written values may be smaller than provided values.</p>
 of the values buffer is returned.</p>
 <p>Definition and/or repetition levels can be omitted, if values are
 non-nullable and/or non-repeated.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.write_batch_with_statistics" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#419-437">source</a><h4 class="code-header">pub fn <a href="#method.write_batch_with_statistics" class="fn">write_batch_with_statistics</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="method.write_batch_with_statistics" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#402-420">source</a><h4 class="code-header">pub fn <a href="#method.write_batch_with_statistics" class="fn">write_batch_with_statistics</a>(
     &amp;mut self,
     values: &amp;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     def_levels: <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.i16.html">i16</a>]&gt;,
@@ -61,19 +61,19 @@ chunk-level statistics</p>
 for these statistics to take effect. If <a href="../../file/properties/enum.EnabledStatistics.html#variant.None" title="variant parquet::file::properties::EnabledStatistics::None"><code>EnabledStatistics::None</code></a> they will be ignored,
 and if <a href="../../file/properties/enum.EnabledStatistics.html#variant.Page" title="variant parquet::file::properties::EnabledStatistics::Page"><code>EnabledStatistics::Page</code></a> the chunk statistics will instead be computed from the
 computed page statistics</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.get_total_bytes_written" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#444-446">source</a><h4 class="code-header">pub fn <a href="#method.get_total_bytes_written" class="fn">get_total_bytes_written</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock" [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.get_total_bytes_written" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#427-429">source</a><h4 class="code-header">pub fn <a href="#method.get_total_bytes_written" class="fn">get_total_bytes_written</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock" [...]
 This value is also returned when column writer is closed.</p>
 <p>Note: this value does not include any buffered data that has not
 yet been flushed to a page.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.get_estimated_total_bytes" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#453-457">source</a><h4 class="code-header">pub(crate) fn <a href="#method.get_estimated_total_bytes" class="fn">get_estimated_total_bytes</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div cla [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.get_estimated_total_bytes" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#436-440">source</a><h4 class="code-header">pub(crate) fn <a href="#method.get_estimated_total_bytes" class="fn">get_estimated_total_bytes</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div cla [...]
 <p>Unlike <a href="struct.GenericColumnWriter.html#method.get_total_bytes_written" title="method parquet::column::writer::GenericColumnWriter::get_total_bytes_written"><code>Self::get_total_bytes_written</code></a> this includes an estimate
 of any data that has not yet been flushed to a page</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.get_total_rows_written" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#461-463">source</a><h4 class="code-header">pub fn <a href="#method.get_total_rows_written" class="fn">get_total_rows_written</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock"><p [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.get_total_rows_written" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#444-446">source</a><h4 class="code-header">pub fn <a href="#method.get_total_rows_written" class="fn">get_total_rows_written</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock"><p [...]
 This value is also returned when column writer is closed.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.get_descriptor" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#466-468">source</a><h4 class="code-header">pub fn <a href="#method.get_descriptor" class="fn">get_descriptor</a>(&amp;self) -&gt; &amp;<a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a></h4></section></summary>< [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.close" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#472-509">source</a><h4 class="code-header">pub fn <a href="#method.close" class="fn">close</a>(self) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="struct.ColumnCloseResult.html" title="struct parquet::column::writer: [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.get_descriptor" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#449-451">source</a><h4 class="code-header">pub fn <a href="#method.get_descriptor" class="fn">get_descriptor</a>(&amp;self) -&gt; &amp;<a class="type" href="../../schema/types/type.ColumnDescPtr.html" title="type parquet::schema::types::ColumnDescPtr">ColumnDescPtr</a></h4></section></summary>< [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.close" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#455-492">source</a><h4 class="code-header">pub fn <a href="#method.close" class="fn">close</a>(self) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="struct.ColumnCloseResult.html" title="struct parquet::column::writer: [...]
 Returns total bytes written, total rows written and column chunk metadata.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.write_mini_batch" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#514-596">source</a><h4 class="code-header">fn <a href="#method.write_mini_batch" class="fn">write_mini_batch</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="method.write_mini_batch" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#497-579">source</a><h4 class="code-header">fn <a href="#method.write_mini_batch" class="fn">write_mini_batch</a>(
     &amp;mut self,
     values: &amp;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.Values" title="type parquet::column::writer::encoder::ColumnValueEncoder::Values">Values</a>,
     values_offset: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
@@ -84,41 +84,41 @@ Returns total bytes written, total rows written and column chunk metadata.</p>
 ) -&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"><p>Writes mini batch of values, definition and repetition levels.
 This allows fine-grained processing of values and maintaining a reasonable
 page size.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.should_dict_fallback" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#603-608">source</a><h4 class="code-header">fn <a href="#method.should_dict_fallback" class="fn">should_dict_fallback</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 [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.should_dict_fallback" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#586-591">source</a><h4 class="code-header">fn <a href="#method.should_dict_fallback" class="fn">should_dict_fallback</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 [...]
 <p>We can only fall back if dictionary encoder is set and we have exceeded dictionary
 size.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.should_add_data_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#612-623">source</a><h4 class="code-header">fn <a href="#method.should_add_data_page" class="fn">should_add_data_page</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 [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.dict_fallback" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#627-635">source</a><h4 class="code-header">fn <a href="#method.dict_fallback" class="fn">dict_fallback</a>(&amp;mut self) -&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 [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.should_add_data_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#595-606">source</a><h4 class="code-header">fn <a href="#method.should_add_data_page" class="fn">should_add_data_page</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 [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.dict_fallback" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#610-618">source</a><h4 class="code-header">fn <a href="#method.dict_fallback" class="fn">dict_fallback</a>(&amp;mut self) -&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 [...]
 Prepares and writes dictionary and all data pages into page writer.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.update_column_offset_index" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#638-712">source</a><h4 class="code-header">fn <a href="#method.update_column_offset_index" class="fn">update_column_offset_index</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="method.update_column_offset_index" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#621-695">source</a><h4 class="code-header">fn <a href="#method.update_column_offset_index" class="fn">update_column_offset_index</a>(
     &amp;mut self,
     page_statistics: <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="struct" href="../../file/statistics/struct.ValueStatistics.html" title="struct parquet::file::statistics::ValueStatistics">ValueStatistics</a>&lt;E::<a class="associatedtype" href="encoder/trait.ColumnValueEncoder.html#associatedtype.T" title="type parquet::column::writer::encoder::ColumnValueEncoder::T">T</a>&gt;&gt;
 )</h4></section></summary><div class="docblock"><p>Update the column index and offset index when adding the data page</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.can_truncate_value" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#715-732">source</a><h4 class="code-header">fn <a href="#method.can_truncate_value" class="fn">can_truncate_value</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>Determine if  [...]
-</div></details><section id="method.truncate_min_value" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#734-743">source</a><h4 class="code-header">fn <a href="#method.truncate_min_value" class="fn">truncate_min_value</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="method.can_truncate_value" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#698-715">source</a><h4 class="code-header">fn <a href="#method.can_truncate_value" class="fn">can_truncate_value</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>Determine if  [...]
+</div></details><section id="method.truncate_min_value" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#717-726">source</a><h4 class="code-header">fn <a href="#method.truncate_min_value" class="fn">truncate_min_value</a>(
     &amp;self,
     truncation_length: <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.usize.html">usize</a>&gt;,
     data: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
-) -&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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>)</h4></section><section id="method.truncate_max_value" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#745-754">source</ [...]
+) -&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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>)</h4></section><section id="method.truncate_max_value" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#728-737">source</ [...]
     &amp;self,
     truncation_length: <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.usize.html">usize</a>&gt;,
     data: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]
-) -&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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>)</h4></section><details class="toggle method-toggle" open><summary><section id="method.add_data_page" class="method"><a class="src rightside" href="../../../src/parq [...]
+) -&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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>)</h4></section><details class="toggle method-toggle" open><summary><section id="method.add_data_page" class="method"><a class="src rightside" href="../../../src/parq [...]
 Data page is either buffered in case of dictionary encoding or written directly.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.flush_data_pages" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#898-909">source</a><h4 class="code-header">fn <a href="#method.flush_data_pages" class="fn">flush_data_pages</a>(&amp;mut self) -&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/ni [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.flush_data_pages" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#882-893">source</a><h4 class="code-header">fn <a href="#method.flush_data_pages" class="fn">flush_data_pages</a>(&amp;mut self) -&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/ni [...]
 dictionary encoding into underlying sink.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.write_column_metadata" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#912-1003">source</a><h4 class="code-header">fn <a href="#method.write_column_metadata" class="fn">write_column_metadata</a>(&amp;mut self) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="../../file/meta [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_levels_v1" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1007-1011">source</a><h4 class="code-header">fn <a href="#method.encode_levels_v1" class="fn">encode_levels_v1</a>(
+</div></details><details class="toggle method-toggle" open><summary><section id="method.write_column_metadata" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#896-987">source</a><h4 class="code-header">fn <a href="#method.write_column_metadata" class="fn">write_column_metadata</a>(&amp;mut self) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="struct" href="../../file/metad [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_levels_v1" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#991-995">source</a><h4 class="code-header">fn <a href="#method.encode_levels_v1" class="fn">encode_levels_v1</a>(
     &amp;self,
     encoding: <a class="enum" href="../../basic/enum.Encoding.html" title="enum parquet::basic::Encoding">Encoding</a>,
     levels: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>],
     max_level: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>
 ) -&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="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt; <a href="#" class="tooltip" data-notable-ty="Vec&lt;u8&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Encodes definition or repetition levels for Data Page v1.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_levels_v2" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1016-1020">source</a><h4 class="code-header">fn <a href="#method.encode_levels_v2" class="fn">encode_levels_v2</a>(&amp;self, levels: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>], max_level: <a class="primitive" href="https://doc.rust-lan [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.encode_levels_v2" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1000-1004">source</a><h4 class="code-header">fn <a href="#method.encode_levels_v2" class="fn">encode_levels_v2</a>(&amp;self, levels: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a>], max_level: <a class="primitive" href="https://doc.rust-lan [...]
 Encoding is always RLE.</p>
-</div></details><details class="toggle method-toggle" open><summary><section id="method.write_data_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1024-1033">source</a><h4 class="code-header">fn <a href="#method.write_data_page" class="fn">write_data_page</a>(&amp;mut self, page: <a class="struct" href="../page/struct.CompressedPage.html" title="struct parquet::column::page::CompressedPage">CompressedPage</a>) -&gt; <a class="type" href= [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.write_dictionary_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1037-1066">source</a><h4 class="code-header">fn <a href="#method.write_dictionary_page" class="fn">write_dictionary_page</a>(&amp;mut self) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="primitive" href="https://doc [...]
-</div></details><details class="toggle method-toggle" open><summary><section id="method.update_metrics_for_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1070-1091">source</a><h4 class="code-header">fn <a href="#method.update_metrics_for_page" class="fn">update_metrics_for_page</a>(&amp;mut self, page_spec: <a class="struct" href="../page/struct.PageWriteSpec.html" title="struct parquet::column::page::PageWriteSpec">PageWriteSpec</a>)</ [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.write_data_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1008-1017">source</a><h4 class="code-header">fn <a href="#method.write_data_page" class="fn">write_data_page</a>(&amp;mut self, page: <a class="struct" href="../page/struct.CompressedPage.html" title="struct parquet::column::page::CompressedPage">CompressedPage</a>) -&gt; <a class="type" href= [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.write_dictionary_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1021-1050">source</a><h4 class="code-header">fn <a href="#method.write_dictionary_page" class="fn">write_dictionary_page</a>(&amp;mut self) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;<a class="primitive" href="https://doc [...]
+</div></details><details class="toggle method-toggle" open><summary><section id="method.update_metrics_for_page" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1054-1075">source</a><h4 class="code-header">fn <a href="#method.update_metrics_for_page" class="fn">update_metrics_for_page</a>(&amp;mut self, page_spec: <a class="struct" href="../page/struct.PageWriteSpec.html" title="struct parquet::column::page::PageWriteSpec">PageWriteSpec</a>)</ [...]
 </div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-GenericColumnWriter%3C'a,+E%3E" class="impl"><a href="#impl-RefUnwindSafe-for-GenericColumnWriter%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, E&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/c [...]
     E: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-Sync-for-GenericColumnWriter%3C'a,+E%3E" class="impl"><a href="#impl-Sync-for-GenericColumnWriter%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a, E&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="str [...]
     E: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
diff --git a/parquet/column/writer/trait.EncodingWriteSupport.html b/parquet/column/writer/trait.EncodingWriteSupport.html
index 7dd1ca2780..15f16d6650 100644
--- a/parquet/column/writer/trait.EncodingWriteSupport.html
+++ b/parquet/column/writer/trait.EncodingWriteSupport.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="Trait to define default encoding for types, including whether or not the type supports dictionary encoding."><title>EncodingWriteSupport in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-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="Trait to define default encoding for types, including whether or not the type supports dictionary encoding."><title>EncodingWriteSupport in parquet::column::writer - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-4 [...]
     // Required method
     fn <a href="#tymethod.has_dictionary_support" class="fn">has_dictionary_support</a>(props: &amp;<a class="struct" href="../../file/properties/struct.WriterProperties.html" title="struct parquet::file::properties::WriterProperties">WriterProperties</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>;
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait to define default encoding for types, including whether or not the type
 supports dictionary encoding.</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.has_dictionary_support" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1195">source</a><h4 class="code-header">fn <a href="#tymethod.has_dictionary_support" class="fn">has_dictionary_support</a>(props: &amp;<a class=" [...]
+</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.has_dictionary_support" class="method"><a class="src rightside" href="../../../src/parquet/column/writer/mod.rs.html#1179">source</a><h4 class="code-header">fn <a href="#tymethod.has_dictionary_support" class="fn">has_dictionary_support</a>(props: &amp;<a class=" [...]
 </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"></div><script src="../../../trait.impl/parquet/column/writer/t [...]
\ No newline at end of file
diff --git a/parquet/data_type/struct.ByteArray.html b/parquet/data_type/struct.ByteArray.html
index ea5460972f..af4d7ba835 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#890-972">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-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#239">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/ [...]
 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#1155">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.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#1155">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-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#1155">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-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#1155">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 c7dd8c7dba..967cf06227 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#974-1058">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,12 +22,12 @@ 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#1022-1042">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#239">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%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 [...]
+) -&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#1022-1042">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#239">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-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 [...]
+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#239">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" 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#239">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#1155">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 [...]
diff --git a/parquet/data_type/struct.Int96.html b/parquet/data_type/struct.Int96.html
index 47f4428b33..2544462b9c 100644
--- a/parquet/data_type/struct.Int96.html
+++ b/parquet/data_type/struct.Int96.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="Rust representation for logical type INT96, value is backed by an array of `u32`. The type only takes 12 bytes, without extra padding."><title>Int96 in parquet::data_type - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regul [...]
+<!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="Rust representation for logical type INT96, value is backed by an array of `u32`. The type only takes 12 bytes, without extra padding."><title>Int96 in parquet::data_type - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regul [...]
     value: [<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">3</a>],
 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Rust representation for logical type INT96, value is backed by an array of <code>u32</code>.
 The type only takes 12 bytes, without extra padding.</p>
@@ -21,7 +21,7 @@ The type only takes 12 bytes, without extra padding.</p>
 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#239">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-for-Int96" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#36">source</a><a href="#impl-PartialOrd-for-Int96" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::Par [...]
 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#1155">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-Int96" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#530">source</a><a href="#impl-SliceAsBytes-for-Int96" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SliceAsBytes.html" title="trait parquet: [...]
+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-Int96" class="impl"><a class="src rightside" href="../../src/parquet/data_type.rs.html#530">source</a><a href="#impl-SliceAsBytes-for-Int96" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SliceAsBytes.html" title="trait parquet: [...]
     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/parquet/errors/enum.ParquetError.html b/parquet/errors/enum.ParquetError.html
index 36b0090d79..71a08c9287 100644
--- a/parquet/errors/enum.ParquetError.html
+++ b/parquet/errors/enum.ParquetError.html
@@ -16,7 +16,7 @@ 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
diff --git a/parquet/file/serialized_reader/struct.SerializedFileReader.html b/parquet/file/serialized_reader/struct.SerializedFileReader.html
index 382a43514c..38be843643 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/file/statistics/enum.Statistics.html b/parquet/file/statistics/enum.Statistics.html
index 4489dea4a9..3d36fb710b 100644
--- a/parquet/file/statistics/enum.Statistics.html
+++ b/parquet/file/statistics/enum.Statistics.html
@@ -89,7 +89,7 @@ Panics if min value is not set.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.max_bytes" class="method"><a class="src rightside" href="../../../src/parquet/file/statistics.rs.html#410-412">source</a><h4 class="code-header">pub fn <a href="#method.max_bytes" class="fn">max_bytes</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></summar [...]
 Panics if max value is not set.</p>
 </div></details><details class="toggle method-toggle" open><summary><section id="method.physical_type" class="method"><a class="src rightside" href="../../../src/parquet/file/statistics.rs.html#415-426">source</a><h4 class="code-header">pub fn <a href="#method.physical_type" class="fn">physical_type</a>(&amp;self) -&gt; <a class="enum" href="../../basic/enum.Type.html" title="enum parquet::basic::Type">Type</a></h4></section></summary><div class="docblock"><p>Returns physical type associ [...]
-</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-Statistics" class="impl"><a class="src rightside" href="../../../src/parquet/file/statistics.rs.html#290">source</a><a href="#impl-Clone-for-Statistics" class="anchor">§</a><h3 class="code-header">i [...]
+</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-Statistics" class="impl"><a class="src rightside" href="../../../src/parquet/file/statistics.rs.html#290">source</a><a href="#impl-Clone-for-Statistics" class="anchor">§</a><h3 class="code-header">i [...]
 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#239">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-StructuralPartialEq-for-Statistics" class="impl"><a class="src rightside" href="../../../src/parquet/file/statistics.rs.html#290">source</a><a href="#impl-StructuralPartialEq-for-Statistics" 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::Structur [...]
     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 0426696b59..99669c8490 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 e45e7e9863..632c76fa21 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac52 [...]
 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 889e748ab1..b2a23cbd40 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 06d78bf3e6..f956ced800 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#199-222">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#199-222">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 4321048b22..df4114440f 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#387-397">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#387-397">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 f4ec3d05be..cb3a2280ee 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#292">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#294">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#295-299">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#295-299">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 9f59282d1c..0b985105b6 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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type= [...]
+<!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><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type= [...]
     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 b631ddadfa..61b080f19c 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/enum.Field.html b/parquet/record/api/enum.Field.html
index 0c4c482914..aa8591a158 100644
--- a/parquet/record/api/enum.Field.html
+++ b/parquet/record/api/enum.Field.html
@@ -55,7 +55,7 @@ Unix epoch, 1 January 1970.</p>
     value: <a class="struct" href="../../data_type/struct.ByteArray.html" title="struct parquet::data_type::ByteArray">ByteArray</a>
 ) -&gt; <a class="type" href="../../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;Self&gt;</h4></section></summary><div class="docblock"><p>Converts Parquet BYTE_ARRAY type with converted type into a UTF8
 string, decimal, float16, or an array of bytes.</p>
-</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#701-749">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.108/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#701-749">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.108/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#239">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-StructuralPartialEq-for-Field" class="impl"><a class="src rightside" href="../../../src/parquet/record/api.rs.html#500">source</a><a href="#impl-StructuralPartialEq-for-Field" 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">St [...]
     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/record/api/struct.Row.html b/parquet/record/api/struct.Row.html
index 4e359b9690..f4b1c79536 100644
--- a/parquet/record/api/struct.Row.html
+++ b/parquet/record/api/struct.Row.html
@@ -14,9 +14,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#85-92">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.108/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#85-92">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.108/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#239">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#202-242">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#202-242">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/enum.Field.html b/parquet/record/enum.Field.html
index 4631dc2a3b..4e4db117f1 100644
--- a/parquet/record/enum.Field.html
+++ b/parquet/record/enum.Field.html
@@ -55,7 +55,7 @@ Unix epoch, 1 January 1970.</p>
     value: <a class="struct" href="../data_type/struct.ByteArray.html" title="struct parquet::data_type::ByteArray">ByteArray</a>
 ) -&gt; <a class="type" href="../errors/type.Result.html" title="type parquet::errors::Result">Result</a>&lt;Self&gt;</h4></section></summary><div class="docblock"><p>Converts Parquet BYTE_ARRAY type with converted type into a UTF8
 string, decimal, float16, or an array of bytes.</p>
-</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../src/parquet/record/api.rs.html#701-749">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.108/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#701-749">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.108/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#239">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-StructuralPartialEq-for-Field" class="impl"><a class="src rightside" href="../../src/parquet/record/api.rs.html#500">source</a><a href="#impl-StructuralPartialEq-for-Field" 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">Struc [...]
     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/record/struct.Row.html b/parquet/record/struct.Row.html
index eaea455675..01af202516 100644
--- a/parquet/record/struct.Row.html
+++ b/parquet/record/struct.Row.html
@@ -14,9 +14,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#85-92">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.108/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">Tra [...]
+</div></details><section id="method.to_json_value" class="method"><a class="src rightside" href="../../src/parquet/record/api.rs.html#85-92">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.108/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">Tra [...]
 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#239">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#202-242">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#202-242">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 bc21097c15..4613c33df7 100644
--- a/parquet/schema/types/struct.ColumnPath.html
+++ b/parquet/schema/types/struct.ColumnPath.html
@@ -18,7 +18,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#703-705">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#703-705">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#239">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_fromcsv/enum.ParquetFromCsvError.html b/parquet_fromcsv/enum.ParquetFromCsvError.html
index b06b9e25bf..2c040c5942 100644
--- a/parquet_fromcsv/enum.ParquetFromCsvError.html
+++ b/parquet_fromcsv/enum.ParquetFromCsvError.html
@@ -7,7 +7,7 @@
 }</code></pre><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.CommandLineParseError" class="variant"><a href="#variant.CommandLineParseError" class="anchor">§</a><h3 class="code-header">CommandLineParseError(Error)</h3></section><section id="variant.IoError" class="variant"><a href="#variant.IoError" class="anchor">§</a><h3 class="code-header">IoError(<a class="struct" href="https://doc.rust [...]
     inner_error: E,
     context: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>
-) -&gt; <a class="enum" href="enum.ParquetFromCsvError.html" title="enum parquet_fromcsv::ParquetFromCsvError">ParquetFromCsvError</a></h4></section></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-ParquetFromCsvError" class="impl"><a class="src rightside" href=" [...]
+) -&gt; <a class="enum" href="enum.ParquetFromCsvError.html" title="enum parquet_fromcsv::ParquetFromCsvError">ParquetFromCsvError</a></h4></section></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-ParquetFromCsvError" class="impl"><a class="src rightside" href=" [...]
     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/search-index.js b/search-index.js
index a1e69700e5..92390a3ddc 100644
--- a/search-index.js
+++ b/search-index.js
@@ -1,18 +1,18 @@
 var searchIndex = JSON.parse('{\
-"arrow":{"doc":"A complete, safe, native Rust implementation of Apache …","t":"CCCCECQQCCCEECCECCCSKPKKPKKFFIFIKKKKPIIIIPFFFIFGGTTTFIIIIIIKIIIIIIPFIIIIIIIIIIIIIFFIFFIPIIIIIIIIIIIIFFFFFIFIIITIIIIIIIIIIIIIIIIIIIIIIIIIIIIRIIIIIIIIIIPIITTFIFFFRFFFTKTFFFIFFFFKKFFIIIIPFFIIIIIIIIIIIIIIIIIIIIIIIIFFIIIIIIIIIIIIIIIIFFPTOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONMNMNOOCOOOOOOOOOOMMNNNNNNNNNNNNNNNMNMNNNHMNNMNHNHMNNMNNHMNHHHHNHMNNHMNHNHMNHNHNNHMNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOO [...]
+"arrow":{"doc":"A complete, safe, native Rust implementation of Apache …","t":"CCCCECQQCCCEECCECCCSKPKKPKKFFIFIKKKKPIIIIPFFFIFGGTTTFIIIIIIKIIIIIIPFIIIIIIIIIIIIIFFIFFIPIIIIIIIIIIIIFFFFFIFIIITIIIIIIIIIIIIIIIIIIIIIIIIIIIIRIIIIIIIIIIPIITTFIFFFRFFFTKTFFFIFFFFKKFFIIIIPFFIIIIIIIIIIIIIIIIIIIIIIIIFFIIIIIIIIIIIIIIIIFFPTOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONMNMNOOCOOOOOOOOOOMMNNNNNNNNNNNNNNNMNMNNNHMNNMNHNHMNNMNNHMNHHHHNHMNNHMNHNHMNHNHNNHMNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOO [...]
 "arrow_arith":{"doc":"Arrow arithmetic and aggregation kernels","t":"CCCCCCFFKSSFMNNNMNNNHHHHHHHQHHHHNNNNNNNNNNNNNNNMNNNNNNNNNHOHHHHMNNNHOHHHHHHHHHOHHHNNNNNNNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHPPKPRKPPGPPPKHMMMMMHMMHNNNNNQHHHHHNNNHHNHHHQHQQQHHMMMMMHMMQHNNNNQQNKHHHHHHHHHHHHHHHHHHHHMHHMHHMMHQHHHHHHHHH","n":["aggregate","arity","bitwise","boolean","numeric","temporal","MaxAccumulator","MinAccumulator","NumericAccumulator","PREFERRED_VECTOR_SIZE","PREFERRED_VECTOR_SIZE_NON_NULL","SumAccu [...]
-"arrow_array":{"doc":"The central type in Apache Arrow are arrays, which are a …","t":"KKKTTTFFFKKFTMMCCCCMOMCMMQQQQQQQQMOOMMCOMMMMMMCMMCOOCCMOMMCCCCMKTTTTMMMMMMNNNNNNNNNNMMMMMQQMMMMMMKKKIEIFIIIIFIIIIFFIIIIFFITIIIIIIIIIIIIIIRIIIIFFFKTFFIFIIIIIIIIFFIIIIIIIIFOMNNNNNNNNNNNNNNNNNNNNNCCCMNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOCONNOOCCNNMNMNHMNMNNNNNOOOOOOOOONNMOOOOOOOOOMNOOOOCNNHCOHHMCNNMNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOMNOOCHOCOOOOOMNCCMNOCMOOOOOOOOOOOOOOO [...]
+"arrow_array":{"doc":"The central type in Apache Arrow are arrays, which are a …","t":"KKKTTTFFFKKFTMMCCCCMOMCMMQQQQQQQQMOOMMCOMMMMMMCMMCOOCCMOMMCCCCMKTTTTMMMMMMNNNNNNNNNNMMMMMQQMMMMMMKKKIEIFIIIIFIIIIFFIIIIFFITIIIIIIIIIIIIIIRIIIIFFFKTFFIFIIIIIIIIFFIIIIIIIIFOMNNNNNNNNNNNNNNNNNNNNNCCCMNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOCONNOOCCNNMNMNHMNMNNNNNOOOOOOOOONNMOOOOOOOOOMNOOOOCNNHCOHHMCNNMNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOMNOOCHOCOOOOOMNCCMNOCMOOOOOOOOOOOOOOO [...]
 "arrow_avro":{"doc":"Convert data to / from the Apache Arrow memory format and …","t":"CCCPSGPPPPPNNNNNNNNNNNNNCCHHCFFGPPPPPNNNNNNOOONNNNNNNNNNONNNOONNNNNNNNNOPPPFFGPPSPPPPNNNNNNONNNNNNNNNNNNNNNOOOONONOONNNNNNNONNNOFNNNNNONNONNNFPFPPPGPFPFFPPPPFPPPGFPPSGPFPGPPPOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNOOONNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOONNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNO","n":["compression","reader","s [...]
 "arrow_buffer":{"doc":"Low-level buffer abstractions for Apache Arrow Rust","t":"KKCMCCCCCCCCMOFOCMMMMCSKPGPCNNNNNNNNSGPPTTTTFTNNNNNNNNNNNNNNNNNNNNNNNNNNNNQQCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOFNNNNNONNNNHNHNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFHHHNNNNHHHHNHHHNHHNNNFFFIOOOOOOOOOOOOOOOFFFOOOOOOOOOOHHHHHHHHHHHFFFFFFFHHHCOOOHHHHOOCOOOOOCCOCOOCOOCOCFNNNNNNONNNNNNNNNNNNNNNNNNNONNNNNONNNNNNNNNNNNFNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNFFNNNNNNNNNNNHONNNNNNNNNNNNNNNNNNNNNNNNNNONOOONNNNNN [...]
-"arrow_cast":{"doc":"Cast kernel for Apache Arrow","t":"CCCCCSSSSRRKHHMNNNNNNNFKHHHNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHNNHHNHNNNNONMNNHHHHHHHOHHMMNNNHNHHFFPKKGPIPGFIPPPPPRIFOHHNNNNNNNNNNNNNNNNHOOQNQQONNNNNNNNNOONNNNNNNNNNONNNNNNHHNOOMQOOOQOQOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNHHPPPSSPSFFFGPPPPISSSSPKPFPPNNNNNNNNNNNNNNNNONOONNNNONNNNNNNONNNNNOOONNNMNHHNHHHHHQHHHHNNNNNNHNNNNNNNNNNNNNNNNHHHHHHHH","n":["base64","cast","display","parse","pretty","BASE64_STANDARD","BASE64_STANDARD_NO_PAD" [...]
-"arrow_csv":{"doc":"Transfer data between the Arrow memory format and CSV …","t":"EEEEEHCCIFFFFPFFIFPOOONNNNNNNNNNNNNNONHNHNNHNHHNNNNNNNNOONNNONOONNNNNNONNNNNNNNOHHNHNNNNNNNNNONNOOOHHOOONOOOCNNNOOONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSSFFFNNNNNNNNNOOOOONONNNNNNNNNNNNNNNNONOOOOOOOONNNNNNNNNNSFFONNNNNNNNNOONOONNONNNNOONNNNNNNOONOONOOOONNNNNNNNNNNNNNNNNO","n":["Reader","ReaderBuilder","Writer","WriterBuilder","infer_schema_from_files","map_csv_error","reader","writer","Bounds","BufRead [...]
+"arrow_cast":{"doc":"Cast kernel for Apache Arrow","t":"CCCCCSSSSRRKHHMNNNNNNNFKHHHNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHNNHHNHNNNNONMNNHHHHHHHOHHMMNNNHNHHFFPKKGPIPGFIPPPPPRIFOHHNNNNNNNNNNNNNNNNHOOQNQQONNNNNNNNNOONNNNNNNNNNONNNNNNHHNOOMQOOOQOQOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNHHPPPSSPSFFFGPPPPISSSSPKPFPPNNNNNNNNNNNNNNNNONOONNNNONNNNNNNONNNNNOOONNNMNHHNHHHHHQHHHHNNNNNNHNNNNNNNNNNNNNNNNHHHHHHHH","n":["base64","cast","display","parse","pretty","BASE64_STANDARD","BASE64_STANDARD_NO_PAD" [...]
+"arrow_csv":{"doc":"Transfer data between the Arrow memory format and CSV …","t":"EEEEEHCCIFFFFPFFIFPOOONNNNNNNNNNNNNNONHNHNNHNHHNNNNNNNNOONNNONOONNNNNNONNNNNNNNOHHNHNNNNNNNNNONNOOOHHOOONOOOCNNNOOONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSSFFFNNNNNNNNNOOOOONONNNNNNNNNNNNNNNNONOOOOOOOONNNNNNNNNNSFFONNNNNNNNNOONOONNONNNNOONNNNNNNOONOONOOOONNNNNNNNNNNNNNNNNO","n":["Reader","ReaderBuilder","Writer","WriterBuilder","infer_schema_from_files","map_csv_error","reader","writer","Bounds","BufRead [...]
 "arrow_data":{"doc":"Low-level array data abstractions for Apache Arrow Rust","t":"PFFIPGFPPOCCOOOOOOCOOCCCHOOOOOOOOOOCOOFFFNNNNNNOOOOOOONNNNNNNNNNNOOONNNNNNNHNNNNNNNNNHPFFIPGFPPNNNONNNNNNNNNNNOOONNNNNONNNNOONNHHNNOONNNNNNNNNNNNNNNNNNNNNHNNNNHNNOONNHNNNNNNONNONNOONNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOSSSSSSSSSHHCCHHHCCCCCCCCCCHHHHHHHSHHHHHHHHHHHHHFFHNNNNNOOONOONOONNNNNNNNNNNOOONNONNNOOOHNNNNNNPPGPIIIPFPFOCNNNNNNOOHHHHONNOOONONOOCCNNNNNNNNNNNNNNOCNCNONOHCCNNNNNNNNNNCCCNHHHHHHHHHHHHHHHHHHH [...]
 "arrow_file_to_stream":{"doc":"","t":"FNNNNNNONNNNNNHNNNNNN","n":["Args","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","file_name","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","into","main","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip"],"q":[[0,"arrow_file_to_stream"],[21,"clap_builder::builder::command"],[22,"core::fmt"],[23,"core::fmt"],[24,"clap_builder"],[25,"core::re [...]
-"arrow_flight":{"doc":"A native Rust implementation of Apache Arrow Flight for …","t":"FFIFFFPEFFFFFFFFPFFFFFOOOONNNNCOOOCNNOCOCOCOOHHCCNNNCNNNNHONOOOOOOOOOOHCOOOOCNNNNNOOONNOOCNNFNNNNNNNNNNNNNONNNNNNNNONNNNNNNFGFFFPPPNNNNNNNNNNNOONNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNONNONNOONONNNNNNNNNNNNNNNNNNNNNNNNGFFFSPPOONNNNNNNNNONOOOOOONNNNONNNNNNNHONNNNNNNNNOONNNOONHHONNOOHNNNNNNNNNNNNNNNNNNNNNNNPPPPGPPPIPNNNNNNNNNNNNNNNNNPGPPFORRRRKFRRROMMMMMMMOMMOOOFFFFFFFFFFFFFFFFOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNN [...]
+"arrow_flight":{"doc":"A native Rust implementation of Apache Arrow Flight for …","t":"FFIFFFPEFFFFFFFFPFFFFFOOOONNNNCOOOCNNOCOCOCOOHHCCNNNCNNNNHONOOOOOOOOOOHCOOOOCNNNNNOOONNOOCNNFNNNNNNNNNNNNNONNNNNNNNONNNNNNNFGFFFPPPNNNNNNNNNNNOONNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNONNONNOONONNNNNNNNNNNNNNNNNNNNNNNNGFFFSPPOONNNNNNNNNONOOOOOONNNNONNNNNNNHONNNNNNNNNOONNNOONHHONNOOHNNNNNNNNNNNNNNNNNNNNNNNPPPPGPPPIPNNNNNNNNNNNNNNNNNPGPPFORRRRKFRRROMMMMMMMOMMOOOFFFFFFFFFFFFFFFFOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNN [...]
 "arrow_integration_test":{"doc":"Support for the Apache Arrow JSON test data format","t":"FFFFFFFFHOONNNNNNNNNNNNNNNNOONNNNNNOOOHOOHHCNNNNNNNNOOHNNNCHHOONNNNNNNNNNNNNNNNNNNNOOONNNNNNNNOOOOOOOOOHCOHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNHHHHFNNNNHNOHHNNNON","n":["ArrowJson","ArrowJsonBatch","ArrowJsonColumn","ArrowJsonDictionaryBatch","ArrowJsonField","ArrowJsonFieldDictionary","ArrowJsonSchema","DictionaryIndexType","array_from_json","batches","bit_width","borrow","borrow","borr [...]
 "arrow_integration_testing":{"doc":"Common code used in the integration test binaries","t":"SSFOHHHHHNNHHHHHHOCCNNNHNNHHONNNNCCCIPIPIHOHIPIPIHOHHHHHHPIPIHHPIPICHCHCFPIFPIINNNNNNNNNNNNNNNNNNNNNNNNONOOHNNNNNNNONNPIFFPIINNNNONNNNNHNNNNNNNNNNNNNNNNNNNHHHOHONNNNNNNNONNPIFPIINNNNNNNNNNNNNNNNNNHNNNNN","n":["AUTH_PASSWORD","AUTH_USERNAME","ArrowFile","arrow_json","arrow_rs_cdata_integration_export_batch_from_json","arrow_rs_cdata_integration_export_schema_from_json","arrow_rs_cdata_integration_i [...]
-"arrow_ipc":{"doc":"Support for the Arrow IPC Format","t":"SSCCCCCGSSPPNNNNNHNHNHNHNNNNNNHNNNNNFNNHOHNHHHNHHHNNHHONOCCCCCFFFFGTTTTTONNNNNNNNNNNNNNNNNNNNNNONNNONNONHHNNNNNNNNNNNNNNNNNNNNNNOHHHNNNONNNHHHONNNNNNNNNNNNNNNNNNOTFFFFGFFTFFGTTTSSSTTTSSSTTTSSSFTFFFFFGTFTFFGTTTTTTTTTTTTTTTTTTOOOONNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNONONNNNNONONNNNNNNNNNNNNNNNNNNNNNOOOONNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNO [...]
-"arrow_json":{"doc":"Transfer data between the Arrow memory format and JSON …","t":"EKEEEEEMQCCKFFFFOOCNNNNNNNNNOCMNOONNNNNNHHHNNNNOOOCHCONNNCCQNOOOCNOONCOCCCOCNNNNNNNNNNNNFNNNNNNNNNFNNNNNNOOONNNFNNONONNONONNNFNNONNNOONNNNOFNNNNNNNNNKFNNONNNNMOQNNNPPGPPFNNNNNNHHNNNNHHHHHHHHHHNNNNOHONNNOOHNNNNNNNFFFFNNNNNNNNONONNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNSFSNNONNNNONNNFNNONONNONOHNNNFPGPPPPPPPPPPGPPPPPPPPPPFFGPPPPNNNNNONNNNNNNNNNNNNOHNNNNNNNONNOONNNNHNNNNNNNNNN [...]
+"arrow_ipc":{"doc":"Support for the Arrow IPC Format","t":"SSCCCCCGSSPPNNNNNHNHNHNHNNNNNNHNNNNNFNNHOHNHHHNHHHNNHHONOCCCCCFFFFGTTTTTONNNNNNNNNNNNNNNNNNNNNNONNNONNONHHNNNNNNNNNNNNNNNNNNNNNNOHHHNNNONNNHHHONNNNNNNNNNNNNNNNNNOTFFFFGFFTFFGTTTSSSTTTSSSTTTSSSFTFFFFFGTFTFFGTTTTTTTTTTTTTTTTTTOOOONNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNONONNNNNONONNNNNNNNNNNNNNNNNNNNNNOOOONNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNO [...]
+"arrow_json":{"doc":"Transfer data between the Arrow memory format and JSON …","t":"EKEEEEEMQCCKFFFFOOCNNNNNNNNNOCMNOONNNNNNHHHNNNNOOOCHCONNNCCQNOOOCNOONCOCCCOCNNNNNNNNNNNNFNNNNNNNNNFNNNNNNOOONNNFNNONONNONONNNFNNONNNOONNNNOFNNNNNNNNNKFNNONNNNMOQNNNPPGPPFNNNNNNHHNNNNHHHHHHHHHHNNNNOHONNNOOHNNNNNNNFFFFNNNNNNNNONONNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNSFSNNONNNNONNNFNNONONNONOHNNNFPGPPPPPPPPPPGPPPPPPPPPPFFGPPPPNNNNNONNNNNNNNNNNNNOHNNNNNNNONNOONNNNHNNNNNNNNNN [...]
 "arrow_json_integration_test":{"doc":"","t":"FPPGPOHNNNNNNNNNNNNNNNNNNONNNNOHHONNNNNNNNNNHNONN","n":["Args","ArrowToJson","JsonToArrow","Mode","Validate","arrow","arrow_to_json","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","integration","into","into","into_request","into_request","json","json_to_arrow","main" [...]
 "arrow_ord":{"doc":"Arrow ordering kernels","t":"CCCCCKPPPPRPPPPGHHHNNNNHHHHNNNHHNMMMHHHHHNNNNNNMIHHHHHFNNNNHNNNNNHHNNNNNHHHHFIFFNNNNNNHNNNNNNONONNNNNNNNNNNNHHNOONHHHHHHHHHHHHHHHHHHHNNNNNNNNNNNNO","n":["cmp","ord","partition","rank","sort","ArrayOrd","Distinct","Equal","Greater","GreaterEqual","Item","Less","LessEqual","NotDistinct","NotEqual","Op","apply","apply_op","apply_op_vectored","borrow","borrow_mut","clone","clone_into","collect_bool","compare_op","distinct","eq","fmt","fmt","fr [...]
 "arrow_row":{"doc":"A comparable row-oriented representation of a collection …","t":"GPPGPPFFFFFFFFPPPPNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNOOOOONNNOOOHQNHHNONNNNNNNNNOOCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNHNOONNNNNNNNHONNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOCTRKKMHHHHHHMHQQHMHHHHHHSSSSSSHHHHHHHHH","n":["Codec","Dictionary","Dictionary","Encoder","List","List","OwnedRow","Row","RowConfig","RowConverter","RowParser","Rows","RowsIter","SortField","Stateless","Stateless","Struct", [...]
@@ -24,11 +24,11 @@ var searchIndex = JSON.parse('{\
 "flight_test_integration_client":{"doc":"","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 [...]
 "flight_test_integration_server":{"doc":"","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_poss [...]
 "gen":{"doc":"","t":"HH","n":["main","prost_config"],"q":[[0,"gen"],[2,"core::error"],[3,"alloc::boxed"],[4,"core::result"],[5,"prost_build"]],"d":["",""],"i":[0,0],"f":[[[],[[4,[1,[3,[2]]]]]],[[],5]],"c":[],"p":[[1,"tuple"],[10,"Error",2],[5,"Box",3],[6,"Result",4],[5,"Config",5]],"b":[]},\
-"parquet":{"doc":"This crate contains the official Native Rust …","t":"CCCCCCQCCCCCSEEFSEFNCHCCCNNNNCNNNNCONNNNNNNNOOHHHCNNNNNNNNNKFFFFFIFFFKFFHOOOONNNNNNNNNNNNNNNNNNNMNONMHOOOOCOONNNNNNNNNOONNNNNNNNOONNNNOOOOONNNNNNNNNNMNOOONNOMOOOOOOOOOONNNOOOOCOOOOHOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFFNNNNMNONNNNNNOMNONNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNONNONNONNNNNNNNNNFFFFGFFFFPPIONNONNNNNNNNNNNNNNNNNNOOCONNNNNOHOONNNNNNNNNNNNNNNNNHHNHHHNHHHHNONNNNNNNNNNNNNOCONOONNNONNNNNNNNNNNNNNNNNNNNNNNNN [...]
+"parquet":{"doc":"This crate contains the official Native Rust …","t":"CCCCCCQCCCCCSEEFSEFNCHCCCNNNNCNNNNCONNNNNNNNOOHHHCNNNNNNNNNKFFFFFIFFFKFFHOOOONNNNNNNNNNNNNNNNNNNMNONMHOOOOCOONNNNNNNNNOONNNNNNNNOONNNNOOOOONNNNNNNNNNMNOOONNOMOOOOOOOOOONNNOOOOCOOOOHOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKFFNNNNMNONNNNNNOMNONNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNONNONNONNNNNNNNNNFFFFGFFFFPPIONNONNNNNNNNNNNNNNNNNNOOCONNNNNOHOONNNNNNNNNNNNNNNNNHHNHHHNHHHHNONNNNNNNNNNNNNOCONOONNNONNNNNNNNNNNNNNNNNNNNNNNNN [...]
 "parquet_concat":{"doc":"Binary that concatenates the column data of one or more …","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"], [...]
 "parquet_derive":{"doc":"","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","fm [...]
 "parquet_derive_test":{"doc":"","t":"FFOOOOONNNNOOOOOOOOOONOONNNOOOONNOOOOOOOOOOOOOONNNNNNOO","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", [...]
-"parquet_fromcsv":{"doc":"Binary file to converts csv to Parquet file","t":"FPPPPPGPPPGGPPHNNONNNNNNNNNNNNNNHHHHOOOONNONNNNNNNNNNNNNNNNNNNNOOOONNNNHOOOOOONNNNNNNNNNNNNNNNNNNNNNNOH","n":["Args","ArrowError","CR","CommandLineParseError","Crlf","Csv","CsvDialect","IoError","LF","ParquetError","ParquetFromCsvError","RecordTerminator","Tsv","WithContext","arrow_schema_from_string","augment_args","augment_args_for_update","batch_size","borrow","borrow","borrow","borrow","borrow_mut","borrow_mu [...]
+"parquet_fromcsv":{"doc":"Binary file to converts csv to Parquet file","t":"FPPPPPGPPPGGPPHNNONNNNNNNNNNNNNNHHHHOOOONNONNNNNNNNNNNNNNNNNNNNOOOONNNNHOOOOOONNNNNNNNNNNNNNNNNNNNNNNOH","n":["Args","ArrowError","CR","CommandLineParseError","Crlf","Csv","CsvDialect","IoError","LF","ParquetError","ParquetFromCsvError","RecordTerminator","Tsv","WithContext","arrow_schema_from_string","augment_args","augment_args_for_update","batch_size","borrow","borrow","borrow","borrow","borrow_mut","borrow_mu [...]
 "parquet_index":{"doc":"Binary that prints the [page index] of a parquet file","t":"FNNNNONNHONNNNNNHHNNNNNN","n":["Args","augment_args","augment_args_for_update","borrow","borrow_mut","column","command","command_for_update","compute_row_counts","file","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","into","main","print_index","run","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut"],"q":[[0,"parquet_index"],[24,"clap_builder::builde [...]
 "parquet_layout":{"doc":"Binary that prints the physical layout of a parquet file","t":"FFFFFNNNNNNNNNNNNONNOHOHHOONNNNNNNNNNNNNOOOONNNNNHOOOOOHOONNNNNNNNNNNNNNNNNNNNONN","n":["Args","ColumnChunk","Page","ParquetFile","RowGroup","augment_args","augment_args_for_update","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","columns","command","command_for_update","compressed_bytes","compression","compression","do_layout","encoding"," [...]
 "parquet_read":{"doc":"Binary file to read data from a Parquet file.","t":"FNNNNNNONNNNNNOHOHNNNNN","n":["Args","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","file_name","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","into","json","main","num_records","print_row","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut"],"q":[[0,"parquet_read"],[23,"clap_builder::builder::command"],[24,"core: [...]
diff --git a/settings.html b/settings.html
index 6edb3dc85e..87b4441085 100644
--- a/settings.html
+++ b/settings.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="Settings of Rustdoc"><title>Settings</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843ffd [...]
\ 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="Settings of Rustdoc"><title>Settings</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843ffd [...]
\ No newline at end of file
diff --git a/src/parquet/arrow/array_reader/byte_array.rs.html b/src/parquet/arrow/array_reader/byte_array.rs.html
index 4e22b85285..b6786ee852 100644
--- a/src/parquet/arrow/array_reader/byte_array.rs.html
+++ b/src/parquet/arrow/array_reader/byte_array.rs.html
@@ -715,20 +715,6 @@
 <a href="#715" id="715">715</a>
 <a href="#716" id="716">716</a>
 <a href="#717" id="717">717</a>
-<a href="#718" id="718">718</a>
-<a href="#719" id="719">719</a>
-<a href="#720" id="720">720</a>
-<a href="#721" id="721">721</a>
-<a href="#722" id="722">722</a>
-<a href="#723" id="723">723</a>
-<a href="#724" id="724">724</a>
-<a href="#725" id="725">725</a>
-<a href="#726" id="726">726</a>
-<a href="#727" id="727">727</a>
-<a href="#728" id="728">728</a>
-<a href="#729" id="729">729</a>
-<a href="#730" id="730">730</a>
-<a href="#731" id="731">731</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
@@ -750,7 +736,6 @@
 <span class="kw">use </span><span class="kw">crate</span>::arrow::buffer::bit_util::sign_extend_be;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::buffer::offset_buffer::OffsetBuffer;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::decoder::{DeltaByteArrayDecoder, DictIndexDecoder};
-<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::ScalarValue;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::GenericRecordReader;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::schema::parquet_to_arrow_field;
 <span class="kw">use </span><span class="kw">crate</span>::basic::{ConvertedType, Encoding};
@@ -808,7 +793,7 @@
 }
 
 <span class="doccomment">/// An [`ArrayReader`] for variable length byte arrays
-</span><span class="kw">struct </span>ByteArrayReader&lt;I: ScalarValue&gt; {
+</span><span class="kw">struct </span>ByteArrayReader&lt;I: OffsetSizeTrait&gt; {
     data_type: ArrowType,
     pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;,
     def_levels_buffer: <span class="prelude-ty">Option</span>&lt;Buffer&gt;,
@@ -816,14 +801,11 @@
     record_reader: GenericRecordReader&lt;OffsetBuffer&lt;I&gt;, ByteArrayColumnValueDecoder&lt;I&gt;&gt;,
 }
 
-<span class="kw">impl</span>&lt;I: ScalarValue&gt; ByteArrayReader&lt;I&gt; {
+<span class="kw">impl</span>&lt;I: OffsetSizeTrait&gt; ByteArrayReader&lt;I&gt; {
     <span class="kw">fn </span>new(
         pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;,
         data_type: ArrowType,
-        record_reader: GenericRecordReader&lt;
-            OffsetBuffer&lt;I&gt;,
-            ByteArrayColumnValueDecoder&lt;I&gt;,
-        &gt;,
+        record_reader: GenericRecordReader&lt;OffsetBuffer&lt;I&gt;, ByteArrayColumnValueDecoder&lt;I&gt;&gt;,
     ) -&gt; <span class="self">Self </span>{
         <span class="self">Self </span>{
             data_type,
@@ -835,7 +817,7 @@
     }
 }
 
-<span class="kw">impl</span>&lt;I: OffsetSizeTrait + ScalarValue&gt; ArrayReader <span class="kw">for </span>ByteArrayReader&lt;I&gt; {
+<span class="kw">impl</span>&lt;I: OffsetSizeTrait&gt; ArrayReader <span class="kw">for </span>ByteArrayReader&lt;I&gt; {
     <span class="kw">fn </span>as_any(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; <span class="kw-2">&amp;</span><span class="kw">dyn </span>Any {
         <span class="self">self
     </span>}
@@ -898,15 +880,13 @@
 }
 
 <span class="doccomment">/// A [`ColumnValueDecoder`] for variable length byte arrays
-</span><span class="kw">struct </span>ByteArrayColumnValueDecoder&lt;I: ScalarValue&gt; {
+</span><span class="kw">struct </span>ByteArrayColumnValueDecoder&lt;I: OffsetSizeTrait&gt; {
     dict: <span class="prelude-ty">Option</span>&lt;OffsetBuffer&lt;I&gt;&gt;,
     decoder: <span class="prelude-ty">Option</span>&lt;ByteArrayDecoder&gt;,
     validate_utf8: bool,
 }
 
-<span class="kw">impl</span>&lt;I: OffsetSizeTrait + ScalarValue&gt; ColumnValueDecoder
-    <span class="kw">for </span>ByteArrayColumnValueDecoder&lt;I&gt;
-{
+<span class="kw">impl</span>&lt;I: OffsetSizeTrait&gt; ColumnValueDecoder <span class="kw">for </span>ByteArrayColumnValueDecoder&lt;I&gt; {
     <span class="kw">type </span>Slice = OffsetBuffer&lt;I&gt;;
 
     <span class="kw">fn </span>new(desc: <span class="kw-2">&amp;</span>ColumnDescPtr) -&gt; <span class="self">Self </span>{
@@ -1006,17 +986,15 @@
                 num_values,
                 validate_utf8,
             )),
-            Encoding::RLE_DICTIONARY | Encoding::PLAIN_DICTIONARY =&gt; {
-                ByteArrayDecoder::Dictionary(ByteArrayDecoderDictionary::new(
-                    data, num_levels, num_values,
-                ))
-            }
+            Encoding::RLE_DICTIONARY | Encoding::PLAIN_DICTIONARY =&gt; ByteArrayDecoder::Dictionary(
+                ByteArrayDecoderDictionary::new(data, num_levels, num_values),
+            ),
             Encoding::DELTA_LENGTH_BYTE_ARRAY =&gt; ByteArrayDecoder::DeltaLength(
                 ByteArrayDecoderDeltaLength::new(data, validate_utf8)<span class="question-mark">?</span>,
             ),
-            Encoding::DELTA_BYTE_ARRAY =&gt; ByteArrayDecoder::DeltaByteArray(
-                ByteArrayDecoderDelta::new(data, validate_utf8)<span class="question-mark">?</span>,
-            ),
+            Encoding::DELTA_BYTE_ARRAY =&gt; {
+                ByteArrayDecoder::DeltaByteArray(ByteArrayDecoderDelta::new(data, validate_utf8)<span class="question-mark">?</span>)
+            }
             <span class="kw">_ </span>=&gt; {
                 <span class="kw">return </span><span class="prelude-val">Err</span>(<span class="macro">general_err!</span>(
                     <span class="string">"unsupported encoding for byte array: {}"</span>,
@@ -1029,7 +1007,7 @@
     }
 
     <span class="doccomment">/// Read up to `len` values to `out` with the optional dictionary
-    </span><span class="kw">pub fn </span>read&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    </span><span class="kw">pub fn </span>read&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         out: <span class="kw-2">&amp;mut </span>OffsetBuffer&lt;I&gt;,
         len: usize,
@@ -1038,8 +1016,8 @@
         <span class="kw">match </span><span class="self">self </span>{
             ByteArrayDecoder::Plain(d) =&gt; d.read(out, len),
             ByteArrayDecoder::Dictionary(d) =&gt; {
-                <span class="kw">let </span>dict = dict
-                    .ok_or_else(|| <span class="macro">general_err!</span>(<span class="string">"missing dictionary page for column"</span>))<span class="question-mark">?</span>;
+                <span class="kw">let </span>dict =
+                    dict.ok_or_else(|| <span class="macro">general_err!</span>(<span class="string">"missing dictionary page for column"</span>))<span class="question-mark">?</span>;
 
                 d.read(out, dict, len)
             }
@@ -1049,7 +1027,7 @@
     }
 
     <span class="doccomment">/// Skip `len` values
-    </span><span class="kw">pub fn </span>skip&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    </span><span class="kw">pub fn </span>skip&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         len: usize,
         dict: <span class="prelude-ty">Option</span>&lt;<span class="kw-2">&amp;</span>OffsetBuffer&lt;I&gt;&gt;,
@@ -1057,8 +1035,8 @@
         <span class="kw">match </span><span class="self">self </span>{
             ByteArrayDecoder::Plain(d) =&gt; d.skip(len),
             ByteArrayDecoder::Dictionary(d) =&gt; {
-                <span class="kw">let </span>dict = dict
-                    .ok_or_else(|| <span class="macro">general_err!</span>(<span class="string">"missing dictionary page for column"</span>))<span class="question-mark">?</span>;
+                <span class="kw">let </span>dict =
+                    dict.ok_or_else(|| <span class="macro">general_err!</span>(<span class="string">"missing dictionary page for column"</span>))<span class="question-mark">?</span>;
 
                 d.skip(dict, len)
             }
@@ -1094,7 +1072,7 @@
         }
     }
 
-    <span class="kw">pub fn </span>read&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    <span class="kw">pub fn </span>read&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         output: <span class="kw-2">&amp;mut </span>OffsetBuffer&lt;I&gt;,
         len: usize,
@@ -1123,8 +1101,7 @@
             <span class="kw">if </span><span class="self">self</span>.offset + <span class="number">4 </span>&gt; buf.len() {
                 <span class="kw">return </span><span class="prelude-val">Err</span>(ParquetError::EOF(<span class="string">"eof decoding byte array"</span>.into()));
             }
-            <span class="kw">let </span>len_bytes: [u8; <span class="number">4</span>] =
-                buf[<span class="self">self</span>.offset..<span class="self">self</span>.offset + <span class="number">4</span>].try_into().unwrap();
+            <span class="kw">let </span>len_bytes: [u8; <span class="number">4</span>] = buf[<span class="self">self</span>.offset..<span class="self">self</span>.offset + <span class="number">4</span>].try_into().unwrap();
             <span class="kw">let </span>len = u32::from_le_bytes(len_bytes);
 
             <span class="kw">let </span>start_offset = <span class="self">self</span>.offset + <span class="number">4</span>;
@@ -1155,8 +1132,7 @@
             <span class="kw">if </span><span class="self">self</span>.offset + <span class="number">4 </span>&gt; buf.len() {
                 <span class="kw">return </span><span class="prelude-val">Err</span>(ParquetError::EOF(<span class="string">"eof decoding byte array"</span>.into()));
             }
-            <span class="kw">let </span>len_bytes: [u8; <span class="number">4</span>] =
-                buf[<span class="self">self</span>.offset..<span class="self">self</span>.offset + <span class="number">4</span>].try_into().unwrap();
+            <span class="kw">let </span>len_bytes: [u8; <span class="number">4</span>] = buf[<span class="self">self</span>.offset..<span class="self">self</span>.offset + <span class="number">4</span>].try_into().unwrap();
             <span class="kw">let </span>len = u32::from_le_bytes(len_bytes) <span class="kw">as </span>usize;
             skip += <span class="number">1</span>;
             <span class="self">self</span>.offset = <span class="self">self</span>.offset + <span class="number">4 </span>+ len;
@@ -1193,7 +1169,7 @@
         })
     }
 
-    <span class="kw">fn </span>read&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    <span class="kw">fn </span>read&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         output: <span class="kw-2">&amp;mut </span>OffsetBuffer&lt;I&gt;,
         len: usize,
@@ -1260,7 +1236,7 @@
         })
     }
 
-    <span class="kw">fn </span>read&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    <span class="kw">fn </span>read&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         output: <span class="kw-2">&amp;mut </span>OffsetBuffer&lt;I&gt;,
         len: usize,
@@ -1295,7 +1271,7 @@
         }
     }
 
-    <span class="kw">fn </span>read&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    <span class="kw">fn </span>read&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         output: <span class="kw-2">&amp;mut </span>OffsetBuffer&lt;I&gt;,
         dict: <span class="kw-2">&amp;</span>OffsetBuffer&lt;I&gt;,
@@ -1307,15 +1283,11 @@
         }
 
         <span class="self">self</span>.decoder.read(len, |keys| {
-            output.extend_from_dictionary(
-                keys,
-                dict.offsets.as_slice(),
-                dict.values.as_slice(),
-            )
+            output.extend_from_dictionary(keys, dict.offsets.as_slice(), dict.values.as_slice())
         })
     }
 
-    <span class="kw">fn </span>skip&lt;I: OffsetSizeTrait + ScalarValue&gt;(
+    <span class="kw">fn </span>skip&lt;I: OffsetSizeTrait&gt;(
         <span class="kw-2">&amp;mut </span><span class="self">self</span>,
         dict: <span class="kw-2">&amp;</span>OffsetBuffer&lt;I&gt;,
         to_skip: usize,
diff --git a/src/parquet/arrow/array_reader/byte_array_dictionary.rs.html b/src/parquet/arrow/array_reader/byte_array_dictionary.rs.html
index 0bf22be903..0656ad3c3b 100644
--- a/src/parquet/arrow/array_reader/byte_array_dictionary.rs.html
+++ b/src/parquet/arrow/array_reader/byte_array_dictionary.rs.html
@@ -667,19 +667,6 @@
 <a href="#667" id="667">667</a>
 <a href="#668" id="668">668</a>
 <a href="#669" id="669">669</a>
-<a href="#670" id="670">670</a>
-<a href="#671" id="671">671</a>
-<a href="#672" id="672">672</a>
-<a href="#673" id="673">673</a>
-<a href="#674" id="674">674</a>
-<a href="#675" id="675">675</a>
-<a href="#676" id="676">676</a>
-<a href="#677" id="677">677</a>
-<a href="#678" id="678">678</a>
-<a href="#679" id="679">679</a>
-<a href="#680" id="680">680</a>
-<a href="#681" id="681">681</a>
-<a href="#682" id="682">682</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
@@ -709,10 +696,8 @@
 
 <span class="kw">use </span><span class="kw">crate</span>::arrow::array_reader::byte_array::{ByteArrayDecoder, ByteArrayDecoderPlain};
 <span class="kw">use </span><span class="kw">crate</span>::arrow::array_reader::{read_records, skip_records, ArrayReader};
-<span class="kw">use </span><span class="kw">crate</span>::arrow::buffer::{
-    dictionary_buffer::DictionaryBuffer, offset_buffer::OffsetBuffer,
-};
-<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::{BufferQueue, ScalarValue};
+<span class="kw">use </span><span class="kw">crate</span>::arrow::buffer::{dictionary_buffer::DictionaryBuffer, offset_buffer::OffsetBuffer};
+<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::BufferQueue;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::GenericRecordReader;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::schema::parquet_to_arrow_field;
 <span class="kw">use </span><span class="kw">crate</span>::basic::{ConvertedType, Encoding};
@@ -805,7 +790,7 @@
 <span class="doccomment">/// An [`ArrayReader`] for dictionary encoded variable length byte arrays
 ///
 /// Will attempt to preserve any dictionary encoding present in the parquet data
-</span><span class="kw">struct </span>ByteArrayDictionaryReader&lt;K: ScalarValue, V: ScalarValue&gt; {
+</span><span class="kw">struct </span>ByteArrayDictionaryReader&lt;K: ArrowNativeType, V: OffsetSizeTrait&gt; {
     data_type: ArrowType,
     pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;,
     def_levels_buffer: <span class="prelude-ty">Option</span>&lt;Buffer&gt;,
@@ -815,16 +800,13 @@
 
 <span class="kw">impl</span>&lt;K, V&gt; ByteArrayDictionaryReader&lt;K, V&gt;
 <span class="kw">where
-    </span>K: FromBytes + ScalarValue + Ord + ArrowNativeType,
-    V: ScalarValue + OffsetSizeTrait,
+    </span>K: FromBytes + Ord + ArrowNativeType,
+    V: OffsetSizeTrait,
 {
     <span class="kw">fn </span>new(
         pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;,
         data_type: ArrowType,
-        record_reader: GenericRecordReader&lt;
-            DictionaryBuffer&lt;K, V&gt;,
-            DictionaryDecoder&lt;K, V&gt;,
-        &gt;,
+        record_reader: GenericRecordReader&lt;DictionaryBuffer&lt;K, V&gt;, DictionaryDecoder&lt;K, V&gt;&gt;,
     ) -&gt; <span class="self">Self </span>{
         <span class="self">Self </span>{
             data_type,
@@ -838,8 +820,8 @@
 
 <span class="kw">impl</span>&lt;K, V&gt; ArrayReader <span class="kw">for </span>ByteArrayDictionaryReader&lt;K, V&gt;
 <span class="kw">where
-    </span>K: FromBytes + ScalarValue + Ord + ArrowNativeType,
-    V: ScalarValue + OffsetSizeTrait,
+    </span>K: FromBytes + Ord + ArrowNativeType,
+    V: OffsetSizeTrait,
 {
     <span class="kw">fn </span>as_any(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; <span class="kw-2">&amp;</span><span class="kw">dyn </span>Any {
         <span class="self">self
@@ -908,16 +890,15 @@
 
 <span class="kw">impl</span>&lt;K, V&gt; ColumnValueDecoder <span class="kw">for </span>DictionaryDecoder&lt;K, V&gt;
 <span class="kw">where
-    </span>K: FromBytes + ScalarValue + Ord + ArrowNativeType,
-    V: ScalarValue + OffsetSizeTrait,
+    </span>K: FromBytes + Ord + ArrowNativeType,
+    V: OffsetSizeTrait,
 {
     <span class="kw">type </span>Slice = DictionaryBuffer&lt;K, V&gt;;
 
     <span class="kw">fn </span>new(col: <span class="kw-2">&amp;</span>ColumnDescPtr) -&gt; <span class="self">Self </span>{
         <span class="kw">let </span>validate_utf8 = col.converted_type() == ConvertedType::UTF8;
 
-        <span class="kw">let </span>value_type = <span class="kw">match </span>(V::IS_LARGE, col.converted_type() == ConvertedType::UTF8)
-        {
+        <span class="kw">let </span>value_type = <span class="kw">match </span>(V::IS_LARGE, col.converted_type() == ConvertedType::UTF8) {
             (<span class="bool-val">true</span>, <span class="bool-val">true</span>) =&gt; ArrowType::LargeUtf8,
             (<span class="bool-val">true</span>, <span class="bool-val">false</span>) =&gt; ArrowType::LargeBinary,
             (<span class="bool-val">false</span>, <span class="bool-val">true</span>) =&gt; ArrowType::Utf8,
@@ -956,8 +937,7 @@
 
         <span class="kw">let </span>len = num_values <span class="kw">as </span>usize;
         <span class="kw">let </span><span class="kw-2">mut </span>buffer = OffsetBuffer::&lt;V&gt;::default();
-        <span class="kw">let </span><span class="kw-2">mut </span>decoder =
-            ByteArrayDecoderPlain::new(buf, len, <span class="prelude-val">Some</span>(len), <span class="self">self</span>.validate_utf8);
+        <span class="kw">let </span><span class="kw-2">mut </span>decoder = ByteArrayDecoderPlain::new(buf, len, <span class="prelude-val">Some</span>(len), <span class="self">self</span>.validate_utf8);
         decoder.read(<span class="kw-2">&amp;mut </span>buffer, usize::MAX)<span class="question-mark">?</span>;
 
         <span class="kw">let </span>array = buffer.into_array(<span class="prelude-val">None</span>, <span class="self">self</span>.value_type.clone());
@@ -1021,8 +1001,8 @@
                     <span class="prelude-val">Some</span>(keys) =&gt; {
                         <span class="comment">// Happy path - can just copy keys
                         // Keys will be validated on conversion to arrow
-                        </span><span class="kw">let </span>keys_slice = keys.spare_capacity_mut(range.start + len);
-                        <span class="kw">let </span>len = decoder.get_batch(<span class="kw-2">&amp;mut </span>keys_slice[range.start..])<span class="question-mark">?</span>;
+                        </span><span class="kw">let </span>keys_slice = keys.get_output_slice(len);
+                        <span class="kw">let </span>len = decoder.get_batch(keys_slice)<span class="question-mark">?</span>;
                         <span class="kw-2">*</span>max_remaining_values -= len;
                         <span class="prelude-val">Ok</span>(len)
                     }
@@ -1042,11 +1022,7 @@
                         <span class="kw">let </span>dict_offsets = dict_buffers[<span class="number">0</span>].typed_data::&lt;V&gt;();
                         <span class="kw">let </span>dict_values = dict_buffers[<span class="number">1</span>].as_slice();
 
-                        values.extend_from_dictionary(
-                            <span class="kw-2">&amp;</span>keys[..len],
-                            dict_offsets,
-                            dict_values,
-                        )<span class="question-mark">?</span>;
+                        values.extend_from_dictionary(<span class="kw-2">&amp;</span>keys[..len], dict_offsets, dict_values)<span class="question-mark">?</span>;
                         <span class="kw-2">*</span>max_remaining_values -= len;
                         <span class="prelude-val">Ok</span>(len)
                     }
@@ -1057,9 +1033,7 @@
 
     <span class="kw">fn </span>skip_values(<span class="kw-2">&amp;mut </span><span class="self">self</span>, num_values: usize) -&gt; <span class="prelude-ty">Result</span>&lt;usize&gt; {
         <span class="kw">match </span><span class="self">self</span>.decoder.as_mut().expect(<span class="string">"decoder set"</span>) {
-            MaybeDictionaryDecoder::Fallback(decoder) =&gt; {
-                decoder.skip::&lt;V&gt;(num_values, <span class="prelude-val">None</span>)
-            }
+            MaybeDictionaryDecoder::Fallback(decoder) =&gt; decoder.skip::&lt;V&gt;(num_values, <span class="prelude-val">None</span>),
             MaybeDictionaryDecoder::Dict {
                 decoder,
                 max_remaining_values,
diff --git a/src/parquet/arrow/array_reader/fixed_len_byte_array.rs.html b/src/parquet/arrow/array_reader/fixed_len_byte_array.rs.html
index aa00da764c..70a26fcc8c 100644
--- a/src/parquet/arrow/array_reader/fixed_len_byte_array.rs.html
+++ b/src/parquet/arrow/array_reader/fixed_len_byte_array.rs.html
@@ -492,21 +492,6 @@
 <a href="#492" id="492">492</a>
 <a href="#493" id="493">493</a>
 <a href="#494" id="494">494</a>
-<a href="#495" id="495">495</a>
-<a href="#496" id="496">496</a>
-<a href="#497" id="497">497</a>
-<a href="#498" id="498">498</a>
-<a href="#499" id="499">499</a>
-<a href="#500" id="500">500</a>
-<a href="#501" id="501">501</a>
-<a href="#502" id="502">502</a>
-<a href="#503" id="503">503</a>
-<a href="#504" id="504">504</a>
-<a href="#505" id="505">505</a>
-<a href="#506" id="506">506</a>
-<a href="#507" id="507">507</a>
-<a href="#508" id="508">508</a>
-<a href="#509" id="509">509</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
@@ -527,7 +512,7 @@
 </span><span class="kw">use </span><span class="kw">crate</span>::arrow::array_reader::{read_records, skip_records, ArrayReader};
 <span class="kw">use </span><span class="kw">crate</span>::arrow::buffer::bit_util::{iter_set_bits_rev, sign_extend_be};
 <span class="kw">use </span><span class="kw">crate</span>::arrow::decoder::{DeltaByteArrayDecoder, DictIndexDecoder};
-<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::{BufferQueue, ScalarBuffer, ValuesBuffer};
+<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::{BufferQueue, ValuesBuffer};
 <span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::GenericRecordReader;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::schema::parquet_to_arrow_field;
 <span class="kw">use </span><span class="kw">crate</span>::basic::{Encoding, Type};
@@ -671,11 +656,10 @@
     <span class="kw">fn </span>consume_batch(<span class="kw-2">&amp;mut </span><span class="self">self</span>) -&gt; <span class="prelude-ty">Result</span>&lt;ArrayRef&gt; {
         <span class="kw">let </span>record_data = <span class="self">self</span>.record_reader.consume_record_data();
 
-        <span class="kw">let </span>array_data =
-            ArrayDataBuilder::new(ArrowType::FixedSizeBinary(<span class="self">self</span>.byte_length <span class="kw">as </span>i32))
-                .len(<span class="self">self</span>.record_reader.num_values())
-                .add_buffer(record_data)
-                .null_bit_buffer(<span class="self">self</span>.record_reader.consume_bitmap_buffer());
+        <span class="kw">let </span>array_data = ArrayDataBuilder::new(ArrowType::FixedSizeBinary(<span class="self">self</span>.byte_length <span class="kw">as </span>i32))
+            .len(<span class="self">self</span>.record_reader.num_values())
+            .add_buffer(record_data)
+            .null_bit_buffer(<span class="self">self</span>.record_reader.consume_bitmap_buffer());
 
         <span class="kw">let </span>binary = FixedSizeBinaryArray::from(<span class="kw">unsafe </span>{ array_data.build_unchecked() });
 
@@ -706,19 +690,13 @@
                     IntervalUnit::YearMonth =&gt; Arc::new(
                         binary
                             .iter()
-                            .map(|o| {
-                                o.map(|b| i32::from_le_bytes(b[<span class="number">0</span>..<span class="number">4</span>].try_into().unwrap()))
-                            })
+                            .map(|o| o.map(|b| i32::from_le_bytes(b[<span class="number">0</span>..<span class="number">4</span>].try_into().unwrap())))
                             .collect::&lt;IntervalYearMonthArray&gt;(),
                     ) <span class="kw">as </span>ArrayRef,
                     IntervalUnit::DayTime =&gt; Arc::new(
                         binary
                             .iter()
-                            .map(|o| {
-                                o.map(|b| {
-                                    i64::from_le_bytes(b[<span class="number">4</span>..<span class="number">12</span>].try_into().unwrap())
-                                })
-                            })
+                            .map(|o| o.map(|b| i64::from_le_bytes(b[<span class="number">4</span>..<span class="number">12</span>].try_into().unwrap())))
                             .collect::&lt;IntervalDayTimeArray&gt;(),
                     ) <span class="kw">as </span>ArrayRef,
                     IntervalUnit::MonthDayNano =&gt; {
@@ -756,7 +734,7 @@
 }
 
 <span class="kw">struct </span>FixedLenByteArrayBuffer {
-    buffer: ScalarBuffer&lt;u8&gt;,
+    buffer: Vec&lt;u8&gt;,
     <span class="doccomment">/// The length of each element in bytes
     </span>byte_length: usize,
 }
@@ -772,14 +750,14 @@
     <span class="kw">type </span>Slice = <span class="self">Self</span>;
 
     <span class="kw">fn </span>consume(<span class="kw-2">&amp;mut </span><span class="self">self</span>) -&gt; <span class="self">Self</span>::Output {
-        <span class="self">self</span>.buffer.consume()
+        Buffer::from_vec(<span class="self">self</span>.buffer.consume())
     }
 
-    <span class="kw">fn </span>spare_capacity_mut(<span class="kw-2">&amp;mut </span><span class="self">self</span>, _batch_size: usize) -&gt; <span class="kw-2">&amp;mut </span><span class="self">Self</span>::Slice {
+    <span class="kw">fn </span>get_output_slice(<span class="kw-2">&amp;mut </span><span class="self">self</span>, _batch_size: usize) -&gt; <span class="kw-2">&amp;mut </span><span class="self">Self</span>::Slice {
         <span class="self">self
     </span>}
 
-    <span class="kw">fn </span>set_len(<span class="kw-2">&amp;mut </span><span class="self">self</span>, len: usize) {
+    <span class="kw">fn </span>truncate_buffer(<span class="kw-2">&amp;mut </span><span class="self">self</span>, len: usize) {
         <span class="macro">assert_eq!</span>(<span class="self">self</span>.buffer.len(), len * <span class="self">self</span>.byte_length);
     }
 }
@@ -797,14 +775,10 @@
             (read_offset + values_read) * <span class="self">self</span>.byte_length
         );
         <span class="self">self</span>.buffer
-            .resize((read_offset + levels_read) * <span class="self">self</span>.byte_length);
-
-        <span class="kw">let </span>slice = <span class="self">self</span>.buffer.as_slice_mut();
+            .resize((read_offset + levels_read) * <span class="self">self</span>.byte_length, <span class="number">0</span>);
 
         <span class="kw">let </span>values_range = read_offset..read_offset + values_read;
-        <span class="kw">for </span>(value_pos, level_pos) <span class="kw">in
-            </span>values_range.rev().zip(iter_set_bits_rev(valid_mask))
-        {
+        <span class="kw">for </span>(value_pos, level_pos) <span class="kw">in </span>values_range.rev().zip(iter_set_bits_rev(valid_mask)) {
             <span class="macro">debug_assert!</span>(level_pos &gt;= value_pos);
             <span class="kw">if </span>level_pos &lt;= value_pos {
                 <span class="kw">break</span>;
@@ -814,7 +788,7 @@
             <span class="kw">let </span>value_pos_bytes = value_pos * <span class="self">self</span>.byte_length;
 
             <span class="kw">for </span>i <span class="kw">in </span><span class="number">0</span>..<span class="self">self</span>.byte_length {
-                slice[level_pos_bytes + i] = slice[value_pos_bytes + i]
+                <span class="self">self</span>.buffer[level_pos_bytes + i] = <span class="self">self</span>.buffer[value_pos_bytes + i]
             }
         }
     }
@@ -900,8 +874,7 @@
         <span class="kw">let </span>len = range.end - range.start;
         <span class="kw">match </span><span class="self">self</span>.decoder.as_mut().unwrap() {
             Decoder::Plain { offset, buf } =&gt; {
-                <span class="kw">let </span>to_read =
-                    (len * <span class="self">self</span>.byte_length).min(buf.len() - <span class="kw-2">*</span>offset) / <span class="self">self</span>.byte_length;
+                <span class="kw">let </span>to_read = (len * <span class="self">self</span>.byte_length).min(buf.len() - <span class="kw-2">*</span>offset) / <span class="self">self</span>.byte_length;
                 <span class="kw">let </span>end_offset = <span class="kw-2">*</span>offset + to_read * <span class="self">self</span>.byte_length;
                 out.buffer
                     .extend_from_slice(<span class="kw-2">&amp;</span>buf.as_ref()[<span class="kw-2">*</span>offset..end_offset]);
@@ -994,15 +967,12 @@
         .build()
         .unwrap();
 
-        <span class="kw">let </span>written = RecordBatch::try_from_iter([(
-            <span class="string">"list"</span>,
-            Arc::new(ListArray::from(data)) <span class="kw">as </span>ArrayRef,
-        )])
-        .unwrap();
+        <span class="kw">let </span>written =
+            RecordBatch::try_from_iter([(<span class="string">"list"</span>, Arc::new(ListArray::from(data)) <span class="kw">as </span>ArrayRef)])
+                .unwrap();
 
         <span class="kw">let </span><span class="kw-2">mut </span>buffer = Vec::with_capacity(<span class="number">1024</span>);
-        <span class="kw">let </span><span class="kw-2">mut </span>writer =
-            ArrowWriter::try_new(<span class="kw-2">&amp;mut </span>buffer, written.schema(), <span class="prelude-val">None</span>).unwrap();
+        <span class="kw">let </span><span class="kw-2">mut </span>writer = ArrowWriter::try_new(<span class="kw-2">&amp;mut </span>buffer, written.schema(), <span class="prelude-val">None</span>).unwrap();
         writer.write(<span class="kw-2">&amp;</span>written).unwrap();
         writer.close().unwrap();
 
diff --git a/src/parquet/arrow/array_reader/null_array.rs.html b/src/parquet/arrow/array_reader/null_array.rs.html
index 60c97ae95d..0d20e6f50a 100644
--- a/src/parquet/arrow/array_reader/null_array.rs.html
+++ b/src/parquet/arrow/array_reader/null_array.rs.html
@@ -106,7 +106,6 @@
 <a href="#106" id="106">106</a>
 <a href="#107" id="107">107</a>
 <a href="#108" id="108">108</a>
-<a href="#109" id="109">109</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
@@ -125,14 +124,13 @@
 // under the License.
 
 </span><span class="kw">use </span><span class="kw">crate</span>::arrow::array_reader::{read_records, skip_records, ArrayReader};
-<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::ScalarValue;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::RecordReader;
 <span class="kw">use </span><span class="kw">crate</span>::column::page::PageIterator;
 <span class="kw">use </span><span class="kw">crate</span>::data_type::DataType;
 <span class="kw">use </span><span class="kw">crate</span>::errors::Result;
 <span class="kw">use </span><span class="kw">crate</span>::schema::types::ColumnDescPtr;
 <span class="kw">use </span>arrow_array::ArrayRef;
-<span class="kw">use </span>arrow_buffer::Buffer;
+<span class="kw">use </span>arrow_buffer::{ArrowNativeType, Buffer};
 <span class="kw">use </span>arrow_schema::DataType <span class="kw">as </span>ArrowType;
 <span class="kw">use </span>std::any::Any;
 <span class="kw">use </span>std::sync::Arc;
@@ -142,7 +140,7 @@
 </span><span class="kw">pub struct </span>NullArrayReader&lt;T&gt;
 <span class="kw">where
     </span>T: DataType,
-    T::T: ScalarValue,
+    T::T: ArrowNativeType,
 {
     data_type: ArrowType,
     pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;,
@@ -154,7 +152,7 @@
 <span class="kw">impl</span>&lt;T&gt; NullArrayReader&lt;T&gt;
 <span class="kw">where
     </span>T: DataType,
-    T::T: ScalarValue,
+    T::T: ArrowNativeType,
 {
     <span class="doccomment">/// Construct null array reader.
     </span><span class="kw">pub fn </span>new(pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;, column_desc: ColumnDescPtr) -&gt; <span class="prelude-ty">Result</span>&lt;<span class="self">Self</span>&gt; {
@@ -174,7 +172,7 @@
 </span><span class="kw">impl</span>&lt;T&gt; ArrayReader <span class="kw">for </span>NullArrayReader&lt;T&gt;
 <span class="kw">where
     </span>T: DataType,
-    T::T: ScalarValue,
+    T::T: ArrowNativeType,
 {
     <span class="kw">fn </span>as_any(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; <span class="kw-2">&amp;</span><span class="kw">dyn </span>Any {
         <span class="self">self
diff --git a/src/parquet/arrow/array_reader/primitive_array.rs.html b/src/parquet/arrow/array_reader/primitive_array.rs.html
index f046aa236f..d8ca7188a8 100644
--- a/src/parquet/arrow/array_reader/primitive_array.rs.html
+++ b/src/parquet/arrow/array_reader/primitive_array.rs.html
@@ -786,12 +786,6 @@
 <a href="#786" id="786">786</a>
 <a href="#787" id="787">787</a>
 <a href="#788" id="788">788</a>
-<a href="#789" id="789">789</a>
-<a href="#790" id="790">790</a>
-<a href="#791" id="791">791</a>
-<a href="#792" id="792">792</a>
-<a href="#793" id="793">793</a>
-<a href="#794" id="794">794</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
@@ -810,7 +804,6 @@
 // under the License.
 
 </span><span class="kw">use </span><span class="kw">crate</span>::arrow::array_reader::{read_records, skip_records, ArrayReader};
-<span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::buffer::ScalarValue;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::record_reader::RecordReader;
 <span class="kw">use </span><span class="kw">crate</span>::arrow::schema::parquet_to_arrow_field;
 <span class="kw">use </span><span class="kw">crate</span>::basic::Type <span class="kw">as </span>PhysicalType;
@@ -820,22 +813,55 @@
 <span class="kw">use </span><span class="kw">crate</span>::schema::types::ColumnDescPtr;
 <span class="kw">use </span>arrow_array::Decimal256Array;
 <span class="kw">use </span>arrow_array::{
-    builder::{BooleanBufferBuilder, TimestampNanosecondBufferBuilder},
-    ArrayRef, BooleanArray, Decimal128Array, Float32Array, Float64Array, Int32Array,
-    Int64Array, TimestampNanosecondArray, UInt32Array, UInt64Array,
+    builder::TimestampNanosecondBufferBuilder, ArrayRef, BooleanArray, Decimal128Array,
+    Float32Array, Float64Array, Int32Array, Int64Array, TimestampNanosecondArray, UInt32Array,
+    UInt64Array,
 };
-<span class="kw">use </span>arrow_buffer::{i256, Buffer};
+<span class="kw">use </span>arrow_buffer::{i256, BooleanBuffer, Buffer};
 <span class="kw">use </span>arrow_data::ArrayDataBuilder;
 <span class="kw">use </span>arrow_schema::{DataType <span class="kw">as </span>ArrowType, TimeUnit};
 <span class="kw">use </span>std::any::Any;
 <span class="kw">use </span>std::sync::Arc;
 
+<span class="doccomment">/// Provides conversion from `Vec&lt;T&gt;` to `Buffer`
+</span><span class="kw">pub trait </span>IntoBuffer {
+    <span class="kw">fn </span>into_buffer(<span class="self">self</span>) -&gt; Buffer;
+}
+
+<span class="macro">macro_rules! </span>native_buffer {
+    ($(<span class="macro-nonterminal">$t</span>:ty),<span class="kw-2">*</span>) =&gt; {
+        $(<span class="kw">impl </span>IntoBuffer <span class="kw">for </span>Vec&lt;<span class="macro-nonterminal">$t</span>&gt; {
+            <span class="kw">fn </span>into_buffer(<span class="self">self</span>) -&gt; Buffer {
+                Buffer::from_vec(<span class="self">self</span>)
+            }
+        })*
+    };
+}
+<span class="macro">native_buffer!</span>(i8, i16, i32, i64, u8, u16, u32, u64, f32, f64);
+
+<span class="kw">impl </span>IntoBuffer <span class="kw">for </span>Vec&lt;bool&gt; {
+    <span class="kw">fn </span>into_buffer(<span class="self">self</span>) -&gt; Buffer {
+        BooleanBuffer::from_iter(<span class="self">self</span>).into_inner()
+    }
+}
+
+<span class="kw">impl </span>IntoBuffer <span class="kw">for </span>Vec&lt;Int96&gt; {
+    <span class="kw">fn </span>into_buffer(<span class="self">self</span>) -&gt; Buffer {
+        <span class="kw">let </span><span class="kw-2">mut </span>builder = TimestampNanosecondBufferBuilder::new(<span class="self">self</span>.len());
+        <span class="kw">for </span>v <span class="kw">in </span><span class="self">self </span>{
+            builder.append(v.to_nanos())
+        }
+        builder.finish()
+    }
+}
+
 <span class="doccomment">/// Primitive array readers are leaves of array reader tree. They accept page iterator
 /// and read them into primitive arrays.
 </span><span class="kw">pub struct </span>PrimitiveArrayReader&lt;T&gt;
 <span class="kw">where
     </span>T: DataType,
-    T::T: ScalarValue,
+    T::T: Copy + Default,
+    Vec&lt;T::T&gt;: IntoBuffer,
 {
     data_type: ArrowType,
     pages: Box&lt;<span class="kw">dyn </span>PageIterator&gt;,
@@ -847,7 +873,8 @@
 <span class="kw">impl</span>&lt;T&gt; PrimitiveArrayReader&lt;T&gt;
 <span class="kw">where
     </span>T: DataType,
-    T::T: ScalarValue,
+    T::T: Copy + Default,
+    Vec&lt;T::T&gt;: IntoBuffer,
 {
     <span class="doccomment">/// Construct primitive array reader.
     </span><span class="kw">pub fn </span>new(
@@ -879,7 +906,8 @@
 </span><span class="kw">impl</span>&lt;T&gt; ArrayReader <span class="kw">for </span>PrimitiveArrayReader&lt;T&gt;
 <span class="kw">where
     </span>T: DataType,
-    T::T: ScalarValue,
+    T::T: Copy + Default,
+    Vec&lt;T::T&gt;: IntoBuffer,
 {
     <span class="kw">fn </span>as_any(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; <span class="kw-2">&amp;</span><span class="kw">dyn </span>Any {
         <span class="self">self
@@ -925,40 +953,14 @@
                 <span class="kw">_ </span>=&gt; <span class="macro">unreachable!</span>(<span class="string">"INT96 must be timestamp nanosecond"</span>),
             },
             PhysicalType::BYTE_ARRAY | PhysicalType::FIXED_LEN_BYTE_ARRAY =&gt; {
-                <span class="macro">unreachable!</span>(
-                    <span class="string">"PrimitiveArrayReaders don't support complex physical types"
-                </span>);
+                <span class="macro">unreachable!</span>(<span class="string">"PrimitiveArrayReaders don't support complex physical types"</span>);
             }
         };
 
         <span class="comment">// Convert to arrays by using the Parquet physical type.
         // The physical types are then cast to Arrow types if necessary
 
-        </span><span class="kw">let </span>record_data = <span class="self">self</span>.record_reader.consume_record_data();
-        <span class="kw">let </span>record_data = <span class="kw">match </span>T::get_physical_type() {
-            PhysicalType::BOOLEAN =&gt; {
-                <span class="kw">let </span><span class="kw-2">mut </span>boolean_buffer = BooleanBufferBuilder::new(record_data.len());
-
-                <span class="kw">for </span>e <span class="kw">in </span>record_data.as_slice() {
-                    boolean_buffer.append(<span class="kw-2">*</span>e &gt; <span class="number">0</span>);
-                }
-                boolean_buffer.into()
-            }
-            PhysicalType::INT96 =&gt; {
-                <span class="comment">// SAFETY - record_data is an aligned buffer of Int96
-                </span><span class="kw">let </span>(prefix, slice, suffix) =
-                    <span class="kw">unsafe </span>{ record_data.as_slice().align_to::&lt;Int96&gt;() };
-                <span class="macro">assert!</span>(prefix.is_empty() &amp;&amp; suffix.is_empty());
-
-                <span class="kw">let </span><span class="kw-2">mut </span>builder = TimestampNanosecondBufferBuilder::new(slice.len());
-                <span class="kw">for </span>v <span class="kw">in </span>slice {
-                    builder.append(v.to_nanos())
-                }
-
-                builder.finish()
-            }
-            <span class="kw">_ </span>=&gt; record_data,
-        };
+        </span><span class="kw">let </span>record_data = <span class="self">self</span>.record_reader.consume_record_data().into_buffer();
 
         <span class="kw">let </span>array_data = ArrayDataBuilder::new(arrow_data_type)
             .len(<span class="self">self</span>.record_reader.num_values())
@@ -982,9 +984,7 @@
             PhysicalType::DOUBLE =&gt; Arc::new(Float64Array::from(array_data)),
             PhysicalType::INT96 =&gt; Arc::new(TimestampNanosecondArray::from(array_data)),
             PhysicalType::BYTE_ARRAY | PhysicalType::FIXED_LEN_BYTE_ARRAY =&gt; {
-                <span class="macro">unreachable!</span>(
-                    <span class="string">"PrimitiveArrayReaders don't support complex physical types"
-                </span>);
+                <span class="macro">unreachable!</span>(<span class="string">"PrimitiveArrayReaders don't support complex physical types"</span>);
             }
         };
 
@@ -1203,12 +1203,9 @@
             );
             <span class="kw">let </span>page_iterator = InMemoryPageIterator::new(page_lists);
 
-            <span class="kw">let </span><span class="kw-2">mut </span>array_reader = PrimitiveArrayReader::&lt;Int32Type&gt;::new(
-                Box::new(page_iterator),
-                column_desc,
-                <span class="prelude-val">None</span>,
-            )
-            .unwrap();
+            <span class="kw">let </span><span class="kw-2">mut </span>array_reader =
+                PrimitiveArrayReader::&lt;Int32Type&gt;::new(Box::new(page_iterator), column_desc, <span class="prelude-val">None</span>)
+                    .unwrap();
 
             <span class="comment">// Read first 50 values, which are all from the first column chunk
             </span><span class="kw">let </span>array = array_reader.next_batch(<span class="number">50</span>).unwrap();
@@ -1412,12 +1409,9 @@
 
             <span class="kw">let </span>page_iterator = InMemoryPageIterator::new(page_lists);
 
-            <span class="kw">let </span><span class="kw-2">mut </span>array_reader = PrimitiveArrayReader::&lt;Int32Type&gt;::new(
-                Box::new(page_iterator),
-                column_desc,
-                <span class="prelude-val">None</span>,
... 2192 lines suppressed ...