このコードの拡張機能は何でしょうか?
class << self
def extended(klass)
klass.class_exec do
define_method :supported_attrs do
that_klass = self.class
that_klass.const_defined?(:ATTRS) ? that_klass.const_get(:ATTRS) : []
end
end
end
end
https://translate.google.com/translate?hl=ja&sl=en&tl=ja&u=https://github.com/lokalise/ruby-lokalise-api/blob/2d78458cbb16fa62d9f6018e79b7ea5da53b77f6/lib/ruby_lokalise_api/concerns/attrs_loadable.rb#L8
プロジェクトでは使い道がない サポートされる属性のみ クラスはどこから来たのですか? プロジェクトには言及がありません
したがって、extend 関数に詳しくない方のために説明すると、この関数の短いバージョンは、指定されたモジュールのメソッドをクラスに追加するものです。 extend を呼び出すと、クラスをパラメータとして .extended メソッドがモジュール上で呼び出されます。
module MyModule
def self.extended(klass)
p klass
end
end
class MyClass
extend MyModule
# => Will print "MyClass"
end
したがって、あなたの場合、モジュールが拡張されているインスタンスを探して、それらのメソッドが追加される場所を見つけることができます。