Sha256: 8786458ce51be97305372f46cbda4b6aaaf48596078cdab78d8701e835d558f4

Contents?: true

Size: 768 Bytes

Versions: 4

Compression:

Stored size: 768 Bytes

Contents

# frozen_string_literal: true

module Leftovers
  module ProcessorBuilders
    module TransformSet
      class << self
        def build(transforms, final_processor)
          each_builder(final_processor).each_or_self(transforms) do |transform|
            case transform
            when ::Hash, ::Symbol then TransformChain.build(transform, final_processor)
            # :nocov:
            else raise UnexpectedCase, "Unhandled value #{transform.inspect}"
              # :nocov:
            end
          end
        end

        private

        def each_builder(final_processor)
          if final_processor == Processors::AddDefinitionNode
            EachForDefinitionSet
          else
            Each
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
leftovers-0.12.2 lib/leftovers/processor_builders/transform_set.rb
leftovers-0.12.1 lib/leftovers/processor_builders/transform_set.rb
leftovers-0.12.0 lib/leftovers/processor_builders/transform_set.rb
leftovers-0.11.2 lib/leftovers/processor_builders/transform_set.rb