# File lib/mongo/protocol/serializers.rb, line 167 def self.serialize(buffer, value, max_bson_size = nil, validating_keys = BSON::Config.validating_keys?) value.each do |section| case section[:type] when PayloadZero::TYPE PayloadZero.serialize(buffer, section[:payload], max_bson_size, false) when nil PayloadZero.serialize(buffer, section[:payload], max_bson_size, false) when PayloadOne::TYPE PayloadOne.serialize(buffer, section[:payload], max_bson_size, validating_keys) else raise Error::UnknownPayloadType.new(section[:type]) end end end