Sha256: 9191a929eaef290b355e6d06dcd9fa1c8f57ee56a8c87ca184975803d81606a3

Contents?: true

Size: 785 Bytes

Versions: 99

Compression:

Stored size: 785 Bytes

Contents

module ZendeskAPI
  # @private
  module Helpers
    # From https://github.com/rubyworks/facets/blob/master/lib/core/facets/string/modulize.rb
    def self.modulize_string(string)
      #gsub('__','/').  # why was this ever here?
      string.gsub(/__(.?)/){ "::#{$1.upcase}" }.
        gsub(/\/(.?)/){ "::#{$1.upcase}" }.
        gsub(/(?:_+|-+)([a-z])/){ $1.upcase }.
        gsub(/(\A|\s)([a-z])/){ $1 + $2.upcase }
    end

    # From https://github.com/rubyworks/facets/blob/master/lib/core/facets/string/snakecase.rb
    def self.snakecase_string(string)
      #gsub(/::/, '/').
      string.gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
        gsub(/([a-z\d])([A-Z])/,'\1_\2').
        tr('-', '_').
        gsub(/\s/, '_').
        gsub(/__+/, '_').
        downcase
    end
  end
end

Version data entries

99 entries across 99 versions & 1 rubygems

Version Path
zendesk_api-1.13.4 lib/zendesk_api/helpers.rb
zendesk_api-1.13.3 lib/zendesk_api/helpers.rb
zendesk_api-1.13.2 lib/zendesk_api/helpers.rb
zendesk_api-1.13.1 lib/zendesk_api/helpers.rb
zendesk_api-1.12.1 lib/zendesk_api/helpers.rb
zendesk_api-1.12.0 lib/zendesk_api/helpers.rb
zendesk_api-1.11.7 lib/zendesk_api/helpers.rb
zendesk_api-1.11.6 lib/zendesk_api/helpers.rb
zendesk_api-1.11.5 lib/zendesk_api/helpers.rb
zendesk_api-1.11.4 lib/zendesk_api/helpers.rb
zendesk_api-1.11.3 lib/zendesk_api/helpers.rb
zendesk_api-1.11.2 lib/zendesk_api/helpers.rb
zendesk_api-1.11.1 lib/zendesk_api/helpers.rb
zendesk_api-1.11.0 lib/zendesk_api/helpers.rb
zendesk_api-1.10.0 lib/zendesk_api/helpers.rb
zendesk_api-1.9.6 lib/zendesk_api/helpers.rb
zendesk_api-1.9.5 lib/zendesk_api/helpers.rb
zendesk_api-1.9.4 lib/zendesk_api/helpers.rb
zendesk_api-1.9.3 lib/zendesk_api/helpers.rb
zendesk_api-1.9.2 lib/zendesk_api/helpers.rb