Module: EnumArgs::ProxiedEnumerable::ClassMethods

Defined in:
lib/enum_args/proxied_enumerable.rb

Instance Method Summary collapse

Instance Method Details

#enum_args_accessor_methodObject



12
13
14
# File 'lib/enum_args/proxied_enumerable.rb', line 12

def enum_args_accessor_method
  @enum_args_accessor_method ||= :enum_args
end

#enum_args_default_argsObject



16
17
18
# File 'lib/enum_args/proxied_enumerable.rb', line 16

def enum_args_default_args
  @enum_args_default_args ||= []
end

#enum_args_default_usingObject



20
21
22
# File 'lib/enum_args/proxied_enumerable.rb', line 20

def enum_args_default_using
  @enum_args_default_using ||= {}
end

#enum_args_for(method, *args, using: {}, with_enum_args_as: :enum_args) ⇒ Object

Raises:

  • (TypeError)


24
25
26
27
28
29
30
# File 'lib/enum_args/proxied_enumerable.rb', line 24

def enum_args_for(method, *args, using: {}, with_enum_args_as: :enum_args)
  @enum_args_method = method
  @enum_args_default_args = args
  raise TypeError, "expected Hash, found #{using.class}" unless using.is_a? Hash
  @enum_args_default_using = using
  @enum_args_accessor_method = with_enum_args_as
end

#enum_args_methodObject



8
9
10
# File 'lib/enum_args/proxied_enumerable.rb', line 8

def enum_args_method
  @enum_args_method ||= :iterator
end