Method: Bio::RestrictionEnzyme::Range::SequenceRange#initialize
- Defined in:
- lib/bio/util/restriction_enzyme/range/sequence_range.rb
#initialize(p_left = nil, p_right = nil, c_left = nil, c_right = nil) ⇒ SequenceRange
Returns a new instance of SequenceRange.
56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/bio/util/restriction_enzyme/range/sequence_range.rb', line 56 def initialize( p_left = nil, p_right = nil, c_left = nil, c_right = nil ) raise ArgumentError if p_left == nil and c_left == nil raise ArgumentError if p_right == nil and c_right == nil (raise ArgumentError unless p_left <= p_right) unless p_left == nil or p_right == nil (raise ArgumentError unless c_left <= c_right) unless c_left == nil or c_right == nil @p_left, @p_right, @c_left, @c_right = p_left, p_right, c_left, c_right @left = [p_left, c_left].compact.sort.first @right = [p_right, c_right].compact.sort.last @size = (@right - @left) + 1 unless @left == nil or @right == nil @cut_ranges = CutRanges.new @__fragments_current = false end |