MCPcopy Create free account
hub / github.com/dfinity/orbit / handle_macro_errors

Function handle_macro_errors

libs/orbit-essentials-macros/src/utils.rs:4–16  ·  view source on GitHub ↗
(
    cb: F,
    _name: &str,
    metadata: TokenStream,
    item: TokenStream,
)

Source from the content-addressed store, hash-verified

2use syn::Error;
3
4pub fn handle_macro_errors<F>(
5 cb: F,
6 _name: &str,
7 metadata: TokenStream,
8 item: TokenStream,
9) -> TokenStream
10where
11 F: FnOnce(TokenStream, TokenStream) -> Result<TokenStream, Error>,
12{
13 let result = cb(metadata, item);
14
15 result.map_or_else(|e| e.to_compile_error().into(), Into::into)
16}

Callers 2

with_middlewareFunction · 0.85
storableFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected