class MR::ReadModel::SubqueryExpression
Constants
- TYPES
Attributes
subquery_args[R]
subquery_block[R]
subquery_type[R]
type[R]
Public Class Methods
new(type, *args, &block)
click to toggle source
# File lib/mr/read_model/query_expression.rb, line 66 def initialize(type, *args, &block) raise ArgumentError, "a block must be provided" unless block @subquery_type = type @subquery_args = args @subquery_block = block end
Public Instance Methods
apply_to(relation, params = nil)
click to toggle source
# File lib/mr/read_model/query_expression.rb, line 80 def apply_to(relation, params = nil) relation.send(self.type, self.subquery.build_sql(params)) end
subquery()
click to toggle source
# File lib/mr/read_model/query_expression.rb, line 73 def subquery @subquery ||= TYPES[self.subquery_type].new( *self.subquery_args, &self.subquery_block ) end