mode
tables
This commit is contained in:
parent
0ebcc4623c
commit
6e19ebcbbb
23
src/mode.rs
23
src/mode.rs
@ -1,4 +1,16 @@
|
||||
//! [`Mode`]-based parsing.
|
||||
//!
|
||||
//! | [`Mode`] | [`Factory`] | [`Atomic`] |
|
||||
//! |------------------|---------------------|--------------------|
|
||||
//! | [`RegularMode`] | [`RegularFactory`] | [`RegularAtomic`] |
|
||||
//! | [`InliningMode`] | [`InliningFactory`] | [`InliningAtomic`] |
|
||||
//!
|
||||
//! [`Factory`]: crate::rcore::Factory
|
||||
//! [`Atomic`]: crate::atomic::Atomic
|
||||
//! [`RegularFactory`]: crate::rcore::RegularFactory
|
||||
//! [`RegularAtomic`]: crate::atomic::RegularAtomic
|
||||
//! [`InliningFactory`]: crate::rcore::InliningFactory
|
||||
//! [`InliningAtomic`]: crate::atomic::InliningAtomic
|
||||
|
||||
mod inlining;
|
||||
mod regular;
|
||||
@ -32,13 +44,16 @@ pub type ModeResult<M, A, E, I> = Result<ParseSuccess<M, A, I>, E>;
|
||||
|
||||
/// Mode of parsing.
|
||||
///
|
||||
/// | [`Mode`] | [`Mode::ParseSuccess<A, I>`] | [`Mode::ExtensionResult<A, E>`] | [`Mode::ExtensionSource<A>`] |
|
||||
/// |------------------|------------------------------|---------------------------------|------------------------------|
|
||||
/// | [`RegularMode`] | `A` | [`Result<A, E>`] | `A` |
|
||||
/// | [`InliningMode`] | [`(A, I)`] | `E` | [`()`] |
|
||||
/// | [`Mode`] | [`ParseSuccess<A, I>`] | [`ExtensionResult<A, E>`] | [`ExtensionSource<A>`] |
|
||||
/// |------------------|------------------------|---------------------------|------------------------|
|
||||
/// | [`RegularMode`] | `A` | [`Result<A, E>`] | `A` |
|
||||
/// | [`InliningMode`] | [`(A, I)`] | `E` | [`()`] |
|
||||
///
|
||||
/// [`(A, I)`]: tuple
|
||||
/// [`()`]: unit
|
||||
/// [`ParseSuccess<A, I>`]: Mode::ParseSuccess
|
||||
/// [`ExtensionResult<A, E>`]: Mode::ExtensionResult
|
||||
/// [`ExtensionSource<A>`]: Mode::ExtensionSource
|
||||
pub trait Mode {
|
||||
/// Successful parsing, may contain the parser itself
|
||||
/// (`I`, usually [`Stream`]).
|
||||
|
Loading…
Reference in New Issue
Block a user