# Method that returns a subsequence of a given length
# beginning at a random position.
def subseq_rand(length)
- if self.seq.length - length + 1 == 0
+ if self.length - length + 1 == 0
start = 0
else
- start = rand(self.seq.length - length + 1)
+ start = rand(self.length - length + 1)
end
self.subseq(start, length)
# in the sequence that overlaps with the adaptor or -1 if the
# adaptor was not found.
def adaptor_locate_right(adaptor)
- pos = self.seq.length - adaptor.length
+ pos = self.length - adaptor.length
- while pos < self.seq.length
- len = self.seq.length - pos
+ while pos < self.length
+ len = self.length - pos
subseq = self.seq[pos ... pos + len].upcase
subadaptor = adaptor[0 ... len].upcase
pos = self.adaptor_locate_left(adaptor)
if pos > 0
- self.seq = self.seq[pos + 1 ... self.seq.length]
+ self.seq = self.seq[pos + 1 ... self.length]
self.qual = self.qual[pos + 1 ... self.qual.length] unless self.qual.nil?
end
end
@seq.seq.upcase.scan @pattern do
pos = $`.length + @cut_pos - 1
- if pos >= 0 and pos < @seq.seq.length - 2
+ if pos >= 0 and pos < @seq.length - 2
seq = Seq.new("#{@seq.seq_name}[#{@offset}-#{pos}]", @seq.seq[@offset .. pos], @seq.type)
yield seq
if @offset < 0
@offset = 0
- elsif @offset > @seq.seq.length
+ elsif @offset > @seq.length
@offset = 0
end
- seq = Seq.new("#{@seq.seq_name}[#{@offset}-#{@seq.seq.length - 1}]", @seq.seq[@offset .. @seq.seq.length], @seq.type)
+ seq = Seq.new("#{@seq.seq_name}[#{@offset}-#{@seq.length - 1}]", @seq.seq[@offset .. @seq.length], @seq.type)
yield seq