From: martinahansen Date: Thu, 9 Dec 2010 12:28:53 +0000 (+0000) Subject: fixed genbank.rb X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=f5733e32c838328ea3dd9476ddf781fdde16c041;p=biopieces.git fixed genbank.rb git-svn-id: http://biopieces.googlecode.com/svn/trunk@1173 74ccb610-7750-0410-82ae-013aeee3265d --- diff --git a/code_ruby/Maasha/lib/genbank.rb b/code_ruby/Maasha/lib/genbank.rb index 1bff05d..b120cd4 100644 --- a/code_ruby/Maasha/lib/genbank.rb +++ b/code_ruby/Maasha/lib/genbank.rb @@ -66,7 +66,10 @@ class Genbank features.each do |record| keys.each_pair { |key,val| record[key] = val } loc = Locator.new(record[:LOCATOR], seq) - record[:SEQ] = loc.subseq.seq + record[:SEQ] = loc.subseq.seq + record[:STRAND] = loc.strand + record[:S_BEG] = loc.s_beg + record[:S_END] = loc.s_end yield record end @@ -279,8 +282,24 @@ class Locator parse_locator end - def to_s - @locator + def strand + if @locator.match "complement" + return "-" + else + return "+" + end + end + + def s_beg + if @locator =~ /(\d+)/ + return $1.to_i - 1 + end + end + + def s_end + if @locator.reverse =~ /(\d+)/ + return $1.reverse.to_i - 1 + end end private