# File lib/bson/bson_ruby.rb, line 454 def serialize_number_element(buf, key, val, type) if type == NUMBER buf.put(type) self.class.serialize_key(buf, key) buf.put_double(val) else if val > INT64_MAX or val < INT64_MIN raise RangeError.new("MongoDB can only handle 8-byte ints") end if val > INT32_MAX or val < INT32_MIN buf.put(NUMBER_LONG) self.class.serialize_key(buf, key) buf.put_long(val) else buf.put(type) self.class.serialize_key(buf, key) buf.put_int(val) end end end