Class: Factbase::Looged::Query
- Inherits:
-
Object
- Object
- Factbase::Looged::Query
- Defined in:
- lib/factbase/looged.rb
Overview
Query decorator.
Instance Method Summary collapse
- #delete! ⇒ Object
- #each ⇒ Object
-
#initialize(query, expr, loog) ⇒ Query
constructor
A new instance of Query.
Constructor Details
#initialize(query, expr, loog) ⇒ Query
Returns a new instance of Query.
105 106 107 108 109 |
# File 'lib/factbase/looged.rb', line 105 def initialize(query, expr, loog) @query = query @expr = expr @loog = loog end |
Instance Method Details
#delete! ⇒ Object
137 138 139 140 141 142 143 144 145 146 |
# File 'lib/factbase/looged.rb', line 137 def delete! r = @query.delete! raise ".delete! of #{@query.class} returned #{r.class}" unless r.is_a?(Integer) if r.zero? @loog.debug("Nothing deleted by '#{@expr}'") else @loog.debug("Deleted #{r} fact(s) by '#{@expr}'") end r end |
#each ⇒ Object
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
# File 'lib/factbase/looged.rb', line 111 def each(&) if block_given? r = @query.each(&) raise ".each of #{@query.class} returned #{r.class}" unless r.is_a?(Integer) if r.zero? @loog.debug("Nothing found by '#{@expr}'") else @loog.debug("Found #{r} fact(s) by '#{@expr}'") end r else array = [] # rubocop:disable Style/MapIntoArray @query.each do |f| array << f end # rubocop:enable Style/MapIntoArray if array.empty? @loog.debug("Nothing found by '#{@expr}'") else @loog.debug("Found #{array.size} fact(s) by '#{@expr}'") end array end end |