class Incline::ConstantEnum

Attributes

name[R]
value[R]

Public Class Methods

name_for(value) click to toggle source
# File lib/incline/constant_enum.rb, line 22
def self.name_for(value)
  names.key(value) || ''
end
named?(value) click to toggle source
# File lib/incline/constant_enum.rb, line 18
def self.named?(value)
  !name_for(value).blank?
end
new(value) click to toggle source
# File lib/incline/constant_enum.rb, line 6
def initialize(value)
  raise ArgumentError, 'Invalid value' unless self.class.named?(value)
  @value = value
  @name = self.class.name_for(value)
end

Private Class Methods

names() click to toggle source
# File lib/incline/constant_enum.rb, line 28
def self.names
  @names ||=
      begin
        ret = {}
        constants(false).each do |nm|
          ret[nm.to_s] = const_get(nm)
        end
        ret
      end
end

Public Instance Methods

to_s() click to toggle source
# File lib/incline/constant_enum.rb, line 12
def to_s
  name
end