Eventos en Solidity
La bitácora: los campos indexed se vuelven topics buscables.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
// Events are the log: indexed fields become searchable topics.
contract HarvestLog {
event Picked(address indexed picker, string variety, uint256 kg);
event CrateSealed(uint256 indexed crateId);
uint256 public nextCrate = 1;
function record(string calldata variety, uint256 kg) external {
emit Picked(msg.sender, variety, kg);
}
function seal() external {
emit CrateSealed(nextCrate);
nextCrate += 1;
}
}
Cómo funciona
event Picked(address indexed picker, ...)declara la forma.emitescribe al log de la cadena, no al estado.- Los campos indexados filtran barato fuera de cadena.
Palabras clave y builtins usados aquí
addresscontractemiteventexternalfunctionpublicstringuint256
El intento, en números
- Líneas
- 19
- Caracteres a escribir
- 466
- Tokens
- 79
- Ritmo de tres estrellas
- 60 tpm
Al ritmo de tres estrellas de 60 tokens por minuto, este intento toma unos 79 segundos.
Paso 1 de 3 en Ether y eventos; paso 11 de 28 en Fundamentos del lenguaje.