module Context::Controller
Public Class Methods
included(base)
click to toggle source
# File lib/context/controller.rb, line 3 def self.included(base) base.send(:prepend_before_action, :__set_base_context) end
Public Instance Methods
__set_base_context()
click to toggle source
# File lib/context/controller.rb, line 12 def __set_base_context @__context = Context::BaseContext.new end
extend_context(context, **args)
click to toggle source
# File lib/context/controller.rb, line 7 def extend_context(context, **args) context_class = "#{context}Context".constantize @__context = context_class.wrap(@__context, **args) end
Private Instance Methods
method_missing(method_name, *args, &block)
click to toggle source
Calls superclass method
# File lib/context/controller.rb, line 18 def method_missing(method_name, *args, &block) if @__context.respond_to?(method_name) @__context.public_send(method_name, *args, &block) else super end end
respond_to_missing?(method_name, include_private = false)
click to toggle source
# File lib/context/controller.rb, line 26 def respond_to_missing?(method_name, include_private = false) @__context.respond_to?(method_name, include_private) end