Sha256: a9fee0d52bdf77f4ca9429823af222414615ac729dd10e63289514b55d16278f
Contents?: true
Size: 919 Bytes
Versions: 2
Compression:
Stored size: 919 Bytes
Contents
module Draper # Provides access to helper methods - both Rails built-in helpers, and those # defined in your application. class HelperProxy # @overload initialize(view_context) def initialize(view_context) @view_context = view_context end # Sends helper methods to the view context. def method_missing(method, *args, &block) self.class.define_proxy method send(method, *args, &block) end # Checks if the context responds to an instance method, or is able to # proxy it to the view context. def respond_to_missing?(method, include_private = false) super || view_context.respond_to?(method) end delegate :capture, to: :view_context protected attr_reader :view_context private def self.define_proxy(name) define_method name do |*args, &block| view_context.send(name, *args, &block) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
draper-3.0.1 | lib/draper/helper_proxy.rb |
draper-3.0.0 | lib/draper/helper_proxy.rb |