module Card::Query::CardQuery::FoundBy
nest independent query
Public Instance Methods
Source
# File lib/card/query/card_query/found_by.rb, line 6 def found_by val found_by_cards(val).compact.each do |card| subquery found_by_subquery(card) end end
Private Instance Methods
Source
# File lib/card/query/card_query/found_by.rb, line 35 def fetch_found_by_cards val Array.wrap(val).map do |v| Card.fetch v.to_name.absolute(context), new: {} end end
Source
# File lib/card/query/card_query/found_by.rb, line 27 def found_by_cards val if val.is_a? Hash Query.run val else fetch_found_by_cards val end end
Source
# File lib/card/query/card_query/found_by.rb, line 18 def found_by_statement card card&.try(:cql_hash) || invalid_found_by_card!(card) end
Source
# File lib/card/query/card_query/found_by.rb, line 14 def found_by_subquery card found_by_statement(card).merge(fasten: :direct, context: card.name) end
Source
# File lib/card/query/card_query/found_by.rb, line 22 def invalid_found_by_card! card raise Card::Error::BadQuery, '"found_by" value must be valid Search, ' \ "but #{card.name} is a #{card.type_name}" end