Module: ActiveEnum

Defined in:
lib/active_enum.rb,
lib/active_enum/base.rb,
lib/active_enum/railtie.rb,
lib/active_enum/version.rb,
lib/active_enum/extensions.rb,
lib/active_enum/acts_as_enum.rb,
lib/active_enum/storage/i18n_store.rb,
lib/active_enum/storage/memory_store.rb,
lib/active_enum/storage/abstract_store.rb,
lib/active_enum/form_helpers/formtastic.rb,
lib/active_enum/form_helpers/formtastic2.rb,
lib/active_enum/form_helpers/simple_form.rb,
lib/generators/active_enum/locale_generator.rb,
lib/generators/active_enum/install_generator.rb

Defined Under Namespace

Modules: ActsAsEnum, Extensions, FormHelpers, Generators, Storage Classes: Base, DuplicateValue, EnumDefinitions, EnumNotFound, InvalidValue, Railtie

Constant Summary collapse

VERSION =
'0.9.12'
@@enum_classes =
[]
@@use_name_as_value =
false
@@storage =
:memory
@@storage_options =
{}
@@extend_classes =
[]

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.define(&block) ⇒ Object

Define enums in bulk



44
45
46
47
# File 'lib/active_enum.rb', line 44

def self.define(&block)
  raise "Define requires block" unless block_given?
  EnumDefinitions.new.instance_eval(&block)
end

.setup {|_self| ... } ⇒ Object

Setup method for plugin configuration

Yields:

  • (_self)

Yield Parameters:

  • _self (ActiveEnum)

    the object that the method was called on



29
30
31
32
# File 'lib/active_enum.rb', line 29

def self.setup
  yield self
  extend_classes!
end

.storage_classObject



49
50
51
# File 'lib/active_enum.rb', line 49

def self.storage_class
  @@storage_class ||= "ActiveEnum::Storage::#{storage.to_s.classify}Store".constantize
end

Instance Method Details

#storage=(*args) ⇒ Object



20
21
22
23
# File 'lib/active_enum.rb', line 20

def storage=(*args)
  @@storage_options = args.extract_options!
  @@storage = args.first
end