From 78e74fbf35766eab517bc0c25da637e36ec4174e Mon Sep 17 00:00:00 2001 From: timofey Date: Sat, 29 Jul 2023 19:55:14 +0000 Subject: [PATCH] `ExtensionSourceM` --- src/rcore.rs | 4 ++-- src/rcore/modes.rs | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/rcore.rs b/src/rcore.rs index 4d60003..64e753e 100644 --- a/src/rcore.rs +++ b/src/rcore.rs @@ -33,8 +33,8 @@ pub use self::hashing::{Hash, HASH_SIZE, HASH_ZEROS}; pub use self::inctx::InCtx; pub use self::inlining::{Inlining, InliningExt, InliningResultExt}; pub use self::modes::{ - ExtensionResultM, FactoryModeParse, FactoryModeProxy, Mode, ParseMode, ParseResultM, - RegularFactory, RegularMode, WithMode, WithParseMode, + ExtensionResultM, ExtensionSourceM, FactoryModeParse, FactoryModeProxy, Mode, ParseMode, + ParseResultM, RegularFactory, RegularMode, WithMode, WithParseMode, }; pub use self::origin::{OFctr, Origin}; pub use self::point::Point; diff --git a/src/rcore/modes.rs b/src/rcore/modes.rs index 38a6bd0..fb6c2de 100644 --- a/src/rcore/modes.rs +++ b/src/rcore/modes.rs @@ -71,6 +71,9 @@ pub type ParseResultM<'a, Ctx, F, I> = pub type ExtensionResultM<'a, Ctx, F> = <::Mode as Mode>::ExtensionResult, ParseError<'a, Ctx, F>>; +pub type ExtensionSourceM<'a, Ctx, F> = + <::Mode as Mode>::ExtensionSource, ParseError<'a, Ctx, F>>; + pub trait FactoryModeParse<'a, Ctx: Context<'a>>: FactoryBase<'a, Ctx> + ParseMode { fn mdeserialize>(&self, inctx: I) -> ParseResultM<'a, Ctx, Self, I>; fn mextend(&self, mentionable: Self::Mtbl, tail: &[u8]) -> ExtensionResultM<'a, Ctx, Self>;