Sha256: 7345201f687a6507a473d90b30f8405dff4b11af0f833ab155dea0d77b56ccba

Contents?: true

Size: 712 Bytes

Versions: 4

Compression:

Stored size: 712 Bytes

Contents

# frozen_string_literal: true

module RubyLokaliseApi
  # Basic utilitiy methods
  module Utils
    module Classes
      refine Object do
        # Turn `Module::Nested::ClassName` to just `ClassName`
        def base_name
          name.split('::').last
        end

        # Converts object to array unless it is already an array
        def to_array
          is_a?(Array) ? self : [self]
        end

        # Converts object to array and then places this array
        # inside hash under the provided key
        def to_array_obj(key)
          return self if is_a?(Hash) && (key?(key) || key?(key.to_s))

          { key => to_array }
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ruby-lokalise-api-9.0.1 lib/ruby_lokalise_api/utils/classes.rb
ruby-lokalise-api-9.0.0 lib/ruby_lokalise_api/utils/classes.rb
ruby-lokalise-api-8.0.1 lib/ruby_lokalise_api/utils/classes.rb
ruby-lokalise-api-8.0.0 lib/ruby_lokalise_api/utils/classes.rb