blackjack/series/
variants.rs1use crate::prelude::*;
4
5pub enum GenericSeriesContainer {
7 I64(Series<i64>),
9 F64(Series<f64>),
11 I32(Series<i32>),
13 F32(Series<f32>),
15 STRING(Series<String>),
17}
18
19impl GenericSeriesContainer {
20 pub fn into_string_vec(self) -> Vec<String> {
22 match self {
24 GenericSeriesContainer::I64(series) => series.into_type::<String>().unwrap().into_vec(),
25 GenericSeriesContainer::F64(series) => series.into_type::<String>().unwrap().into_vec(),
26 GenericSeriesContainer::I32(series) => series.into_type::<String>().unwrap().into_vec(),
27 GenericSeriesContainer::F32(series) => series.into_type::<String>().unwrap().into_vec(),
28 GenericSeriesContainer::STRING(series) => series.into_vec(),
29 }
30 }
31}
32
33#[derive(Debug, Clone)]
36pub struct SeriesMeta {
37 pub name: String,
39 pub len: usize,
41 pub dtype: DType,
43}
44
45impl<T: BlackJackData> From<&Series<T>> for SeriesMeta {
46 fn from(series: &Series<T>) -> SeriesMeta {
47 SeriesMeta {
48 name: series.name().unwrap(),
49 len: series.len(),
50 dtype: series.dtype().unwrap(),
51 }
52 }
53}