Module: Helpers
- Defined in:
- lib/violet/helpers.rb
Class Method Summary collapse
-
.constantize(camel_cased_word) ⇒ Object
Credits Copyright © 2005 David Heinemeier Hansson taken from active_support/inflector.rb (MIT licence) see rubyforge.org/projects/activesupport.
Class Method Details
.constantize(camel_cased_word) ⇒ Object
Credits
Copyright (c) 2005 David Heinemeier Hansson
taken from active_support/inflector.rb (MIT licence) see rubyforge.org/projects/activesupport
Summary
Constantize tries to find a declared constant with the name specified in the string. It raises a NameError when the name is not in CamelCase or is not initialized.
Examples
Helpers.constantize("Module") #=> Module
Helpers.constantize("Class") #=> Class
41 42 43 44 45 46 47 |
# File 'lib/violet/helpers.rb', line 41 def Helpers.constantize(camel_cased_word) unless /\A(?:::)?([A-Z]\w*(?:::[A-Z]\w*)*)\z/ =~ camel_cased_word raise NameError.new("#{camel_cased_word.inspect} is not a valid constant name!") end Object.module_eval("::#{$1}", __FILE__, __LINE__) end |