compare-changes 0.8.12

Reimplementation of GitHub file paths pattern matcher
Documentation
macro_rules! define_exitcodes {
    ( $( $fn:ident => $variant:ident = $code:expr ),* $(,)? ) => {
        #[repr(i32)]
        pub enum ExitCode {
            $( $variant = $code, )*
        }

        impl ExitCode {
            pub fn code(self) -> i32 { self as i32 }
        }

        $(
            pub fn $fn() -> i32 { ExitCode::$variant.code() }
        )*
    }
}

define_exitcodes! {
    path_error => PathError = 1,
    file_error  => FileError  = 2,
    match_error  => MatchError  = 3,
    find_error => FindError = 4,
}