Module: Extras::Array
- Included in:
- Array
- Defined in:
- lib/extras/array.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
-
#stringify(allowed_keys: nil, allowed_vals: nil) ⇒ Object
———————————————————————— Stringify an array’s keys, skipping anything within the allowed list.
-
#symbolize(allowed_keys: nil, allowed_vals: nil) ⇒ Object
———————————————————————— Symbolize an array’s keys, skpping anything within the allowed list.
Instance Method Details
#stringify(allowed_keys: nil, allowed_vals: nil) ⇒ Object
Stringify an array’s keys, skipping anything within the allowed list.
25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/extras/array.rb', line 25 def stringify(allowed_keys: nil, allowed_vals: nil) keys = allowed_keys || self.class.allowed[:keys] map do |v| v = v.to_s unless keys.include?(v.class) !v.respond_to?(:stringify) ? v : v.stringify({ :allowed_keys => allowed_keys, :allowed_vals => allowed_vals }) end end |
#symbolize(allowed_keys: nil, allowed_vals: nil) ⇒ Object
Symbolize an array’s keys, skpping anything within the allowed list.
41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/extras/array.rb', line 41 def symbolize(allowed_keys: nil, allowed_vals: nil) keys = allowed_keys || self.class.allowed[:keys] map do |v| v = v.to_sym unless !v.respond_to?(:to_sym) || keys.include?(v.class) !v.respond_to?(:symbolize) ? v : v.symbolize({ :allowed_keys => allowed_keys, :allowed_vals => allowed_vals }) end end |