delete CastResult
This commit is contained in:
parent
671f0df6ae
commit
8c8752c2e4
@ -148,9 +148,6 @@ where
|
||||
}
|
||||
}
|
||||
|
||||
/// Returned by [`TypelessMentionable::cast`].
|
||||
pub type CastResult<'a, Ctx, A> = Result<A, ParseErrorA<'a, Ctx, A>>;
|
||||
|
||||
impl<'a, Ctx: Context<'a>> TypelessMentionable<'a, Ctx>
|
||||
where
|
||||
Ctx::LookupError: From<CastError<'a>>,
|
||||
@ -159,7 +156,7 @@ where
|
||||
&self,
|
||||
factory: A::Fctr,
|
||||
map_resolver: impl FnOnce(Rc<dyn Resolver<'a, Ctx>>) -> Rc<dyn Resolver<'a, Ctx>>,
|
||||
) -> CastResult<'a, Ctx, A> {
|
||||
) -> ParseResultA<'a, Ctx, A> {
|
||||
factory.parse_slice(
|
||||
&self.bytes(),
|
||||
&map_resolver(CastResolver::rc(self.points_vec())),
|
||||
@ -167,7 +164,7 @@ where
|
||||
}
|
||||
|
||||
/// Re-parse the object as if it is of a specific type. Has potential to break topology.
|
||||
pub fn cast<A: Mentionable<'a, Ctx>>(&self, factory: A::Fctr) -> CastResult<'a, Ctx, A> {
|
||||
pub fn cast<A: Mentionable<'a, Ctx>>(&self, factory: A::Fctr) -> ParseResultA<'a, Ctx, A> {
|
||||
self.cast_full(factory, identity)
|
||||
}
|
||||
}
|
||||
|
@ -34,14 +34,14 @@ pub trait Traceable<'a, Ctx: Context<'a, _Tm = TracedInstance>>:
|
||||
///
|
||||
/// [^extra]: applying [`Traceable::trace`] multiple times
|
||||
/// might affect the trace in undesireable ways
|
||||
fn trace(self: Rc<Self>) -> CastResult<'a, Ctx, Self>;
|
||||
fn trace(self: Rc<Self>) -> ParseResultA<'a, Ctx, Self>;
|
||||
}
|
||||
|
||||
impl<'a, Ctx: Context<'a, _Tm = TracedInstance>, A: Mentionable<'a, Ctx>> Traceable<'a, Ctx> for A
|
||||
where
|
||||
Ctx::LookupError: From<CastError<'a>>,
|
||||
{
|
||||
fn trace(self: Rc<Self>) -> CastResult<'a, Ctx, Self> {
|
||||
fn trace(self: Rc<Self>) -> ParseResultA<'a, Ctx, Self> {
|
||||
let factory = self.factory();
|
||||
TypelessMentionable::from_typed(self).cast_full(factory, TracedResolver::wrap)
|
||||
}
|
||||
|
@ -83,7 +83,7 @@ impl<'a> Resolver<'a, TestContextCounted> for CountedResolver<'a> {
|
||||
}
|
||||
|
||||
pub trait Delayable<'a>: Mentionable<'a, TestContextCounted> + Sized {
|
||||
fn delay(self: Rc<Self>) -> CastResult<'a, TestContextCounted, Self> {
|
||||
fn delay(self: Rc<Self>) -> ParseResultA<'a, TestContextCounted, Self> {
|
||||
let factory = self.factory();
|
||||
TypelessMentionable::from_typed(self).cast_full(factory, CountedResolver::new)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user