Sha256: 753933c18495e5a62dff1da8a33af583e4a2ccee5f4cbe23e736f971538119ee

Contents?: true

Size: 658 Bytes

Versions: 8

Compression:

Stored size: 658 Bytes

Contents

# frozen_string_literal: true

module Leftovers
  module Processors
    class PositionalArgument
      include ComparableInstance

      def initialize(index, then_processor)
        @index = index
        @then_processor = then_processor

        freeze
      end

      def process(_str, current_node, matched_node, acc)
        positional_arguments = current_node.positional_arguments
        return unless positional_arguments

        argument_node = positional_arguments[@index]
        return unless argument_node

        @then_processor.process(argument_node.to_literal_s, argument_node, matched_node, acc)
      end

      freeze
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
leftovers-0.12.2 lib/leftovers/processors/positional_argument.rb
leftovers-0.12.1 lib/leftovers/processors/positional_argument.rb
leftovers-0.12.0 lib/leftovers/processors/positional_argument.rb
leftovers-0.11.2 lib/leftovers/processors/positional_argument.rb
leftovers-0.11.1 lib/leftovers/processors/positional_argument.rb
leftovers-0.11.0 lib/leftovers/processors/positional_argument.rb
leftovers-0.10.0 lib/leftovers/processors/positional_argument.rb
leftovers-0.9.0 lib/leftovers/processors/positional_argument.rb