Class: Romaniac::Const
Constant Summary collapse
- ROMAN_PATTERN =
/\A(?i)M{0,3}(D?C{0,3}|C[DM])(L?X{0,3}|X[LC])(V?I{0,3}|I[VX])\z/i
Class Method Summary collapse
Class Method Details
.define!(name) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/romaniac/const.rb', line 12 def self.define!(name) if Romaniac::Converter::ARABIC_ROMAN.has_value?(name) if RUBY_VERSION == '1.8.7' arabic = Romaniac::Converter::ARABIC_ROMAN.index(name) else arabic = Romaniac::Converter::ARABIC_ROMAN.key(name) end else arabic = Romaniac::Converter.roman_to_arabic(name) end Object.const_set(name, Roman(arabic)) end |