Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/merb_paginate/core_ext.rb

Instance Method Summary collapse

Instance Method Details

#constantizeObject



84
85
86
87
88
89
90
# File 'lib/merb_paginate/core_ext.rb', line 84

def constantize
  unless /\A(?:::)?([A-Z]\w*(?:::[A-Z]\w*)*)\z/ =~ self
    raise NameError, "#{self.inspect} is not a valid constant name!"
  end

  Object.module_eval("::#{$1}", __FILE__, __LINE__)
end

#underscoreObject



76
77
78
79
80
81
82
# File 'lib/merb_paginate/core_ext.rb', line 76

def underscore
  self.gsub(/::/, '/').
  gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
  gsub(/([a-z\d])([A-Z])/,'\1_\2').
  tr("-", "_").
  downcase
end