pub trait ParseModeExt: ParseMode {
// Provided methods
fn bind<A0, A1, E, I>(
s: ParseSuccessP<Self, A0, I>,
f: impl FnOnce(A0) -> Result<A1, E>
) -> ModeResultP<Self, A1, E, I> { ... }
fn map<A0, A1, I>(
s: ParseSuccessP<Self, A0, I>,
f: impl FnOnce(A0) -> A1
) -> ParseSuccessP<Self, A1, I> { ... }
fn seal<A, I>(s: ParseSuccessP<Self, A, I>) -> A { ... }
fn xmap_err<A, E0, E1>(
result: ExtensionResultP<Self, A, E0>,
f: impl FnOnce(E0) -> E1
) -> ExtensionResultP<Self, A, E1> { ... }
fn xbind<A0, A1, E>(
result: ExtensionResultP<Self, A0, E>,
f: impl FnOnce(A0) -> Result<A1, E>
) -> ExtensionResultP<Self, A1, E> { ... }
fn xseal<A, E>(result: ExtensionResultP<Self, A, E>) -> Result<A, E> { ... }
fn smap<A0, A1>(
source: ExtensionSourceP<Self, A0>,
f: impl FnOnce(A0) -> A1
) -> ExtensionSourceP<Self, A1> { ... }
fn prepare<A>(a: A) -> ExtensionSourceP<Self, A> { ... }
fn xsbind<AB, A, B, E>(
ab: ExtensionSourceP<Self, AB>,
t2ab: impl FnOnce(AB) -> (A, B),
ce: impl FnOnce(ExtensionSourceP<Self, B>) -> ExtensionResultP<Self, B, E>,
ab2t: impl FnOnce(A, B) -> Result<AB, E>
) -> ExtensionResultP<Self, AB, E> { ... }
}
Expand description
Extension trait for all ParseMode types, re-exporting Mode traits.