Sha256: c789e9c6d622ce2c029b824d34f082f466d125f5645c5206c7b3ed54c45a7f13

Contents?: true

Size: 810 Bytes

Versions: 150

Compression:

Stored size: 810 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'
require 'avm/eac_ruby_base1/bundler/incompatible_parser/depends_on'
require 'avm/eac_ruby_base1/bundler/incompatible_parser/gem_conflict'
require 'avm/eac_ruby_base1/bundler/incompatible_parser/in_gemfile'

module Avm
  module EacRubyBase1
    module Bundler
      class IncompatibleParser
        class LineFactory
          TYPES = [GemConflict, InGemfile, DependsOn, VersionRequirement].freeze

          enable_simple_cache
          common_constructor :content do
            self.content = content.strip
          end

          delegate :blank?, to: :content

          private

          def result_uncached
            TYPES.lazy.map { |type| type.parse(content) }.find(&:present?)
          end
        end
      end
    end
  end
end

Version data entries

150 entries across 150 versions & 3 rubygems

Version Path
avm-eac_ruby_base1-0.31.1 lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.75.1 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
avm-eac_ruby_base1-0.31.0 lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.75.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.74.1 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.74.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.73.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.72.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.70.1 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.70.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.69.1 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.69.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.68.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.67.1 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.67.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.66.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
avm-eac_ruby_base1-0.30.3 lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.65.1 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.65.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb
eac_tools-0.64.0 sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb