1
2
3
4
5
6
7
8
9
10
11
12
13
#[macro_export]
macro_rules! extend_string {
    ( $string:expr; $( $str_:expr ),* ) => ({
        let mut space_needed = 0;
        $(
            space_needed += $str_.len();
        )*
        $string.reserve_exact(space_needed);
        $(
            $string.push_str($str_);
        )*
    });
}