summary refs log tree commit diff stats
path: root/src/pattern.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/pattern.rs')
-rw-r--r--src/pattern.rs15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/pattern.rs b/src/pattern.rs
index 0fc6acd..a0c0ec3 100644
--- a/src/pattern.rs
+++ b/src/pattern.rs
@@ -42,9 +42,18 @@ impl<O: Serialize> Pattern<O> {
         De: Deserialize<'de>,
     {
         let mut err = Default::default();
-        let interp = vm::Interpreter::new(&self.consts, &mut err);
-        let pack = vm::Packer::new(interp, MAX_CALLS).deserialize(der)?;
-        let de = De::deserialize(vm::Unpacker::new(pack.0, MAX_CALLS));
+        let frames = Default::default();
+        //let mut output = Default::default();
+        let interp = vm::Interpreter::new(
+            &self.consts,
+            &mut err,
+            &frames,
+            //&mut output,
+        );
+        let (pack, obj) = vm::Packer::new(interp, MAX_CALLS).deserialize(der)?;
+        // this should always be None
+        debug_assert!(obj.is_none());
+        let de = De::deserialize(vm::Unpacker::new(pack, MAX_CALLS));
         todo!()
     }
 }