Сами события могут быть определены на уровне файлов или как наследуемые части контрактов, включая интерфейсы и библиотеки. При их вызове аргументы сохраняются в журнале транзакции - специальной структуре данных в блокчейне. Эти журналы ассоциируются с адресом контракта, который их вызвал, включаются в блокчейн и остаются там до тех пор, пока блокчейн доступен. Журнал и его данные о событиях недоступны изнутри контрактов (даже из контракта, который их создал).
P.S. Есть вероятность, что в одной из последних версий Solidity (или в ближайших) есть способ читать события из контракта. Я встречал упоминания об этом, только не смог найти источник.
#events #errors
Post #1193
1.09K