Sha256: d18f7b3760be74ba4df70e56d34f4829648d9df409009ba7950880bca27d0f7c
Contents?: true
Size: 860 Bytes
Versions: 180
Compression:
Stored size: 860 Bytes
Contents
#[derive(PartialEq, Eq, Debug)] pub struct RibonucleicAcid { nucleotides: String } impl RibonucleicAcid { pub fn new(nucleotides: &str) -> RibonucleicAcid { RibonucleicAcid { nucleotides: nucleotides.to_string() } } } #[derive(PartialEq, Eq, Debug)] pub struct DeoxyribonucleicAcid { nucleotides: String } fn transcribe_dna_rna(c: char) -> char { match c { 'C' => 'G', 'G' => 'C', 'A' => 'U', 'T' => 'A', _ => c } } impl DeoxyribonucleicAcid { pub fn new(nucleotides: &str) -> DeoxyribonucleicAcid { DeoxyribonucleicAcid { nucleotides: nucleotides.to_string() } } pub fn to_rna(&self) -> RibonucleicAcid { let rna_nucleotides = self.nucleotides.chars().map(transcribe_dna_rna).collect(); RibonucleicAcid { nucleotides: rna_nucleotides } } }
Version data entries
180 entries across 180 versions & 1 rubygems