typestar

Modificadores en Solidity

Envuelven una función; _ marca dónde corre el cuerpo.

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

// A modifier wraps a function; _ marks where the body runs.
contract ToolShed {
    address public steward;
    uint256 public toolsOut;

    constructor() {
        steward = msg.sender;
    }

    modifier onlySteward() {
        require(msg.sender == steward, "steward only");
        _;
    }

    function lend() external onlySteward {
        toolsOut += 1;
    }
}

Cómo funciona

  1. modifier onlySteward centraliza el chequeo de permiso.
  2. La línea _; es donde ejecuta el cuerpo guardado.
  3. external onlySteward lo aplica en la firma.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
21
Caracteres a escribir
366
Tokens
58
Ritmo de tres estrellas
60 tpm

Al ritmo de tres estrellas de 60 tokens por minuto, este intento toma unos 58 segundos.

Escribe este fragmento

Paso 2 de 3 en Guardas; paso 9 de 28 en Fundamentos del lenguaje.

← Anterior Siguiente →