pub trait RowIndex: Clone + Debug {
// Required methods
fn row_ix(&self, codebook: &Codebook) -> Result<usize, IndexError>;
fn row_str(&self) -> Option<&str>;
fn row_usize(&self) -> Option<usize>;
}
Expand description
Trait defining an item that can be converted into a row index
Required Methods§
sourcefn row_ix(&self, codebook: &Codebook) -> Result<usize, IndexError>
fn row_ix(&self, codebook: &Codebook) -> Result<usize, IndexError>
Use the codebook to return the integer row index
§Example
use lace::examples::Example;
use lace::RowIndex;
let oracle = Example::Animals.oracle().unwrap();
// The first row
let ix = "antelope".row_ix(&oracle.codebook).unwrap();
assert_eq!(ix, 0);
// "flys" is a column name
let ix_res = "flys".row_ix(&oracle.codebook);
assert!(ix_res.is_err());
Object Safety§
This trait is not object safe.