class ExMachina::Util::String

Public Instance Methods

demodulize() click to toggle source

Convert ‘MyModule::MyClass’ to ‘MyClass’

# File lib/ex_machina/util.rb, line 5
def demodulize
  self.split("::").last
end
underscore() click to toggle source

Convert ‘MyClass’ to ‘my_class’

# File lib/ex_machina/util.rb, line 10
def underscore
  self
    .gsub("::", "/")
    .gsub(/(^[A-Z])/) { |match| "#{match.downcase}" }
    .gsub(/([A-Z])/) { |match| "_#{match.downcase}" }
end