Diffstat (limited to 'tests/demo.rs')
-rw-r--r--tests/demo.rs16
1 files changed, 10 insertions, 6 deletions
diff --git a/tests/demo.rs b/tests/demo.rs
index b954052..86c022d 100644
--- a/tests/demo.rs
+++ b/tests/demo.rs
@@ -1,14 +1,18 @@
-use uniserde::walking_clone;
+use uniserde::{impls::core::reference::BuilderRefValue, transform::build_from};
#[test]
fn demo() {
- let x = "test";
- let y = clone_str(&x);
+ let x = String::from("a");
+ let y: &str = build_from::<BuilderRefValue<str>, _, _>(&*x).unwrap();
dbg!(y);
+
+ let y: &String = uniserde::transform::from(&*x).unwrap();
+ dbg!(y);
+
todo!();
}
-#[inline(never)]
-pub fn clone_str(x: &str) -> &str {
- walking_clone(&x).unwrap()
+#[no_mangle]
+pub fn example(a: &str) -> &String {
+ uniserde::transform::from(a).unwrap()
}