Skip to main content

main

Macro main 

Source
macro_rules! main {
    (definition = $definition:expr) => { ... };
    ($app:ty) => { ... };
    ($app:ty, init = $init:expr) => { ... };
    ($app:ty, init = $init:expr, engine = $engine:literal) => { ... };
}
Expand description

The binary entry point of an app, identical on every target.

ⓘ
ui::main!(hello::App);                           // a `ResourceApp`
ui::main!(hello::App, init = hello::initialize);  // optional process setup
ui::main!(definition = hello::definition);       // fn() -> &'static ApplicationDefinition
// the release binary runs the app from its engine library (`engine_main!`)
ui::main!(hello::App, init = hello::initialize, engine = "tilo_hello_engine");

On Linux and macOS it runs the native runner with the standard launch modes (--shots, --headless, …). In the browser it registers the app for the page runtime to mount.