Módulo: Mongoid::Criteria::Queryable::Extensions::Hash

Definido em:
lib/mongoid/criteria/queryable/extensions/hash.rb

Visão geral

Adiciona o comportamento de conversão de tipo de query à classe Hash .

Recolhimento do Resumo do método de instância

Detalhes do método de instância

#__add__(objeto) ➤ Hash

Adicione um objeto a um hash usando as estratégias de mesclagem.

Exemplos:

Adicione um objeto a um hash.

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

Parâmetros:

  • objeto (Hash)

    O outro hash a ser adicionado.

Retorna:

  • (Hash)

    O hash com objeto adicionado.



20
21
22
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 20

def __add__(objeto)
  apply_strategy(:__add__, objeto)
end

#__add_from_array__(array) ➤ Hash

Mescle este hash na array fornecida.

Exemplos:

Mescle o hash na array.

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

Parâmetros:

  • array (Array)

    A array à qual adicionar.

Retorna:

  • (Hash)

    O hash mesclado.



32
33
34
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 32

def __add_from_array__(array)
  { keys.primeiro => array.__add__(values.primeiro) }
end

#__deep_copy__Hash

Faça uma cópia profunda deste hash.

Exemplos:

Faça uma cópia profunda do hash.

{ field: value }.__deep_copy__

Retorna:

  • (Hash)

    O hash copiado.



102
103
104
105
106
107
108
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 102

def __deep_copy__
  {}.toque fazer |copy|
    cada_pair fazer |chave, valor|
      copy.Armazenar(chave, valor.__deep_copy__)
    end
  end
end

#__expand_complex__ ➤ Hash

Obtenha o objeto como expandido.

Exemplos:

Expanda o objeto.

obj.__expand_complex__

Retorna:

  • (Hash)

    O hash expandido.



130
131
132
133
134
135
136
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 130

def __expand_complex__
  substituição = {}
  cada_pair fazer |chave, valor|
    substituição.mesclar!(chave.__expr_part__(valor.__expand_complex__))
  end
  substituição
end

#__intersect__(objeto) ➤ Hash

Adicione um objeto a um hash usando as estratégias de mesclagem.

Exemplos:

Adicione um objeto a um hash.

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

Parâmetros:

  • objeto (Hash)

    O outro hash para cruzar.

Retorna:

  • (Hash)

    O hash com objeto interseccionado.



44
45
46
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 44

def __intersect__(objeto)
  apply_strategy(:__intersect__, objeto)
end

#__intersect_from_array__(array) ➤ Hash

Mescle este hash na array fornecida.

Exemplos:

Mescle o hash na array.

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

Parâmetros:

  • array (Array)

    A array com a qual fazer a interseção.

Retorna:

  • (Hash)

    O hash mesclado.



56
57
58
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 56

def __intersect_from_array__(array)
  { keys.primeiro => array.__intersect__(values.primeiro) }
end

#__intersect_from_object__(object) ➤ Hash

Mescle este hash no objeto fornecido .

Exemplos:

Mescle o hash no objeto.

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

Parâmetros:

  • objeto (Objeto)

    O objeto com o qual fazer a interseção.

Retorna:

  • (Hash)

    O hash mesclado.



68
69
70
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 68

def __intersect_from_object__(objeto)
  { keys.primeiro => objeto.__intersect__(values.primeiro) }
end

#__sort_option__Hash

Obtenha o hash como uma opção de classificação.

Exemplos:

Obtenha o hash como uma opção de classificação.

{ field: 1 }.__sort_option__

Retorna:

  • (Hash)

    O hash como opção de classificação.



116
117
118
119
120
121
122
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 116

def __sort_option__
  toque fazer |hash|
    hash.cada_pair fazer |chave, valor|
      hash.Armazenar(chave, Mongoid::critério::Tradutor.to_direction(valor))
    end
  end
end

#__union__(objeto) ➤ Hash

Adicione um objeto a um hash usando as estratégias de mesclagem.

Exemplos:

Adicione um objeto a um hash.

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

Parâmetros:

  • objeto (Hash)

    O outro hash para união.

Retorna:

  • (Hash)

    O hash com objeto unido.



80
81
82
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 80

def __union__(objeto)
  apply_strategy(:__union__, objeto)
end

#__union_from_object__(objeto) ➤ Hash

Mescle este hash no objeto fornecido .

Exemplos:

Mescle o hash no objeto.

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

Parâmetros:

  • objeto (Objeto)

    O objeto para a união .

Retorna:

  • (Hash)

    O hash mesclado.



92
93
94
# File 'lib/mongoid/criteria/queryable/extentions/hash.rb', linha 92

def __union_from_object__(objeto)
  { keys.primeiro => objeto.__union__(values.primeiro) }
end