]> git.donarmstrong.com Git - biopieces.git/commitdiff
fixed genbank.rb
authormartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Thu, 9 Dec 2010 12:28:53 +0000 (12:28 +0000)
committermartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Thu, 9 Dec 2010 12:28:53 +0000 (12:28 +0000)
git-svn-id: http://biopieces.googlecode.com/svn/trunk@1173 74ccb610-7750-0410-82ae-013aeee3265d

code_ruby/Maasha/lib/genbank.rb

index 1bff05dd8318a9234cbdab54e7168f28b0351b21..b120cd4b17e42239081e5576614b04da50a9df5b 100644 (file)
@@ -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