Method: Packable::Packers.to_class_option_list
- Defined in:
- lib/packable/packers.rb
.to_class_option_list(*arg) ⇒ Object
:nodoc:
51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/packable/packers.rb', line 51 def self.to_class_option_list(*arg) #:nodoc: r = [] until arg.empty? do k, = original = arg.shift k, = global_lookup(k) if k.is_a? Symbol raise TypeError, "Expected a class or symbol: #{k.inspect}" unless k.instance_of? Class ||= arg.first.is_a?(Hash) ? arg.shift.tap{|o| original = [original, o]} : :default r << [k, k.packers.finalize(), original] end r end |