#![doc = include_str!("../README.md")]
#[doc(hidden)]
pub use proclet::{Match, MatchOpFn, OpParser, PunctExt};
#[doc(hidden)]
pub use proclet_utils_macros::_define_ops;
#[macro_export]
macro_rules! define_ops {
($(#[$attr:meta])* $vis:vis $ident:ident, $($ops:literal),* $(,)?) => {
$(#[$attr])*
#[inline]
$vis fn $ident<P: $crate::PunctExt>() -> $crate::OpParser<P, impl MatchOpFn> {
$crate::_define_ops!($($ops),*);
$crate::OpParser::new(__proclet_define_ops)
}
};
}
define_ops! {
pub rust_op_parser,
"!", "!=", "#", "$", "%", "%=", "&", "&&", "&=", "*", "*=", "+", "+=", ",", "-", "-=", "->",
".", "..", "...", "..=", "/", "/=", ":", "::", ";", "<", "<-", "<<", "<<=", "<=", "=", "==",
"=>", ">", ">=", ">>", ">>=", "?", "@", "^", "^=", "|", "|=", "||", "~",
}