module Zen::Query::Attributes
Public Class Methods
included(target)
click to toggle source
# File lib/zen/query/attributes.rb, line 31 def self.included(target) target.extend(ClassMethods) end
new(**attrs)
click to toggle source
# File lib/zen/query/attributes.rb, line 35 def initialize(**attrs) attributes = attrs.dup attributes.delete(:params) assert_valid_attributes!(attributes) @attributes = attributes end
Private Instance Methods
assert_valid_attributes!(attrs)
click to toggle source
# File lib/zen/query/attributes.rb, line 44 def assert_valid_attributes!(attrs) unknown_attrs = attrs.keys - self.class.attributes_list raise(ArgumentError, "Unknown attributes #{unknown_attrs.inspect}") if unknown_attrs.any? end