Method: Bio::Alignment::OriginalPrivate.extract_seq

Defined in:
lib/bio/alignment.rb

.extract_seq(obj) ⇒ Object

Gets the sequence from given object.



1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
# File 'lib/bio/alignment.rb', line 1478

def extract_seq(obj)
  seq = nil
  if obj.is_a?(Bio::Sequence::NA) or obj.is_a?(Bio::Sequence::AA) then
    seq = obj
  else
    for m in [ :seq, :naseq, :aaseq ]
      begin
        seq = obj.send(m)
      rescue NameError, ArgumentError
        seq = nil
      end
      break if seq
    end
    seq = obj unless seq
  end
  seq
end