Struct tetra::Context [−][src]
pub struct Context { /* fields omitted */ }
Expand description
A struct containing all of the ‘global’ state within the framework.
Implementations
Runs the game.
The init
parameter takes a function or closure that creates a
State
implementation. A common pattern is to use method references
to pass in your state’s constructor directly - see the example below
for how this works.
The error type returned by your init
closure currently must match the error
type returned by your State
methods. This limitation may be lifted
in the future.
Errors
If the State
returns an error from update
, draw
or event
, the game will stop running and this method will
return the error.
Examples
use tetra::{Context, ContextBuilder, State};
struct GameState;
impl GameState {
fn new(ctx: &mut Context) -> tetra::Result<GameState> {
Ok(GameState)
}
}
impl State for GameState { }
fn main() -> tetra::Result {
// Because GameState::new takes `&mut Context` and returns a `State` implementation
// wrapped in a `Result`, you can use it without a closure wrapper:
ContextBuilder::new("Hello, world!", 1280, 720)
.build()?
.run(GameState::new)
}