pub(crate) const NEW_ISSUE_URL: &str =
"https://github.com/awslabs/cargo-check-external-types/issues/new";
pub mod cargo;
pub mod config;
pub mod error;
pub mod path;
pub mod visitor;
#[macro_export]
macro_rules! here {
() => {
concat!("error at ", file!(), ":", line!(), ":", column!())
};
($($args:tt)+) => {
format!("{} ({})", format!($($args)+), here!())
};
}
#[macro_export]
macro_rules! bug {
($($args:tt)+) => {
{
use owo_colors::{OwoColorize, Stream};
eprint!("{}",
"BUG: "
.if_supports_color(Stream::Stdout, |text| text.purple())
.if_supports_color(Stream::Stdout, |text| text.bold())
);
eprint!($($args)+);
eprintln!(" This is a bug. Please report it with a piece of Rust code that triggers it at: {}", $crate::NEW_ISSUE_URL);
}
};
}
#[macro_export]
macro_rules! bug_panic {
($($args:tt)+) => {
$crate::bug!($($args)+);
panic!("execution cannot continue");
};
}