diff options
Diffstat (limited to 'third_party/rust/clap_derive/src/macros.rs')
-rw-r--r-- | third_party/rust/clap_derive/src/macros.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/third_party/rust/clap_derive/src/macros.rs b/third_party/rust/clap_derive/src/macros.rs new file mode 100644 index 0000000000..282048bc17 --- /dev/null +++ b/third_party/rust/clap_derive/src/macros.rs @@ -0,0 +1,21 @@ +macro_rules! format_err { + ($obj:expr, $($format:tt)+) => {{ + #[allow(unused_imports)] + use $crate::utils::error::*; + let msg = format!($($format)+); + $obj.EXPECTED_Span_OR_ToTokens(msg) + }}; +} + +macro_rules! abort { + ($obj:expr, $($format:tt)+) => {{ + return Err(format_err!($obj, $($format)+)); + }}; +} + +macro_rules! abort_call_site { + ($($format:tt)+) => {{ + let span = proc_macro2::Span::call_site(); + abort!(span, $($format)+) + }}; +} |