1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use std::fmt::Debug;

/// Module for iris dataset.
pub mod iris;
/// Module for trees dataset.
pub mod trees;

/// Dataset container
#[derive(Clone, Debug)]
pub struct Dataset<D, T> where D: Clone + Debug, T: Clone + Debug {

    data: D,
    target: T
}

impl<D, T> Dataset<D, T> where D: Clone + Debug, T: Clone + Debug {

    /// Returns explanatory variable (features)
    pub fn data(&self) -> &D {
        &self.data
    }

    /// Returns objective variable (target)
    pub fn target(&self) -> &T {
        &self.target
    }
}