Mode table

This commit is contained in:
AF 2023-07-30 11:07:45 +00:00
parent 8ef8aaf156
commit a881a77dd3

View File

@ -6,6 +6,14 @@ use super::*;
pub type ModeResult<M, A, E, I> = Result<<M as Mode>::ParseSuccess<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` | [`()`] |
///
/// [`InliningMode`]: crate::rstd::inlining::InliningMode
/// [`()`]: unit
pub trait Mode {
/// Successful parsing, may countain the parser itself
/// (`I`, usually [`Inlining`]).