ExpertiDict

Ruby · Essencial · Inglês · Técnico

include

/ɪnˈklud/método

Método que insere um módulo na cadeia de ancestrais de uma classe, deixando os métodos de instância do módulo disponíveis nos objetos dela. É o mecanismo dos mixins.

Onde usar

Aparece para compartilhar comportamento, como include Comparable. Os métodos do módulo ficam acima da classe na resolução, então a própria classe pode sobrescrevê-los.

Em código

module Saudavel
  def oi = "oi, #{nome}"
end
class Pessoa
  include Saudavel
  def nome = "Ana"
end
puts Pessoa.new.oi  # => oi, Ana

Exemplos

Include the module to get its methods.

Inclua o módulo para ganhar os métodos dele.

A class can include many modules.

Uma classe pode incluir vários módulos.

Cuidado

Não o confunda com require, que carrega um arquivo, nem com extend, que adiciona métodos ao próprio receptor, não às instâncias.

Antônimos

extend

Veja também

Todos os termos de Ruby