fundle_macros

Crates.iofundle_macros
lib.rsfundle_macros
version0.3.0
created_at2025-10-21 19:42:10.345826+00
updated_at2025-11-24 07:35:22.961537+00
descriptionProcedural macros for the fundle crate.
homepagehttps://github.com/microsoft/oxidizer
repositoryhttps://github.com/microsoft/oxidizer
max_upload_size
id1894333
size16,455
Ralf Biedert (ralfbiedert)

documentation

README

Fundle Macros Logo

Fundle Macros

crate.io docs.rs MSRV CI Coverage License

Summary

Procedural macros to support the fundle crate. See fundle for more information.

Macros

#[bundle]

Transforms structs into type-safe builders with dependency injection support.

#[fundle::bundle]
pub struct AppState {
   logger: Logger,
   database: Database,
}

Generates builder methods and a select macro for dependency access.

#[deps]

Creates dependency parameter structs with automatic From<T> implementations.

#[fundle::deps]
pub struct ServiceDeps {
    logger: Logger,
    database: Database,
}

Generates From<T> where T: AsRef<Logger> + AsRef<Database>.

#[newtype]

Creates newtype wrappers with automatic trait implementations.

#[newtype]
pub struct DatabaseLogger(Logger);

Generates Clone, From<T: AsRef<Logger>>, Deref, and DerefMut.


This crate was developed as part of The Oxidizer Project.

Commit count: 14

cargo fmt