Sha256: 78d0b71c1d0ae061af462eee3bee95a4fac25b811f8f67b33be415df4a90d69d

Contents?: true

Size: 835 Bytes

Versions: 4

Compression:

Stored size: 835 Bytes

Contents

# frozen_string_literal: true

module Leftovers
  module ProcessorBuilders
    module AddPrefix
      class << self
        def build(argument, then_processor)
          case argument
          when ::Hash then build_hash(argument, then_processor)
          when ::String then ::Leftovers::Processors::AddPrefix.new(argument, then_processor)
            # :nocov:
          else raise Leftovers::UnexpectedCase, "Unhandled value #{argument.inspect}"
            # :nocov:
          end
        end

        private

        def build_hash(argument, then_processor)
          dynamic_prefix = ::Leftovers::ProcessorBuilders::Action.build(
            argument, ::Leftovers::Processors::AppendSym
          )
          ::Leftovers::Processors::AddDynamicPrefix.new(dynamic_prefix, then_processor)
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
leftovers-0.11.1 lib/leftovers/processor_builders/add_prefix.rb
leftovers-0.11.0 lib/leftovers/processor_builders/add_prefix.rb
leftovers-0.10.0 lib/leftovers/processor_builders/add_prefix.rb
leftovers-0.9.0 lib/leftovers/processor_builders/add_prefix.rb