Method: AbstractController::Base.action_methods

Defined in:
lib/abstract_controller/base.rb

.action_methodsObject

A Set of method names that should be considered actions. This includes all public instance methods on a controller, less any internal methods (see internal_methods), adding back in any methods that are internal, but still exist on the class itself.



93
94
95
96
97
98
99
100
101
# File 'lib/abstract_controller/base.rb', line 93

def action_methods
  @action_methods ||= begin
    # All public instance methods of this class, including ancestors except for
    # public instance methods of Base and its ancestors.
    methods = public_instance_methods(true) - internal_methods
    methods.map!(&:name)
    methods.to_set
  end
end