Method: Erector::Erect#constantize

Defined in:
lib/erector/erect/erect.rb

#constantize(camel_cased_word) ⇒ Object



158
159
160
161
162
163
# File 'lib/erector/erect/erect.rb', line 158

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