#async #non-blocking #futures

macro eternal-macro

The Eternal Framework

3 unstable releases

0.2.1 Jan 2, 2020
0.2.0 Jan 2, 2020
0.1.0 Jan 2, 2020

#42 in #non-blocking

29 downloads per month
Used in 3 crates (via eternal)

MIT license

14KB
278 lines

eternal-macro


lib.rs:

Macro codegen module

Generators for routes and scopes

Route

Macros:

Attributes:

  • "path" - Raw literal string with path for which to register handle. Mandatory.
  • guard="function_name" - Registers function as guard using eternal::web::guard::fn_guard

Notes

Function name can be specified as any expression that is going to be accessible to the generate code (e.g my_guard or my_module::my_guard)

Example:

use eternal::web::HttpResponse;
use eternal_macro::get;
use futures::{future, Future};

#[get("/test")]
async fn async_test() -> Result<HttpResponse, eternal::web::Error> {
    Ok(HttpResponse::Ok().finish())
}

Dependencies

~0.4–0.8MB
~20K SLoC