Method: AbstractController::Base.internal_methods
- Defined in:
- lib/abstract_controller/base.rb
.internal_methods ⇒ Object
A list of all internal methods for a controller. This finds the first abstract superclass of a controller, and gets a list of all public instance methods on that abstract class. Public instance methods of a controller would normally be considered action methods, so methods declared on abstract classes are being removed. (ActionController::Metal and ActionController::Base are defined as abstract)
77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/abstract_controller/base.rb', line 77 def internal_methods controller = self methods = [] until controller.abstract? methods += controller.public_instance_methods(false) controller = controller.superclass end controller.public_instance_methods(true) - methods end |