typestar

Qué cuenta como verdadero con __bool__ en Mojo

__bool__ decide qué significa tu struct dentro de un if.

@fieldwise_init
struct Cart(ImplicitlyCopyable, Movable):
    var items: Int

    def __bool__(self) -> Bool:
        return self.items > 0


def main():
    var cart = Cart(0)
    if cart:
        print("ready to check out")
    else:
        print("the cart is empty")

Cómo funciona

  1. Cart cuenta sus items.
  2. __bool__ informa verdadero solo cuando ese conteo pasa de cero.
  3. if cart: llama al método, así que un carrito vacío toma la rama else.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
14
Caracteres a escribir
226
Tokens
54
Ritmo de tres estrellas
85 tpm

Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 38 segundos.

Escribe este fragmento

Paso 4 de 5 en Operadores; paso 14 de 22 en Structs y traits.

← Anterior Siguiente →