Implemented by types that contain game state and provide logic for updating it and drawing it to the screen.
The methods on
State allow you to return a
Result, either explicitly or via the
operator. If an error is returned, the game will close and the error will be returned from
Context::run call that was used to start it. This allows you to propagate errors
main for reporting/logging.
The error type defaults to
TetraError, but this can be overridden by adding a type parameter
State implementation (e.g.
demonstrates a minimal implementation of the
example demonstrates how custom error types can be used to implement more robust error handling.
Called when it is time for the game to update.
Called when it is time for the game to be drawn.
Called when a window or input event occurs.