모듈: Mongoid::Matcher::Bits Private
- 포함 항목:
- BitsAllClear, BitsAllSet, BitsAnyClear, BitsAnySet
- 다음에 정의됨:
- lib/mongoid/matcher/bits.rb
개요
이 모듈은 비공개 API의 일부입니다. 이 모듈은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
비트 표현식 매처에 포함된 Mixin 모듈.
클래스 메서드 요약 접기
-
.operator_name ⇒ string
비공개
표현식 연산자 의 이름을 반환합니다.
인스턴스 메서드 요약 접기
-
일치하는 #개?(존재, 값, 조건) ⇒ true | false
비공개
값이 비트 표현식 을 충족하는지 여부를 반환합니다.
클래스 메서드 세부 정보
.operator_name ⇒ string
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
표현식 연산자 의 이름을 반환합니다.
55 56 57 |
# 파일 'lib/mongoid/matcher/bits.rb', 줄 55 module_function def operator_name 이름.sub(/.*::/, '').sub(/\A(.)/) { |l| l.downcase } end |
인스턴스 메서드 세부 정보
일치하는 #개?(존재, 값, 조건) ⇒ true | false
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
값이 비트 표현식 을 충족하는지 여부를 반환합니다.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# 파일 'lib/mongoid/matcher/bits.rb', 줄 20 def 일치합니까?(이 존재합니다, value, 조건) case value when BSON::바이너리 value = value.데이터.split('').map { |n| '%02x' % n.ord }.가입.to_i(16) end case 조건 when 배열 array_match?(value, 조건) when BSON::바이너리 int_cond = 조건.데이터.split('').map { |n| '%02x' % n.ord }.가입.to_i(16) int_match?(value, int_cond) when Integer 만약 조건 < 0 올리다 오류::InvalidQuery, "$#{연산자_이름} 인수에 대한 잘못된 값: 음의 정수는 허용되지 않습니다: #{조건}" end int_match?(value, 조건) when Float 만약 (int_cond = 조건.to_i).to_f == 조건 만약 int_cond < 0 올리다 오류::InvalidQuery, "$#{연산자_이름} 인수에 대한 잘못된 값: 음수는 허용되지 않습니다: #{조건}" end int_match?(value, int_cond) other 올리다 오류::InvalidQuery, "$#{연산자_이름} 인수의 잘못된 유형: 정수로 표현할 수 없습니다: #{조건}" end other 올리다 오류::InvalidQuery, "$#{연산자_이름} 인수의 잘못된 유형: #{조건}" end end |