클래스: Mongo::Protocol::CashingHash Private

상속:
객체
  • 객체
모두 표시
다음에 정의됨:
빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/cashing_hash.rb

개요

이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

#to_bson의 결과를 캐시하는 해시입니다.

인스턴스 메서드 요약 접기

생성자 세부 정보

#initialize(hash) ⇒ CashingHash

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

캐싱 해시의 새 인스턴스 를 반환합니다.



26
27
28
# 파일 'build/ruby-driver-v2.19/lib/mongo/protocol/cashing_hash.rb', 줄 26

def 초기화(해시)
  @hash = 해시
end

인스턴스 메서드 세부 정보

#bson_type객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.



30
31
32
# 파일 'build/ruby-driver-v2.19/lib/mongo/protocol/cashing_hash.rb', 줄 30

def bson_type
  해시::BSON_TYPE
end

#to_bson(buffer = BSON::ByteBuffer.new, validation_keys = nil) ⇒ BSON::ByteBuffer

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

to_bson의 결과를 캐시하고 이 메서드를 후속 호출할 때 지정된 버퍼에 씁니다. 이 메서드가 원래 유효성 검사 없이 호출되었다가 나중에 유효성 검사 기능을 사용하여 호출된 경우, 유효성 검사 검사를 trigger 하기 위해 to_bson을 다시 계산해야 합니다.

매개변수:

  • buffer (BSON::ByteBuffer) (기본값: BSON::ByteBuffer.new)

    추가할 인코딩된 BSON 버퍼입니다.

  • validation_keys (true, false) (기본값: nil)

    직렬화 시 키의 유효성을 검사할지 여부입니다. 이 옵션은 더 이상 사용되지 않으며, 버전 3.0 에서 제거됩니다.

반환합니다:

  • (BSON::ByteBuffer)

    인코딩된 객체가 있는 버퍼입니다.



44
45
46
47
48
49
# 파일 'build/ruby-driver-v2.19/lib/mongo/protocol/cashing_hash.rb', 줄 44

def to_bson(buffer = BSON::ByteBuffer.신규, validation_keys = nil)
  만약 !@bytes
    @bytes = @hash.to_bson(BSON::ByteBuffer.신규).to_s
  end
  buffer.put_bytes(@bytes)
end