ExpertiDict

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

unbound method

/ʌnˈbaʊnd ˈmɛθəd/substantivo

Objeto UnboundMethod, obtido com Classe.instance_method(:nome), que representa um método desligado de qualquer instância. Para chamá-lo é preciso fazer bind a um objeto compatível.

Onde usar

Aparece em metaprogramação e em wrappers que guardam o método original antes de redefini-lo. Também permite comparar donos e assinaturas de métodos.

Em código

um = Array.instance_method(:size)
p um.class  # => UnboundMethod
m = um.bind([1, 2, 3])
p m.call  # => 3
p um.bind_call([4, 5])  # => 2

Exemplos

Grab the original as an unbound method before patching.

Pegue o original como unbound method antes de aplicar o patch.

Bind the unbound method to an instance to call it.

Faça bind do unbound method a uma instância para chamá-lo.

Cuidado

Não o confunda com Method, que já está preso a um receptor e pode ser chamado direto; o UnboundMethod exige bind ou bind_call.

Sinônimos

UnboundMethod

Antônimos

method object

Veja também

Todos os termos de Ruby