Diffstat (limited to 'src/transform.rs')
| -rw-r--r-- | src/transform.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/transform.rs b/src/transform.rs index 2f57a90..2bbc2c6 100644 --- a/src/transform.rs +++ b/src/transform.rs @@ -22,7 +22,7 @@ pub fn transform< >( seed: B::Seed, walker: W, -) -> NativeForm<'a, (Result<B::Value, B::Error>, Result<W::Output, W::Error>), E> { +) -> NativeForm<'a, (Result<B::Output, B::Error>, Result<W::Output, W::Error>), E> { B::from_seed(seed) .update(walker, |walker, builder| { walker.walk(builder.as_visitor()).cast() @@ -86,7 +86,7 @@ pub trait BuildExt { W: Walker<'ctx, Blocking<Cfg<Spin, No, No>>>, { match transform::<Self::Builder, _, _>(Default::default(), walker).into_value() { - (Ok(value), _) => Ok(value), + (Ok(value), _) => Ok(Self::Builder::unwrap_output(value)), (Err(err), Ok(_)) => Err(BuildError::Builder(err)), (Err(build_err), Err(walker_err)) => Err(BuildError::Both(build_err, walker_err)), } @@ -116,7 +116,7 @@ pub trait BuildExt { .into_future() .await { - (Ok(value), _) => Ok(value), + (Ok(value), _) => Ok(Self::Builder::unwrap_output(value)), (Err(err), Ok(_)) => Err(BuildError::Builder(err)), (Err(build_err), Err(walker_err)) => Err(BuildError::Both(build_err, walker_err)), } @@ -164,7 +164,7 @@ pub trait WalkExt { .into_value() .walk(builder.as_visitor()); match builder.build().into_value() { - Ok(value) => Ok(value), + Ok(value) => Ok(B::unwrap_output(value)), _ => todo!(), } } |