Clase: Mongo::Protocol::CachingHash Privado
- Hereda:
-
Objeto
- Objeto
- Mongo::Protocol::CachingHash
- Definido en:
- lib/mongo/protocolo/caching_hash.rb
Overview
Esta clase forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.
Un hash que almacena en caché los resultados de #to_bson.
Colapso del resumen del método de instancia
- #bson_type ⇒ Objeto privada
-
#inicializar(hash) ⇒ CachingHash
constructor
privada
Una nueva instancia de CachingHash.
-
#to_bson(buffer = BSON::ByteBuffer.new, claves_de_validación = nulo) ⇒ BSON::ByteBuffer
privada
Almacena en caché el resultado de to_bson y lo escribe en el búfer indicado en llamadas posteriores a este método.
Detalles del constructor
#inicializar(hash) ⇒ CachingHash
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Devuelve una nueva instancia de CachingHash.
26 27 28 |
# Archivo 'lib/mongo/protocol/caching_hash.rb', línea 26 def inicializar(hash) @picadillo = hash end |
Detalles del método de instancia
#bson_type ⇒ Objeto
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
30 31 32 |
# Archivo 'lib/mongo/protocol/caching_hash.rb', línea 30 def bson_type Picadillo::BSON_TYPE end |
#to_bson(buffer = BSON::ByteBuffer.new, validating_keys = nil) ⇒ BSON::ByteBuffer
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Almacena en caché el resultado de to_bson y lo escribe en el búfer indicado en las llamadas subsiguientes a este método. Si este método se invoca inicialmente sin validación y posteriormente con validación, será necesario recalcular to_bson para activar las validaciones.
44 45 46 47 48 49 |
# Archivo 'lib/mongo/protocol/caching_hash.rb', línea 44 def a_bson(buffer = BSON::Búfer de bytes.Nuevo, validando_claves = nulo) Si !@bytes @bytes = @picadillo.a_bson(BSON::Búfer de bytes.Nuevo).a_s end buffer.poner_bytes(@bytes) end |