class MR::ReadModel::SetExpression
Constants
- OPERATOR_SQL
Attributes
operator_sql[R]
read_model_block[R]
Public Class Methods
new(operator, &block)
click to toggle source
# File lib/mr/read_model/query_expression.rb, line 152 def initialize(operator, &block) raise ArgumentError, "a block must be provided" unless block @operator_sql = OPERATOR_SQL[operator] @read_model_block = block end
Public Instance Methods
combine_sql(sql, params = nil)
click to toggle source
# File lib/mr/read_model/query_expression.rb, line 172 def combine_sql(sql, params = nil) "#{sql} #{self.operator_sql} #{self.read_model_class.build_sql(params)}" end
read_model_class()
click to toggle source
# File lib/mr/read_model/query_expression.rb, line 158 def read_model_class @read_model_class ||= begin c = Class.new do # TODO - fix circular require require 'mr/read_model' require 'mr/read_model/set_querying' include MR::ReadModel include MR::ReadModel::SetQuerying end c.class_eval(&self.read_model_block) c end end