class Gem::RequestSet::Lockfile::Parser

def parse_PATH # :nodoc:

:nodoc:
def parse_PATH # :nodoc:
  get :entry, 'remote'
  directory = get(:text).value
  skip :newline
  get :entry, 'specs'
  skip :newline
  set = Gem::Resolver::VendorSet.new
  last_spec = nil
  while not @tokens.empty? and :text == peek.first do
    token = get :text
    name = token.value
    column = token.column
    case peek[0]
    when :newline then
      last_spec.add_dependency Gem::Dependency.new name if column == 6
    when :l_paren then
      get :l_paren
      token = get [:text, :requirement]
      type = token.type
      data = token.value
      if type == :text and column == 4 then
        last_spec = set.add_vendor_gem name, directory
      else
        dependency = parse_dependency name, data
        last_spec.dependencies << dependency
      end
      get :r_paren
    else
      raise "BUG: unknown token #{peek}"
    end
    skip :newline
  end
  @set.sets << set
end