class Gem::RequestSet::Lockfile::Parser - Documentation for Ruby 4.0
Description: Documentation for the Gem::RequestSet::Lockfile::Parser class
Keywords: ruby,class,Gem::RequestSet::Lockfile::Parser

🔍

No recent searches

# class Gem::RequestSet::Lockfile::Parser

### Public Class Methods

new (tokenizer, set, platforms, filename = nil)
Source

    # File lib/rubygems/request_set/lockfile/parser.rb, line 7
    def initialize(tokenizer, set, platforms, filename = nil)
      @tokens    = tokenizer
      @filename  = filename
      @set       = set
      @platforms = platforms
    end

Parses lockfiles

### Public Instance Methods

parse ()
Source

    # File lib/rubygems/request_set/lockfile/parser.rb, line 14
    def parse
      until @tokens.empty? do
        token = get

        case token.type
        when :section then
          @tokens.skip :newline

          case token.value
          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
            token = get until @tokens.empty? || peek.first == :section
          end
        else
          raise "BUG: unhandled token #{token.type} (#{token.value.inspect}) at line #{token.line} column #{token.column}"
        end
      end
    end