performance_mark
is an attribute macro that adds performance (time) logging to
functions. By default, it uses println!
, but can be configured to use a custom
method.
Basic example:
```rust use performancemarkattribute::performance_mark;
fn testfunctionloggedusingstdout() { println!("Hello!"); } ```
Output:
(performance_mark) test_function_logged_using_stdout took 7.177µs
```rust use performancemarkattribute::{performance_mark, LogContext}
fn testfunctionloggedusingcustom_function() { println!("Hello!"); }
fn logwiththis(ctx: LogContext) { println!("Function: {} , Time: {}ms", ctx.function, ctx.duration); } ```
```rust use performancemarkattribute::{performance_mark, LogContext}
fn testfunctionloggedusingcustom_function() { println!("Hello!"); }
async fn logwiththis(ctx: LogContext) { // Log asynchronously } ```