모듈: Mongoid::Criteria::Queryable::Extensions::Hash

다음에 정의됨:
lib/mongoid/criteria/queryable/extensions/hash.rb

개요

해시 클래스에 쿼리 유형 캐스팅 동작을 추가합니다.

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#__add__(객체) ⇒ 해시

병합 전략을 사용하여 해시에 객체 를 추가합니다.

예시:

해시에 객체 를 추가합니다.

{ field: value }.__add__({ field: other_value })

매개변수:

  • 객체 (해시) —

    추가할 다른 해시입니다.

반환합니다:

  • (해시) —

    객체 가 추가된 해시입니다.



17
18
19
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 17

def __add__(객체)
  apply_strategy(:__add__, 객체)
end

#__add_from_array__(배열) ⇒ 해시

이 해시를 제공된 배열 에 병합합니다.

예시:

해시를 배열에 병합합니다.

{ field: value }.__add_from_array__([ 1, 2 ])

매개변수:

  • 배열 (배열) —

    추가할 배열 입니다.

반환합니다:

  • (해시) —

    병합된 해시입니다.



29
30
31
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 29

def __add_from_array__(배열)
  { 키.first => 배열.__add__(values.first) }
end

#__deep_copy__ ⇒ Hash

이 해시의 전체 복사본을 만듭니다.

예시:

해시의 전체 복사본을 만듭니다.

{ field: value }.__deep_copy__

반환합니다:

  • (해시) —

    복사된 해시입니다.



99
100
101
102
103
104
105
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 99

def __deep_copy__
  {}.탭 do |copy|
    각각의 쌍 do |키, value|
      copy.저장(키, value.__deep_copy__)
    end
  end
end

#__expand_complex__ ⇒ 해시

객체를 펼친 상태로 가져옵니다.

예시:

객체를 확장합니다.

obj.__expand_complex__

반환합니다:

  • (해시) —

    확장된 해시입니다.



127
128
129
130
131
132
133
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 127

def __expand_complex__
  교체 = {}
  각각의 쌍 do |키, value|
    교체.병합!(키.__expr_part__(value.__expand_complex__))
  end
  교체
end

#__intersect__(객체) ⇒ 해시

병합 전략을 사용하여 해시에 객체 를 추가합니다.

예시:

해시에 객체 를 추가합니다.

{ field: value }.__intersect__({ field: other_value })

매개변수:

  • 객체 (해시) —

    교차할 다른 해시입니다.

반환합니다:

  • (해시) —

    객체 가 교차된 해시입니다.



41
42
43
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 41

def __intersect__(객체)
  apply_strategy(:__intersect__, 객체)
end

#__intersect_from_array__(배열) ⇒ 해시

이 해시를 제공된 배열 에 병합합니다.

예시:

해시를 배열에 병합합니다.

{ field: value }.__intersect_from_array__([ 1, 2 ])

매개변수:

  • 배열 (배열) —

    교차할 배열 입니다.

반환합니다:

  • (해시) —

    병합된 해시입니다.



53
54
55
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 53

def __intersect_from_array__(배열)
  { 키.first => 배열.__intersect__(values.first) }
end

#__intersect_from_object__(객체) ⇒ 해시

이 해시를 제공된 객체 에 병합합니다.

예시:

해시를 객체에 병합합니다.

{ field: value }.__intersect_from_object__([ 1, 2 ])

매개변수:

  • 객체 (객체) —

    교차할 객체 입니다.

반환합니다:

  • (해시) —

    병합된 해시입니다.



65
66
67
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 65

def __intersect_from_object__(객체)
  { 키.first => 객체.__intersect__(values.first) }
end

#__sort_option__ ⇒ Hash

정렬 옵션으로 해시를 가져옵니다.

예시:

정렬 옵션으로 해시를 가져옵니다.

{ field: 1 }.__sort_option__

반환합니다:

  • (해시) —

    해시를 정렬 옵션으로 사용합니다.



113
114
115
116
117
118
119
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 113

def __sort_option__
  탭 do |해시|
    해시.각각의 쌍 do |키, value|
      해시.저장(키, 몽고이드::기준::번역기.to_direction(value))
    end
  end
end

#__union__(객체) ⇒ 해시

병합 전략을 사용하여 해시에 객체 를 추가합니다.

예시:

해시에 객체 를 추가합니다.

{ field: value }.__union__({ field: other_value })

매개변수:

  • 객체 (해시) —

    유니온할 다른 해시입니다.

반환합니다:

  • (해시) —

    객체 가 결합된 해시입니다.



77
78
79
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 77

def __union__(객체)
  apply_strategy(:__union__, 객체)
end

#__union_from_object__(객체) ⇒ 해시

이 해시를 제공된 객체 에 병합합니다.

예시:

해시를 객체에 병합합니다.

{ field: value }.__union_from_object__([ 1, 2 ])

매개변수:

  • 객체 (객체) —

    유니온할 객체 입니다.

반환합니다:

  • (해시) —

    병합된 해시입니다.



89
90
91
# 파일 'lib/mongoid/criteria/queryable/extensions/hash.rb', 줄 89

def __union_from_object__(객체)
  { 키.first => 객체.__union__(values.first) }
end