2023-09-02 19:15:47 -04:00
|
|
|
use self::parser_context::Context;
|
|
|
|
use crate::error::Res;
|
|
|
|
use crate::parser::OrgSource;
|
|
|
|
|
2023-09-02 18:46:45 -04:00
|
|
|
mod exiting;
|
2023-09-02 20:46:17 -04:00
|
|
|
mod global_settings;
|
2023-09-02 18:46:45 -04:00
|
|
|
mod list;
|
|
|
|
mod parser_context;
|
|
|
|
mod parser_with_context;
|
|
|
|
|
2023-09-02 19:28:33 -04:00
|
|
|
pub type RefContext<'r, 's> = &'r Context<'r, 's>;
|
2023-09-02 18:46:45 -04:00
|
|
|
trait ContextMatcher =
|
|
|
|
for<'r, 's> Fn(RefContext<'r, 's>, OrgSource<'s>) -> Res<OrgSource<'s>, OrgSource<'s>>;
|
|
|
|
type DynContextMatcher<'c> = dyn ContextMatcher + 'c;
|
|
|
|
trait Matcher = for<'s> Fn(OrgSource<'s>) -> Res<OrgSource<'s>, OrgSource<'s>>;
|
|
|
|
type DynMatcher<'c> = dyn Matcher + 'c;
|
2023-09-02 19:28:33 -04:00
|
|
|
|
|
|
|
pub use exiting::ExitClass;
|
|
|
|
pub use parser_context::ContextElement;
|
|
|
|
pub use parser_context::ExitMatcherNode;
|
|
|
|
pub(crate) use parser_with_context::parser_with_context;
|