#web #automatic #connecting #engine #macro #action #tiny-web

macro tiny-web-macro

tiny-web-macro is a macro library for automatically connecting a web engine to the web project

2 releases

0.1.6 Sep 8, 2024
0.1.5 Mar 2, 2024
0.1.4 Feb 8, 2024
0.1.3 Dec 23, 2023
0.1.2 May 24, 2023

#1989 in Procedural macros

Download history 141/week @ 2024-09-07 59/week @ 2024-09-14 14/week @ 2024-09-21 30/week @ 2024-09-28 15/week @ 2024-10-05 2/week @ 2024-10-12

279 downloads per month
Used in tiny-web

MIT license

12KB
206 lines

tiny-web-macro

tiny-web-macro is a macro library for automatically connecting a web engine to the web project.

Installation

Add tiny-web-macro to your Cargo.toml dependencies:

[dependencies]
tiny-web-macro = "0.1"

Usage

For create engine

You need to make a closure with the tiny_web_macro::addfn!() macro and pass it as a parameter to the tiny_web::run function.

/// Actions (web controllers)
pub mod app;

fn main() {
    tiny_web::run(
        env!("CARGO_PKG_NAME"),
        env!("CARGO_PKG_VERSION"),
        env!("CARGO_PKG_DESCRIPTION"),
        || { tiny_web_macro::addfn!(); },
    );
}

For add mod

To connect to Actions (web controllers) in the tiny-web project, you need to create the file ./app/mod.rs in the project root directory. Insert this macro

tiny_web_macro::addmod!();

into the file ./app/mod.rs. In addition, it is necessary to add in main.rs the use of this module. See the example above.

For use only with static &str for fnv1a_64

tiny_web_macro::fnv1a_64_m!("index"); // -8948777187306027381

License

This project is licensed under the MIT License - see the LICENSE file for details.

Dependencies

~215–650KB
~15K SLoC