Module: Seahorse::Util
- Defined in:
- lib/seahorse/util.rb
Class Method Summary collapse
- .irregular_inflections(hash) ⇒ Object private
- .load_json(path) ⇒ Object
-
.underscore(string) ⇒ String
Returns the underscored version of the given string.
- .uri_escape(string) ⇒ Object
Class Method Details
.irregular_inflections(hash) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
8 9 10 11 |
# File 'lib/seahorse/util.rb', line 8 def irregular_inflections(hash) @irregular_inflections.update(hash) @irregular_regex = Regexp.new(@irregular_inflections.keys.join('|')) end |
.load_json(path) ⇒ Object
27 28 29 |
# File 'lib/seahorse/util.rb', line 27 def load_json(path) MultiJson.load(File.open(path, 'r', encoding: 'UTF-8') { |f| f.read }) end |
.underscore(string) ⇒ String
Returns the underscored version of the given string.
15 16 17 18 19 20 21 |
# File 'lib/seahorse/util.rb', line 15 def underscore(string) string. gsub(@irregular_regex) { |word| '_' + @irregular_inflections[word] }. gsub(/([A-Z0-9]+)([A-Z][a-z])/, '\1_\2'). scan(/[a-z0-9]+|\d+|[A-Z0-9]+[a-z]*/). join('_').downcase end |
.uri_escape(string) ⇒ Object
23 24 25 |
# File 'lib/seahorse/util.rb', line 23 def uri_escape(string) CGI::escape(string.encode('UTF-8')).gsub('+', '%20').gsub('%7E', '~') end |