module NoBrainer::Criteria::Run

Private Instance Methods

ensure_same_run_option_context!() click to toggle source
# File lib/no_brainer/criteria/run.rb, line 19
def ensure_same_run_option_context!
  return if @options[:initial_run_options].nil?
  return if @options[:initial_run_options] == NoBrainer.current_run_options

  raise "The current criteria cannot be executed as it was constructed in a different `run_with()' context\n" +
        "Note: you may use `run_with()' directly in your query (e.g. Model.run_with(...).first)."
end
run(&block) click to toggle source
# File lib/no_brainer/criteria/run.rb, line 11
def run(&block)
  return finalized_criteria.__send__(:run, &block) unless finalized?
  ensure_same_run_option_context!

  block ||= proc { to_rql }
  NoBrainer.run(:criteria => self, &block)
end