Struct tskit::MutationTable
source · pub struct MutationTable { /* private fields */ }
Expand description
An immutable view of site table.
These are not created directly but are accessed
by types implementing std::ops::Deref
to
crate::table_views::TableViews
Implementations
sourceimpl MutationTable
impl MutationTable
sourcepub fn site<M: Into<MutationId> + Copy>(&self, row: M) -> Option<SiteId>
pub fn site<M: Into<MutationId> + Copy>(&self, row: M) -> Option<SiteId>
Return the site
value from row row
of the table.
Errors
Will return IndexError
if row
is out of range.
sourcepub fn node<M: Into<MutationId> + Copy>(&self, row: M) -> Option<NodeId>
pub fn node<M: Into<MutationId> + Copy>(&self, row: M) -> Option<NodeId>
Return the node
value from row row
of the table.
Errors
Will return IndexError
if row
is out of range.
sourcepub fn parent<M: Into<MutationId> + Copy>(&self, row: M) -> Option<MutationId>
pub fn parent<M: Into<MutationId> + Copy>(&self, row: M) -> Option<MutationId>
Return the parent
value from row row
of the table.
Errors
Will return IndexError
if row
is out of range.
sourcepub fn time<M: Into<MutationId> + Copy>(&self, row: M) -> Option<Time>
pub fn time<M: Into<MutationId> + Copy>(&self, row: M) -> Option<Time>
Return the time
value from row row
of the table.
Errors
Will return IndexError
if row
is out of range.
sourcepub fn derived_state<M: Into<MutationId>>(&self, row: M) -> Option<&[u8]>
pub fn derived_state<M: Into<MutationId>>(&self, row: M) -> Option<&[u8]>
Get the derived_state
value from row row
of the table.
Return
Will return None
if there is no derived state.
Errors
Will return IndexError
if row
is out of range.
sourcepub fn metadata<T: MutationMetadata>(
&self,
row: MutationId
) -> Option<Result<T, TskitError>>
pub fn metadata<T: MutationMetadata>(
&self,
row: MutationId
) -> Option<Result<T, TskitError>>
Retrieve decoded metadata for a row
.
Returns
Some(Ok(T))
ifrow
is valid and decoding succeeded.Some(Err(_))
ifrow
is not valid and decoding failed.None
ifrow
is not valid.
Errors
TskitError::MetadataError
if decoding fails.
Examples.
The big-picture semantics are the same for all table types.
See crate::IndividualTable::metadata
for examples.
sourcepub fn iter(&self) -> impl Iterator<Item = MutationTableRow> + '_
pub fn iter(&self) -> impl Iterator<Item = MutationTableRow> + '_
Return an iterator over rows of the table.
The value of the iterator is MutationTableRow
.