Trait lace::ColumnIndex
source · pub trait ColumnIndex: Clone + Debug {
// Required methods
fn col_ix(&self, codebook: &Codebook) -> Result<usize, IndexError>;
fn col_str(&self) -> Option<&str>;
fn col_usize(&self) -> Option<usize>;
}
Expand description
Trait defining items that can converted into a usize column index
Required Methods§
sourcefn col_ix(&self, codebook: &Codebook) -> Result<usize, IndexError>
fn col_ix(&self, codebook: &Codebook) -> Result<usize, IndexError>
Use the codebook to return the integer column index
§Example
use lace::examples::Example;
use lace::ColumnIndex;
let oracle = Example::Animals.oracle().unwrap();
// "flys" is the 35th column (index 34)
let ix = "flys".col_ix(&oracle.codebook).unwrap();
assert_eq!(ix, 34);
// "antelope" os a row
let ix_res = "antelope".col_ix(&oracle.codebook);
assert!(ix_res.is_err());
Object Safety§
This trait is not object safe.