Class: Enum::Base

Inherits:
BasicObject
Defined in:
lib/enum/base.rb

Class Method Summary collapse

Class Method Details

.allObject



16
17
18
# File 'lib/enum/base.rb', line 16

def all
  history
end

.enum(t) ⇒ Object



32
33
34
35
36
37
38
# File 'lib/enum/base.rb', line 32

def enum(t)
  ts = t.to_s
  unless store.include?(ts)
    raise(TokenNotFoundError, "token '#{t}'' not found in the enum #{self}")
  end
  ts
end

.enums(*tokens) ⇒ Object



28
29
30
# File 'lib/enum/base.rb', line 28

def enums(*tokens)
  tokens.map { |token| enum(token) }
end

.include?(token) ⇒ Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/enum/base.rb', line 24

def include?(token)
  store.include?(token.to_s)
end

.index(token) ⇒ Object



44
45
46
# File 'lib/enum/base.rb', line 44

def index(token)
  history.index(enum(token))
end

.indexesObject



20
21
22
# File 'lib/enum/base.rb', line 20

def indexes
  (0...store.size).to_a
end

.inherited(child) ⇒ Object



6
7
8
9
10
# File 'lib/enum/base.rb', line 6

def inherited(child)
  return if self == Enum

  init_child_class(child)
end

.name(t) ⇒ Object



40
41
42
# File 'lib/enum/base.rb', line 40

def name(t)
  translate(enum(t))
end

.values(*ary) ⇒ Object



12
13
14
# File 'lib/enum/base.rb', line 12

def values(*ary)
  ary.each { |val| add_value(val.to_s) }
end