class ActiveSupport::Deprecation::DeprecatedInstanceVariableProxy
This DeprecatedInstanceVariableProxy transforms instance variable to deprecated instance variable.
class Example def initialize(deprecator) @request = ActiveSupport::Deprecation::DeprecatedInstanceVariableProxy.new(self, :request, :@request, deprecator) @_request = :a_request end def request @_request end def old_request @request end end
When someone execute any method on @request variable this will trigger warn
method on deprecator_instance
and will fetch @_request
variable via request
method and execute the same method on non-proxy instance variable.
Default deprecator is ActiveSupport::Deprecation
.
Public Class Methods
# File activesupport/lib/active_support/deprecation/proxy_wrappers.rb, line 79 def initialize(instance, method, var = "@#{method}", deprecator = ActiveSupport::Deprecation.instance) @instance = instance @method = method @var = var @deprecator = deprecator end
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.