> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ArrayValue

> ArrayValue — Kinetica Rust API

[gpudb\_api](https://docs.kinetica.com/content/api/rust/index.md)::<wbr />[generic\_record](https://docs.kinetica.com/content/api/rust/generic_record/index.md)
[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2003-L2022)&#x20;

<pre>`pub enum ArrayValue {    Boolean(Vec<Option<bool>>),    Integer(Vec<Option<i32>>),    Long(Vec<Option<i64>>),    Ulong(Vec<Option<u64>>),    Float(Vec<Option<f32>>),    Double(Vec<Option<f64>>),    String(Vec<Option<String>>),    Bytes(Vec<Option<Vec<u8>>>),    Vector(Vec<f32>),}`</pre>

The elements of an array or vector column, as [`GenericRecord::get_array`](https://docs.kinetica.com/content/api/rust/generic_record/struct.GenericRecord#method.get_array) gives them: an array of the element type, each element `None` where it is null, or a vector’s floats.

## Variants

### Boolean([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)>>)

`array(boolean)`

### Integer([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[i32](https://doc.rust-lang.org/1.98.1/std/primitive.i32.html)>>)

`array(int)`

### Long([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[i64](https://doc.rust-lang.org/1.98.1/std/primitive.i64.html)>>)

`array(long)`

### Ulong([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[u64](https://doc.rust-lang.org/1.98.1/std/primitive.u64.html)>>)

`array(ulong)`

### Float([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[f32](https://doc.rust-lang.org/1.98.1/std/primitive.f32.html)>>)

`array(float)`

### Double([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[f64](https://doc.rust-lang.org/1.98.1/std/primitive.f64.html)>>)

`array(double)`

### String([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>>)

`array(string)`

### Bytes([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[u8](https://doc.rust-lang.org/1.98.1/std/primitive.u8.html)>>>)

`array(bytes)`

### Vector([Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[f32](https://doc.rust-lang.org/1.98.1/std/primitive.f32.html)>)

`vector(N)`

## Trait Implementations

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
impl [Clone](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html) for [ArrayValue](https://docs.kinetica.com/content/api/rust/generic_record/enum.ArrayValue.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
fn [clone](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#tymethod.clone)(\&self) -> [ArrayValue](https://docs.kinetica.com/content/api/rust/generic_record/enum.ArrayValue.md)

Returns a duplicate of the value. [Read more](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#tymethod.clone)

1.0.0 (const: [unstable](https://github.com/rust-lang/rust/issues/142757)) · [Source](https://doc.rust-lang.org/1.98.1/src/core/clone.rs.html#245-247)
fn [clone\_from](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#method.clone_from)(\&mut self, source: \&Self)

Performs copy-assignment from `source`. [Read more](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#method.clone_from)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
impl [Debug](https://doc.rust-lang.org/1.98.1/core/fmt/trait.Debug.html) for [ArrayValue](https://docs.kinetica.com/content/api/rust/generic_record/enum.ArrayValue.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
fn [fmt](https://doc.rust-lang.org/1.98.1/core/fmt/trait.Debug.html#tymethod.fmt)(\&self, f: \&mut [Formatter](https://doc.rust-lang.org/1.98.1/core/fmt/struct.Formatter.html)\<'\_>) -> [Result](https://doc.rust-lang.org/1.98.1/core/fmt/type.Result.html)

Formats the value using the given formatter. [Read more](https://doc.rust-lang.org/1.98.1/core/fmt/trait.Debug.html#tymethod.fmt)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
impl [PartialEq](https://doc.rust-lang.org/1.98.1/core/cmp/trait.PartialEq.html) for [ArrayValue](https://docs.kinetica.com/content/api/rust/generic_record/enum.ArrayValue.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
fn [eq](https://doc.rust-lang.org/1.98.1/core/cmp/trait.PartialEq.html#tymethod.eq)(\&self, other: &[ArrayValue](https://docs.kinetica.com/content/api/rust/generic_record/enum.ArrayValue.md)) -> [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)

Tests for `self` and `other` values to be equal, and is used by `==`.

1.0.0 (const: [unstable](https://github.com/rust-lang/rust/issues/143800)) · [Source](https://doc.rust-lang.org/1.98.1/src/core/cmp.rs.html#263)
fn [ne](https://doc.rust-lang.org/1.98.1/core/cmp/trait.PartialEq.html#method.ne)(\&self, other: [\&Rhs](https://doc.rust-lang.org/1.98.1/std/primitive.reference.html)) -> [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)

Tests for `!=`. The default implementation is almost always sufficient, and should not be overridden without very good reason.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generic_record.rs#L2002)
impl [StructuralPartialEq](https://doc.rust-lang.org/1.98.1/core/marker/trait.StructuralPartialEq.html) for [ArrayValue](https://docs.kinetica.com/content/api/rust/generic_record/enum.ArrayValue.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.