Skip to main content

concat_atom

Macro concat_atom 

Source
macro_rules! concat_atom {
    ($s1:expr, $s2:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr, $s7:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr, $s7:expr, $s8:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr, $s7:expr, $s8:expr, $s9:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr, $s7:expr, $s8:expr, $s9:expr, $s10:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr, $s7:expr, $s8:expr, $s9:expr, $s10:expr, $s11:expr $(,)?) => { ... };
    ($s1:expr, $s2:expr, $s3:expr, $s4:expr, $s5:expr, $s6:expr, $s7:expr, $s8:expr, $s9:expr, $s10:expr, $s11:expr, $s12:expr $(,)?) => { ... };
    ($($arg:expr),+ $(,)?) => { ... };
}
Expand description

A macro to concatenate between 2 and 12 string slices into a single Atom.

This macro dispatches to a specialized, zero-heap-allocation function based on the number of arguments provided, making it highly performant for a known number of inputs. It uses a stack-allocated buffer to avoid hitting the heap.

ยงPanics

Panics at compile time if called with 0, 1, or more than 12 arguments.