class SocialSnippet::DocumentBackend::YAMLDocument::Query
Attributes
collection[R]
document_class[R]
Public Class Methods
new(new_document_class, new_collection)
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 8 def initialize(new_document_class, new_collection) @document_class = new_document_class @collection = new_collection end
Public Instance Methods
count()
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 24 def count collection.length end
each(&block)
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 34 def each(&block) enum.each &block end
enum()
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 28 def enum collection.map do |_, item| document_class.new item end end
exists?()
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 13 def exists? collection.size > 0 end
find(cond)
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 17 def find(cond) new_collection = collection.select do |item_id, item| cond.all? {|k, _| cond[k] === item[k] } end self.class.new document_class, new_collection end
map(&block)
click to toggle source
# File lib/social_snippet/document_backend/yaml_document/query.rb, line 38 def map(&block) enum.map &block end