Module: Mongo::Protocol::Serializers::Int64 Private
- Defined in:
- lib/mongo/protocol/serializers.rb
Overview
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
MongoDB wire protocol serialization strategy for 64-bit integers.
Serializes and de-serializes one 64-bit integer.
Class Method Summary collapse
-
.deserialize(buffer, _options = {}) ⇒ Fixnum
private
Deserializes a 64-bit Fixnum from the IO stream.
-
.serialize(buffer, value, _validating_keys = nil) ⇒ String
private
Serializes a number to a 64-bit integer.
Class Method Details
.deserialize(buffer, _options = {}) ⇒ Fixnum
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Deserializes a 64-bit Fixnum from the IO stream
159 160 161 |
# File 'lib/mongo/protocol/serializers.rb', line 159 def self.deserialize(buffer, = {}) buffer.get_int64 end |
.serialize(buffer, value, _validating_keys = nil) ⇒ String
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Serializes a number to a 64-bit integer
141 142 143 144 145 146 147 148 149 150 151 |
# File 'lib/mongo/protocol/serializers.rb', line 141 def self.serialize(buffer, value, _validating_keys = nil) if value.is_a?(BSON::Int64) value = if value.respond_to?(:value) # bson-ruby >= 4.6.0 value.value else value.instance_variable_get(:@integer) end end buffer.put_int64(value) end |