Módulo: Mongo::Protocol::Serializers::Int32 Private

Definido em:
lib/mongo/protocol/serializers.rb

Visão geral

Este módulo faz parte de uma API privada. Você deve evitar usar este módulo, se possível, pois ele pode ser removido ou alterado no futuro.

Estratégia de serialização de protocolo de conexão do MongoDB para 32inteiros de bits.

Serializa e deserializa um inteiro 32-bit.

Recolhimento do Resumo do método de classe

Detalhes do método de classe

.desserializar(buffer, opções = {}) ➤ Fixnum

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Deserializa um Fixnum 32-bit do fluxo de IO

Parâmetros:

  • buffer (string)

    Buffer contendo o número inteiro de 32bits

  • opções (Hash) (padrão para: {})

    Atualmente, este método não aceita opções.

Retorna:

  • (Fixnum)

    Int32int desserializado



135
136
137
# Arquivo 'lib/mongo/protocol/serializers.rb', linha 135

def auto.desserializar(buffer, opções = {})
  buffer.get_int32
end

.serializar(buffer, valor, validate_keys = nil) ➤ string

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Serializa um número para um número inteiro de 32bits

Parâmetros:

  • buffer (string)

    Buffer para receber o Int32 serializado.

  • valor (Inteiro | BSON::Int32)

    32-bit inteiro a ser serializado.

Retorna:

  • (string)

    Buffer com valor serializado.



117
118
119
120
121
122
123
124
125
126
127
# Arquivo 'lib/mongo/protocol/serializers.rb', linha 117

def auto.serializar(buffer, valor, validate_keys = nada)
  se valor.is_a?(BSON::Int32)
    se valor.respond_to?(:value)
      # bson-ruby >= 4.6.0
      valor = valor.valor
    mais
      valor = valor.instance_variable_get('@integer')
    end
  end
  buffer.put_int32(valor)
end