typestar

Embebido de structs en Go

Embeber promueve los campos y métodos del tipo interno hacia el externo.

type Base struct {
    ID      int
    Created string
}

func (b Base) Age() string { return "since " + b.Created }

type Tour struct {
    Base
    Slug  string
    Steps int
}

func (t Tour) Describe() string {
    return fmt.Sprintf("%s #%d %s, %d steps",
        t.Slug, t.ID, t.Age(), t.Steps)
}

func build() string {
    tour := Tour{Base: Base{ID: 3, Created: "2026-07"}, Slug: "traits",
        Steps: 19}
    return tour.Describe()
}

Cómo funciona

  1. El nombre del tipo embebido es el nombre del campo.
  2. Los métodos promovidos hacen que el tipo externo satisfaga las mismas interfaces.
  3. Es composición, no herencia: sin sobreescritura, solo sombreado.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
23
Caracteres a escribir
395
Tokens
110
Ritmo de tres estrellas
95 tpm

Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 69 segundos.

Escribe este fragmento

Paso 3 de 3 en Structs y métodos; paso 3 de 19 en Interfaces y genéricos.

← Anterior Siguiente →