pub enum Mutation {
PointMutation {
position: usize,
old_value: u8,
new_value: u8,
timestamp: u64,
},
Insertion {
position: usize,
sequence: Vec<u8>,
timestamp: u64,
},
Deletion {
position: usize,
length: usize,
timestamp: u64,
},
Duplication {
start: usize,
end: usize,
insert_at: usize,
timestamp: u64,
},
Inversion {
start: usize,
end: usize,
timestamp: u64,
},
Translocation {
from_start: usize,
from_end: usize,
to_position: usize,
timestamp: u64,
},
KeyEvolution {
old_generation: u64,
new_generation: u64,
timestamp: u64,
},
}
Expand description
Types of mutations that can occur in DNA
Variantsยง
PointMutation
Single byte change in sequence
Insertion
Insert new sequence at position
Deletion
Remove sequence from position
Duplication
Duplicate sequence within DNA
Inversion
Reverse sequence order
Translocation
Move sequence to different position
KeyEvolution
Evolution of cryptographic keys
Trait Implementationsยง
Sourceยงimpl<'de> Deserialize<'de> for Mutation
impl<'de> Deserialize<'de> for Mutation
Sourceยงfn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementationsยง
impl Freeze for Mutation
impl RefUnwindSafe for Mutation
impl Send for Mutation
impl Sync for Mutation
impl Unpin for Mutation
impl UnwindSafe for Mutation
Blanket Implementationsยง
Sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more