class Gem::RequestSet::Lockfile::Parser
Public Class Methods
new(tokenizer, set, platforms, filename = nil)
click to toggle source
Parses lockfiles
# File lib/rubygems/request_set/lockfile/parser.rb, line 5 def initialize tokenizer, set, platforms, filename = nil @tokens = tokenizer @filename = filename @set = set @platforms = platforms end
Public Instance Methods
parse()
click to toggle source
# File lib/rubygems/request_set/lockfile/parser.rb, line 12 def parse until @tokens.empty? do type, data, column, line = get case type when :section then @tokens.skip :newline case data when 'DEPENDENCIES' then parse_DEPENDENCIES when 'GIT' then parse_GIT when 'GEM' then parse_GEM when 'PATH' then parse_PATH when 'PLATFORMS' then parse_PLATFORMS else type, = get until @tokens.empty? or peek.first == :section end else raise "BUG: unhandled token #{type} (#{data.inspect}) at line #{line} column #{column}" end end end