class Bio::BioAlignment::Codon
Codon
element for the matrix, used by CodonSequence
.
Constants
- GAP
- UNDEFINED
Attributes
codon_table[R]
Public Class Methods
new(codon, codon_table = 1)
click to toggle source
# File lib/bio-alignment/codonsequence.rb, line 15 def initialize codon, codon_table = 1 @codon = codon @codon_table = codon_table @codon.freeze @codon_table.freeze end
Public Instance Methods
==(other)
click to toggle source
# File lib/bio-alignment/codonsequence.rb, line 38 def == other @codon == other.to_s end
gap?()
click to toggle source
# File lib/bio-alignment/codonsequence.rb, line 22 def gap? @codon == GAP end
to_aa()
click to toggle source
lazily convert to Amino acid (once only)
# File lib/bio-alignment/codonsequence.rb, line 43 def to_aa aa = translate if not aa if gap? return '-' elsif undefined? return UNDEFINED else raise 'What?' end end aa end
to_s()
click to toggle source
# File lib/bio-alignment/codonsequence.rb, line 34 def to_s @codon end
undefined?()
click to toggle source
# File lib/bio-alignment/codonsequence.rb, line 26 def undefined? aa = translate if aa == nil and not gap? return true end false end
Private Instance Methods
translate()
click to toggle source
lazy translation of codon to amino acid
# File lib/bio-alignment/codonsequence.rb, line 60 def translate @aa ||= Bio::CodonTable[@codon_table][@codon] @aa.freeze end