module HighLine::BuiltinStyles::ClassMethods
def const_missing(name)
-
name
(Symbol
) -- missing constant name
def const_missing(name) raise NameError, "Bad color or uninitialized constant #{name}" unless name.to_s =~ RGB_COLOR_PATTERN on = Regexp.last_match(1) suffix = Regexp.last_match(4) code_name = if suffix Regexp.last_match(1).to_s + Regexp.last_match(2) + Regexp.last_match(3) else name.to_s end style_name = code_name + "_STYLE" style = Style.rgb(Regexp.last_match(3)) style = style.on if on const_set(style_name, style) const_set(code_name, style.code) suffix ? style : style.code end