Class: Mutations::HashFilter
- Inherits:
-
InputFilter
- Object
- InputFilter
- Mutations::HashFilter
- Defined in:
- lib/mutations/additional_filter.rb
Instance Attribute Summary collapse
-
#input_description ⇒ Object
Returns the value of attribute input_description.
-
#input_descriptions ⇒ Object
Returns the value of attribute input_descriptions.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#input_description ⇒ Object
Returns the value of attribute input_description.
7 8 9 |
# File 'lib/mutations/additional_filter.rb', line 7 def input_description @input_description end |
#input_descriptions ⇒ Object
Returns the value of attribute input_descriptions.
7 8 9 |
# File 'lib/mutations/additional_filter.rb', line 7 def input_descriptions @input_descriptions end |
Class Method Details
.register_additional_filter(type_class, type_name) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/mutations/additional_filter.rb', line 19 def self.register_additional_filter(type_class, type_name) define_method(type_name) do |*args, &block| name = args[0] = args[1] || {} # rubocop:disable Lint/AssignmentInCondition if described = current_input_description (@input_descriptions ||= {})[name.to_sym] = described end # rubocop:enable Lint/AssignmentInCondition @current_inputs[name.to_sym] = type_class.new(, &block) end end |
Instance Method Details
#current_input_description ⇒ Object
13 14 15 16 17 |
# File 'lib/mutations/additional_filter.rb', line 13 def current_input_description (@input_description && @input_description.dup).tap do @input_description = nil end end |
#desc(input_description) ⇒ Object
9 10 11 |
# File 'lib/mutations/additional_filter.rb', line 9 def desc input_description @input_description = input_description end |