Module: Aygabtu::Scope::Requiring

Defined in:
lib/aygabtu/scope/requiring.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.factory_methodsObject



21
22
23
# File 'lib/aygabtu/scope/requiring.rb', line 21

def self.factory_methods
  [:requiring]
end

Instance Method Details

#inspect_dataObject



16
17
18
19
# File 'lib/aygabtu/scope/requiring.rb', line 16

def inspect_data
  return super unless @data[:requiring]
  super.merge(requiring: @data[:requiring].inspect)
end

#matches_route?(route) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
13
14
# File 'lib/aygabtu/scope/requiring.rb', line 10

def matches_route?(route)
  Array(@data[:requiring]).all? do |key|
    route.really_required_keys.include?(key.to_s)
  end && super
end

#requiring(*keys) ⇒ Object



4
5
6
7
8
# File 'lib/aygabtu/scope/requiring.rb', line 4

def requiring(*keys)
  new_requiring = [*@data[:requiring], *keys]
  new_data = @data.dup.merge(requiring: new_requiring)
  self.class.new(new_data)
end