instance method define_proxy_call

Ruby on Rails 8.0.4

Since v5.2.8.1 Private

Available in: v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

define_proxy_call(code_generator, name, proxy_target, parameters, *call_args, namespace:, as: name)

Define a method name in mod that dispatches to send using the given extra args. This falls back on send if the called name cannot be compiled.

Parameters

code_generator req
name req
proxy_target req
parameters req
call_args rest
namespace keyreq
as key = name
Source
# File activemodel/lib/active_model/attribute_methods.rb, line 430
        def define_proxy_call(code_generator, name, proxy_target, parameters, *call_args, namespace:, as: name)
          mangled_name = build_mangled_name(name)

          call_args.map!(&:inspect)
          call_args << parameters if parameters

          # We have to use a different namespace for every target method, because
          # if someone defines an attribute that look like an attribute method we could clash, e.g.
          #   attribute :title_was
          #   attribute :title
          namespace = :"#{namespace}_#{proxy_target}"

          define_call(code_generator, name, proxy_target, mangled_name, parameters, call_args, namespace: namespace, as: as)
        end

Defined in activemodel/lib/active_model/attribute_methods.rb line 430 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveModel::AttributeMethods::ClassMethods

Type at least 2 characters to search.

↑↓ navigate · open · esc close