ExpertiDict

Ruby · Avançado · Inglês · Técnico

inherited hook

/ɪnˈhɛɹɪtəd hʊk/método de gancho

Método de classe que o Ruby chama na superclasse sempre que alguém cria uma subclasse dela, recebendo a nova classe. Serve para registrar subclasses ou configurar herança.

Onde usar

Aparece em frameworks que mantêm um registro de plugins ou handlers, rastreando todas as subclasses de uma base.

Em código

class Base
  FILHAS = []
  def self.inherited(sub)
    super
    FILHAS << sub
  end
end
class A < Base; end  # FILHAS => [A]

Exemplos

The base class tracks its children in the inherited hook.

A classe base rastreia as filhas no hook inherited.

Don't forget to call super inside inherited.

Não esqueça de chamar super dentro do inherited.

Cuidado

Ao sobrescrever inherited, chame super, senão você pode quebrar classes pai que também dependem do gancho.

Sinônimos

callback de herança

Veja também

Todos os termos de Ruby