module Zen::Query::Attributes::ClassMethods
Public Instance Methods
attribute_methods()
click to toggle source
# File lib/zen/query/attributes.rb, line 14 def attribute_methods const_get(:AttributeMethods) end
attributes(*attrs)
click to toggle source
# File lib/zen/query/attributes.rb, line 18 def attributes(*attrs) attributes_list.concat(attrs) attrs.each do |name| attribute_methods.send(:define_method, name) { @attributes[name] } end end
attributes_list()
click to toggle source
# File lib/zen/query/attributes.rb, line 26 def attributes_list @attributes_list ||= [] end
inherited(query_class)
click to toggle source
Calls superclass method
# File lib/zen/query/attributes.rb, line 7 def inherited(query_class) query_class.const_set(:AttributeMethods, Module.new) query_class.send(:include, query_class::AttributeMethods) query_class.attributes_list.replace(attributes_list.dup) super end