module DataSteroid::Criteria::Queryable

Defines behaviour for query operations.

Public Instance Methods

all() click to toggle source
# File lib/data_steroid/criteria/queryable.rb, line 26
def all
  fetch query
end
fetch(query) click to toggle source
# File lib/data_steroid/criteria/queryable.rb, line 17
def fetch(query)
  result = datastore.run query
  if result.count > 0
    result.map { |element| new(element) }
  else
    []
  end
end
query() click to toggle source
# File lib/data_steroid/criteria/queryable.rb, line 8
def query
  datastore.query(kind)
end
run(query) click to toggle source
# File lib/data_steroid/criteria/queryable.rb, line 12
def run(query)
  result = datastore.run query
  new(result.first) if result.count == 1
end