class ActionExtractor::Extractors::Base

Public Class Methods

call( argument_name:, controller:, definition: ) click to toggle source

@param [Symbol] argument_name @param [ActionController::Base] controller @param [Hash] definition

# File lib/action_extractor/extractors/base.rb, line 10
def call(
  argument_name:,
  controller:,
  definition:
)
  new(
    argument_name: argument_name,
    controller: controller,
    definition: definition
  ).call
end
extractors() click to toggle source

@return [Hash{Symbol => call}]

# File lib/action_extractor/extractors/base.rb, line 23
def extractors
  @extractors ||= {}
end
inherited(child) click to toggle source

@note Override.

Calls superclass method
# File lib/action_extractor/extractors/base.rb, line 28
def inherited(child)
  super
  extractors[child.to_s.split('::').last.underscore.to_sym] = child
end
new( argument_name:, controller:, definition: ) click to toggle source

@param [Symbol] argument_name @param [ActionController::Base] controller @param [Hash] definition

# File lib/action_extractor/extractors/base.rb, line 37
def initialize(
  argument_name:,
  controller:,
  definition:
)
  @argument_name = argument_name
  @controller = controller
  @definition = definition
end

Public Instance Methods

name() click to toggle source

@return [String]

# File lib/action_extractor/extractors/base.rb, line 48
def name
  @definition[:name] || @argument_name.to_s
end