class Bio::MAF::Struct
Attributes
size[R]
Public Class Methods
new(spec)
click to toggle source
# File lib/bio/maf/struct.rb, line 12 def initialize(spec) @members = [] @by_name = {} offset = 0 spec.each do |m_spec| m = Member.new(offset, *m_spec) @members << m @by_name[m.name] = m offset += m.size end @size = offset end
Public Instance Methods
extractor_fmt(*names)
click to toggle source
# File lib/bio/maf/struct.rb, line 29 def extractor_fmt(*names) extract = names.collect { |name| @by_name.fetch(name) } extract.sort_by! { |m| m.offset } fmt = '' pos = 0 extract.each do |member| if member.offset != pos fmt << "@#{member.offset}" pos = member.offset end fmt << member.fmt pos += member.size end return fmt end
fmt()
click to toggle source
# File lib/bio/maf/struct.rb, line 25 def fmt @members.collect { |m| m.fmt }.join('') end