reifydb_core/value/column/data/
get.rs

1// Copyright (c) reifydb.com 2025
2// This file is licensed under the AGPL-3.0-or-later, see license.md file
3
4use reifydb_type::Value;
5
6use crate::value::column::ColumnData;
7
8impl ColumnData {
9	pub fn get_value(&self, index: usize) -> Value {
10		match self {
11			ColumnData::Bool(container) => container.get_value(index),
12			ColumnData::Float4(container) => container.get_value(index),
13			ColumnData::Float8(container) => container.get_value(index),
14			ColumnData::Int1(container) => container.get_value(index),
15			ColumnData::Int2(container) => container.get_value(index),
16			ColumnData::Int4(container) => container.get_value(index),
17			ColumnData::Int8(container) => container.get_value(index),
18			ColumnData::Int16(container) => container.get_value(index),
19			ColumnData::Uint1(container) => container.get_value(index),
20			ColumnData::Uint2(container) => container.get_value(index),
21			ColumnData::Uint4(container) => container.get_value(index),
22			ColumnData::Uint8(container) => container.get_value(index),
23			ColumnData::Uint16(container) => container.get_value(index),
24			ColumnData::Utf8 {
25				container,
26				..
27			} => container.get_value(index),
28			ColumnData::Date(container) => container.get_value(index),
29			ColumnData::DateTime(container) => container.get_value(index),
30			ColumnData::Time(container) => container.get_value(index),
31			ColumnData::Duration(container) => container.get_value(index),
32			ColumnData::RowNumber(container) => container.get_value(index),
33			ColumnData::IdentityId(container) => container.get_value(index),
34			ColumnData::Uuid4(container) => container.get_value(index),
35			ColumnData::Uuid7(container) => container.get_value(index),
36			ColumnData::Blob {
37				container,
38				..
39			} => container.get_value(index),
40			ColumnData::Int {
41				container,
42				..
43			} => container.get_value(index),
44			ColumnData::Uint {
45				container,
46				..
47			} => container.get_value(index),
48			ColumnData::Decimal {
49				container,
50				..
51			} => container.get_value(index),
52			ColumnData::Any(container) => container.get_value(index),
53			ColumnData::Undefined(container) => container.get_value(index),
54		}
55	}
56}