Module: MR::ReadModel::Subquery
- Included in:
- AliasSubquery
- Defined in:
- lib/mr/read_model/subquery.rb
Instance Attribute Summary collapse
-
#read_model_class ⇒ Object
readonly
Returns the value of attribute read_model_class.
Instance Method Summary collapse
Instance Attribute Details
#read_model_class ⇒ Object (readonly)
Returns the value of attribute read_model_class.
5 6 7 |
# File 'lib/mr/read_model/subquery.rb', line 5 def read_model_class @read_model_class end |
Instance Method Details
#build_sql(params = nil) ⇒ Object
26 27 28 |
# File 'lib/mr/read_model/subquery.rb', line 26 def build_sql(params = nil) "(#{self.read_model_class.build_sql(params)})" end |
#initialize(&block) ⇒ Object
7 8 9 10 11 12 13 |
# File 'lib/mr/read_model/subquery.rb', line 7 def initialize(&block) self.instance_eval(&block) if !self.read_model_class raise ArgumentError, "invalid subquery - " \ "use `read_model` to define the subquery" end end |
#read_model(&block) ⇒ Object
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/mr/read_model/subquery.rb', line 15 def read_model(&block) @read_model_class = Class.new do # TODO - fix circular require require 'mr/read_model' require 'mr/read_model/set_querying' include MR::ReadModel include MR::ReadModel:: end @read_model_class.class_eval(&block) end |