Diffstat (limited to 'src/transform.rs')
-rw-r--r--src/transform.rs8
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!(),
}
}