Module: WC::Essentials::ClassRegisters

Extended by:
ClassRegisters
Included in:
ClassRegisters
Defined in:
lib/wc/essentials/class_registers.rb

Overview

Helpers for registration

Instance Method Summary collapse

Instance Method Details

#after_validation(*collectors) ⇒ Object

Register collectors to be run once main validation. Registered collectors here will not run if halted early



48
49
50
# File 'lib/wc/essentials/class_registers.rb', line 48

def after_validation(*collectors)
  WC::Essentials::ClassHelpers.assign_class_variable(self, :collectors, collectors)
end

#fields(fields = {}) ⇒ Object

Register CSV fields and if required

Parameters:

  • (Hash)


28
29
30
# File 'lib/wc/essentials/class_registers.rb', line 28

def fields(fields = {})
  WC::Essentials::ClassHelpers.assign_class_variable(self, :fields, fields)
end

#identities(identities = {}) ⇒ Object

Register CSV fields that represent identities

Parameters:

  • identities (Hash) (defaults to: {})

    Key/value where value represent boolean allow duplication



34
35
36
# File 'lib/wc/essentials/class_registers.rb', line 34

def identities(identities = {})
  WC::Essentials::ClassHelpers.assign_class_variable(self, :identities, identities)
end

#validators(*validators) ⇒ Object

Register validators to be run for validation



40
41
42
# File 'lib/wc/essentials/class_registers.rb', line 40

def validators(*validators)
  WC::Essentials::ClassHelpers.assign_class_variable(self, :validators, validators)
end

#var(name, default = []) ⇒ Object

Class variable getter

Parameters:

  • name (symbol)
  • default (any) (defaults to: [])


19
20
21
22
23
24
# File 'lib/wc/essentials/class_registers.rb', line 19

def var(name, default = [])
  var_name = WC::Essentials::ClassHelpers.klass_var_name(self, name)
  class_variable_get(var_name)
rescue StandardError
  default
end