lib/wash_out/param.rb in wash_out-0.7.1 vs lib/wash_out/param.rb in wash_out-0.8.1

- old
+ new

@@ -131,10 +131,14 @@ # This function returns an array of WashOut::Param objects. def self.parse_def(definition) raise RuntimeError, "[] should not be used in your params. Use nil if you want to mark empty set." if definition == [] return [] if definition == nil - if [Array, Symbol, Class].include?(definition.class) + if definition.is_a?(Class) && definition.ancestors.include?(WashOut::Type) + definition = definition.wash_out_param_map + end + + if [Array, Symbol].include?(definition.class) definition = { :value => definition } end if definition.is_a? Hash definition.map do |name, opt|