Sha256: 8caf0d4b5feeb8c10fd2c71d499a8f8c7ac26685c2cffd8036b77998613b9f00

Contents?: true

Size: 775 Bytes

Versions: 4

Compression:

Stored size: 775 Bytes

Contents

# frozen_string_literal: true

module Leftovers
  module Processors
    class Singularize
      include ComparableInstance

      def initialize(then_processor)
        @then_processor = then_processor

        freeze
      end

      def process(str, current_node, matched_node, acc)
        return unless str

        @then_processor.process(str.singularize, current_node, matched_node, acc)
      rescue ::NoMethodError
        ::Leftovers.error <<~MESSAGE
          Tried using the ::String#singularize method, but the activesupport gem was not available and/or not required
          `gem install activesupport`, and/or add `requires: ['active_support', 'active_support/core_ext/string']` to your .leftovers.yml
        MESSAGE
      end

      freeze
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
leftovers-0.12.2 lib/leftovers/processors/singularize.rb
leftovers-0.12.1 lib/leftovers/processors/singularize.rb
leftovers-0.12.0 lib/leftovers/processors/singularize.rb
leftovers-0.11.2 lib/leftovers/processors/singularize.rb