class MzID::ParserSax::PeptideHandler
handler for Peptide elements
Constants
- ATTR
Attributes
mod_h[RW]
pbar[RW]
pep_h[RW]
Public Class Methods
new(num_pep=nil)
click to toggle source
# File lib/mzid/parser_sax.rb, line 79 def initialize(num_pep=nil) @pbar = num_pep.nil? ? nil : ProgressBar.new("Peptides", num_pep) @pep_h = Hash.new @mod_h = Hash.new end
Public Instance Methods
attr(name, value)
click to toggle source
# File lib/mzid/parser_sax.rb, line 93 def attr(name, value) return unless ATTR.include?(@curr_node) @h[name] = value if @curr_node != :Modification @mh.push(value) if @curr_node == :Modification end
end_element(name)
click to toggle source
# File lib/mzid/parser_sax.rb, line 104 def end_element(name) return unless name == :Peptide @pbar.inc if !@pbar.nil? @pep_h[@h[:id].to_sym] = @h[:PeptideSequence] if !@mh.empty? then @mod_h[@h[:id].to_sym] = {} (1..@mh.size-1).step(2) do |i| @mod_h[@h[:id].to_sym][@mh[i].to_i] = @mh[i-1] end end end
start_element(name)
click to toggle source
# File lib/mzid/parser_sax.rb, line 87 def start_element(name) @h = {} if name == :Peptide @mh = [] if name == :Peptide @curr_node = name end
text(value)
click to toggle source
# File lib/mzid/parser_sax.rb, line 99 def text(value) return unless ATTR.include?(@curr_node) @h[@curr_node] = value end