Module: CodeTeams::Utils
- Extended by:
- T::Sig
- Defined in:
- lib/code_teams/utils.rb
Class Method Summary collapse
Class Method Details
.deep_stringify_keys(value) ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/code_teams/utils.rb', line 27 def deep_stringify_keys(value) case value when Hash value.each_with_object({}) do |(k, v), acc| acc[k.to_s] = deep_stringify_keys(v) end when Array value.map { |v| deep_stringify_keys(v) } else value end end |
.demodulize(string) ⇒ Object
21 22 23 |
# File 'lib/code_teams/utils.rb', line 21 def demodulize(string) T.must(string.split('::').last) end |
.underscore(string) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/code_teams/utils.rb', line 12 def underscore(string) string.gsub('::', '/') .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2') .gsub(/([a-z\d])([A-Z])/, '\1_\2') .tr('-', '_') .downcase end |