recursive_valid? (DataMapper::Validate)

    # File lib/dm-validations.rb, line 104
        def recursive_valid?(target, context, state)
          valid = state
          target.instance_variables.each do |ivar|
            ivar_value = target.instance_variable_get(ivar)
            if ivar_value.validatable?
              valid = valid && recursive_valid?(ivar_value, context, valid)
            elsif ivar_value.respond_to?(:each)
              ivar_value.each do |item|
                if item.validatable?
                  valid = valid && recursive_valid?(item, context, valid)
                end
              end
            end
          end
          return valid && target.valid?
        end