From b556fcb6f9baeb19bf55c6498f253a31b2a1bec4 Mon Sep 17 00:00:00 2001 From: "Jorge C. Leitao" Date: Sun, 28 Nov 2021 12:16:06 +0000 Subject: [PATCH 1/2] Improved API to create field. --- src/datatypes/field.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/datatypes/field.rs b/src/datatypes/field.rs index fcd3b43bb76..1febcf1d3e4 100644 --- a/src/datatypes/field.rs +++ b/src/datatypes/field.rs @@ -60,10 +60,10 @@ impl PartialEq for Field { } impl Field { - /// Creates a new field - pub fn new(name: &str, data_type: DataType, nullable: bool) -> Self { + /// Creates a new [`Field`]. + pub fn new>(name: T, data_type: DataType, nullable: bool) -> Self { Field { - name: name.to_string(), + name: name.into(), data_type, nullable, dict_id: 0, @@ -73,15 +73,15 @@ impl Field { } /// Creates a new field - pub fn new_dict( - name: &str, + pub fn new_dict>( + name: T, data_type: DataType, nullable: bool, dict_id: i64, dict_is_ordered: bool, ) -> Self { Field { - name: name.to_string(), + name: name.into(), data_type, nullable, dict_id, From 747ef82ad43bf5788b6c406deac9568b85136ad3 Mon Sep 17 00:00:00 2001 From: "Jorge C. Leitao" Date: Sun, 28 Nov 2021 12:25:44 +0000 Subject: [PATCH 2/2] Made Schema fields public. --- src/datatypes/schema.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/datatypes/schema.rs b/src/datatypes/schema.rs index 70bcb7b21a7..bb8540655b6 100644 --- a/src/datatypes/schema.rs +++ b/src/datatypes/schema.rs @@ -24,9 +24,10 @@ use super::Field; /// An ordered sequence of [`Field`] with optional metadata. #[derive(Debug, Clone, PartialEq, Eq)] pub struct Schema { - pub(crate) fields: Vec, + /// The fields composing this schema. + pub fields: Vec, /// A map of key-value pairs containing additional meta data. - pub(crate) metadata: HashMap, + pub metadata: HashMap, } impl Schema {