typestar

El contexto global en Solidity

msg.sender, block.timestamp, block.number: el entorno.

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

// The globals: msg.sender, block.timestamp, block.number.
contract WorkbookStamp {
    struct Entry {
        address who;
        uint256 time;
        uint256 blockNo;
    }

    Entry[] public entries;

    function stamp() external {
        entries.push(Entry(msg.sender, block.timestamp, block.number));
    }

    function isRecent(uint256 i) external view returns (bool) {
        return block.timestamp - entries[i].time < 1 days;
    }
}

Cómo funciona

  1. Cada llamada carga su remitente y el reloj de la cadena.
  2. block.timestamp es segundos; 1 days es azúcar por 86400.
  3. Los sellos guardan el contexto para comparar después.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
21
Caracteres a escribir
438
Tokens
77
Ritmo de tres estrellas
60 tpm

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

Escribe este fragmento

Paso 1 de 3 en El entorno; paso 21 de 28 en Fundamentos del lenguaje.

← Anterior Siguiente →