Events
In Rubidity, events serve as mechanisms to log and emit changes or activities that occur within a smart contract. Here is how you can define and emit events in Rubidity.
Event Definition
To define an event in your Rubidity contract, you use the event
keyword followed by the event name and a hash describing the expected arguments:
In this example, a Transfer
event is defined with three arguments—from
, to
, and amount
. Their types are also specified, making it strongly-typed just like any other aspect of Rubidity.
Event Emission
To emit an event, you call the emit
method within your contract's methods. The emit
method requires two arguments: the name of the event to emit and a hash containing the arguments to pass to the event:
Event Validation
As with functions, Rubidity performs argument validation when emitting an event. Specifically, it checks:
If the event is defined in the contract.
If any required arguments are missing.
If any unexpected arguments are included.
Example
Here is a small example that demonstrates defining and emitting an event in a Rubidity contract:
Last updated