]> git.donarmstrong.com Git - biopieces.git/commitdiff
refactor subseq to Seq#[]
authormartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Mon, 13 Jan 2014 10:38:40 +0000 (10:38 +0000)
committermartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Mon, 13 Jan 2014 10:38:40 +0000 (10:38 +0000)
git-svn-id: http://biopieces.googlecode.com/svn/trunk@2287 74ccb610-7750-0410-82ae-013aeee3265d

bp_bin/clip_adaptor
bp_bin/remove_primers
bp_bin/split_pair_seq

index 1e722b28ba8f64c322006e566d61c00681bb70b9..1bf6bf5240a61f374ec4ac9bed8d7e6e51aa001f 100755 (executable)
@@ -42,12 +42,12 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
       entry = Seq.new_bp(record)
 
       if record[:ADAPTOR_POS_RIGHT]
-        entry.subseq!(0, record[:ADAPTOR_POS_RIGHT].to_i)
+        entry = entry[0 ... record[:ADAPTOR_POS_RIGHT].to_i]
       end
 
       if record[:ADAPTOR_POS_LEFT]
         if record[:ADAPTOR_POS_LEFT].to_i + record[:ADAPTOR_LEN_LEFT].to_i < entry.length
-          entry.subseq!(record[:ADAPTOR_POS_LEFT].to_i + record[:ADAPTOR_LEN_LEFT].to_i)
+          entry = entry[record[:ADAPTOR_POS_LEFT].to_i + record[:ADAPTOR_LEN_LEFT].to_i .. -1]
         end
       end
 
index 88c1a81c3351df23fca647bec6d131d5b64e9dd9..6544afce3087b02dd53f83f8202e7f7c647c4aa5 100755 (executable)
@@ -50,22 +50,22 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
     if record[:SEQ]
       forward = false
       reverse = false
-      seq = Seq.new_bp(record)
+      entry = Seq.new_bp(record)
 
-      seq.patscan(options[:forward].to_s,
+      entry.patscan(options[:forward].to_s,
                   max_mismatches: options[:mismatches],
                   max_insertions: options[:insertions],
                   max_deletions:  options[:deletions]) do |match|
         record[:FORWARD_POS] = match.pos
         record[:FORWARD_LEN] = match.length
         pos = match.pos + match.length
-        len = seq.length - pos
-        seq.subseq!(pos, len) if len > 0
+        len = entry.length - pos
+        entry = entry[pos ... pos + len] if len > 0
         forward = true
         break
       end
 
-      seq.patscan(options[:reverse].to_s,
+      entry.patscan(options[:reverse].to_s,
                   max_mismatches: options[:mismatches],
                   max_insertions: options[:insertions],
                   max_deletions:  options[:deletions]) do |match|
@@ -75,10 +75,10 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
         len = match.pos
 
         if len == 0
-          seq.seq  = ""
-          seq.qual = "" if seq.qual
+          entry.seq  = ""
+          entry.qual = "" if entry.qual
         else
-          seq.subseq!(pos, len)
+          entry = entry[pos ... pos + len]
         end 
 
         reverse = true
@@ -86,7 +86,7 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
       end
 
       if forward or reverse
-        record.merge!(seq.to_bp)
+        record.merge!(entry.to_bp)
       end
 
       output.puts record
index b0425acd2c0b02e27413554b74e806101e919913..cd0aea6533a625705bdfef66375d352c44a1146f 100755 (executable)
@@ -46,8 +46,8 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
         raise "SEQ_LEN_LEFT + SEQ_LEN_RIGHT != SEQ_LEN #{len_left} + #{len_right} != #{entry.length}"
       end
 
-      entry1 = entry.subseq(0, len_left)
-      entry2 = entry.subseq(len_left)
+      entry1 = entry[0 ... len_left]
+      entry2 = entry[len_left .. -1]
 
       if entry.seq_name =~ /^[^ ]+ \d:/
         entry2.seq_name.sub!(/ \d:/, " 2:")