Diffstat (limited to 'src/transform.rs')
-rw-r--r--src/transform.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/transform.rs b/src/transform.rs
index 12f7576..cd46681 100644
--- a/src/transform.rs
+++ b/src/transform.rs
@@ -29,12 +29,12 @@ where
build_from_mut::<U::Builder, _, _>(value)
}
-pub fn from_ref<'value, 'ctx: 'value, U, T, VisitorErr>(
+pub fn from_ref<'value, 'ctx: 'value, U, T: ?Sized, VisitorErr>(
value: &'value T,
-) -> Result<U, UniError<<T as Walk<'value, 'ctx, VisitorErr>>::Error, VisitorErr>>
+) -> Result<U, UniError<<T as Walk<'value, 'value, 'ctx, VisitorErr>>::Error, VisitorErr>>
where
- U: Build<'value, 'ctx, <T as Walk<'value, 'ctx, VisitorErr>>::Error, Error = VisitorErr>,
- T: Walk<'value, 'ctx, VisitorErr>,
+ U: Build<'value, 'ctx, <T as Walk<'value, 'value, 'ctx, VisitorErr>>::Error, Error = VisitorErr>,
+ T: Walk<'value, 'value, 'ctx, VisitorErr>,
{
build_from_ref::<U::Builder, _, _>(value)
}
@@ -73,12 +73,12 @@ where
builder.finish()
}
-pub fn build_from_ref<'value, 'ctx: 'value, B, T, VisitorErr>(
+pub fn build_from_ref<'value, 'ctx: 'value, B, T: ?Sized, VisitorErr>(
value: &'value T,
-) -> Result<B::Value, UniError<<T as Walk<'value, 'ctx, VisitorErr>>::Error, VisitorErr>>
+) -> Result<B::Value, UniError<<T as Walk<'value, 'value, 'ctx, VisitorErr>>::Error, VisitorErr>>
where
- B: Builder<'value, 'ctx, <T as Walk<'value, 'ctx, VisitorErr>>::Error, Error = VisitorErr>,
- T: Walk<'value, 'ctx, VisitorErr>,
+ B: Builder<'value, 'ctx, <T as Walk<'value, 'value, 'ctx, VisitorErr>>::Error, Error = VisitorErr>,
+ T: Walk<'value, 'value, 'ctx, VisitorErr>,
{
let mut builder = B::init();
value.walker().walk(builder.as_visitor())?;