simplify cast_resolved

This commit is contained in:
AF 2023-08-01 21:00:00 +00:00
parent 7dbfc49c54
commit a9f1134556

View File

@ -188,13 +188,11 @@ fn cast_resolved<'a, Ctx: CastCtx<'a>, A: Mentionable<'a, Ctx>>(
resolved: ResolutionResult<'a, Ctx, TypelessMentionable<'a, Ctx>>,
factory: A::Fctr,
) -> ResolutionResult<'a, Ctx, A> {
match resolved {
Ok(typeless_mentionable) => match typeless_mentionable.cast(factory) {
Ok(mentionable) => Ok(Rc::new(mentionable)),
Err(parse_error) => Err(ResolutionError::Parse(parse_error)),
},
Err(error) => Err(cast_error::<Ctx, A>(error)),
}
resolved
.map_err(cast_error::<Ctx, A>)?
.cast(factory)
.map_err(ResolutionError::Parse)
.map(Rc::new)
}
fn cast_resolve<'a, Ctx: CastCtx<'a>, A: Mentionable<'a, Ctx>>(