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.2.1 lib/zendesk_api/helpers.rb
zendesk_api-1.1.3 lib/zendesk_api/helpers.rb
zendesk_api-1.1.2 lib/zendesk_api/helpers.rb
zendesk_api-1.1.1 lib/zendesk_api/helpers.rb
zendesk_api-1.1.0 lib/zendesk_api/helpers.rb
zendesk_api-1.0.7 lib/zendesk_api/helpers.rb
zendesk_api-1.0.6 lib/zendesk_api/helpers.rb
zendesk_api-1.0.5 lib/zendesk_api/helpers.rb
zendesk_api-1.0.4 lib/zendesk_api/helpers.rb
zendesk_api-1.0.3 lib/zendesk_api/helpers.rb
zendesk_api-1.0.2 lib/zendesk_api/helpers.rb
zendesk_api-1.0.1 lib/zendesk_api/helpers.rb
zendesk_api-1.0.0 lib/zendesk_api/helpers.rb
zendesk_api-0.3.13 lib/zendesk_api/helpers.rb
zendesk_api-0.3.12 lib/zendesk_api/helpers.rb
zendesk_api-0.4.0.rc3 lib/zendesk_api/helpers.rb
zendesk_api-0.4.0.rc2 lib/zendesk_api/helpers.rb
zendesk_api-0.3.11 lib/zendesk_api/helpers.rb
zendesk_api-0.3.10 lib/zendesk_api/helpers.rb
zendesk_api-0.3.9 lib/zendesk_api/helpers.rb