chiark / gitweb /
found
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 3 May 2022 09:25:07 +0000 (10:25 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 3 May 2022 09:25:09 +0000 (10:25 +0100)
src/main.rs

index 2dac6532a7aefc1e27135ddf25743d67bd149956..f1f0b2b24d8414f0faae47c593fafe698ab79f76 100644 (file)
@@ -6,7 +6,7 @@ use serde::{Serialize, Deserialize};
 
 #[derive(Serialize, Deserialize, Debug, Copy, Clone)]
 struct Place {
-    name: usize, // is actually s string
+    name: usize,
 }
 
 #[derive(Serialize, Deserialize, Debug, Copy, Clone)]
@@ -22,6 +22,12 @@ struct Flattened {
     inf: char,
 }
 
+#[derive(Serialize, Deserialize, Debug, Copy, Clone)]
+struct ManuallyFlattened {
+    name: usize,
+    inm: char,
+}
+
 fn p<T: Serialize>(n: &str, v: &T) {
     println!("\n{}", n);
     println!("value {:?}", serde_value::to_value(&v));
@@ -34,7 +40,9 @@ fn main() {
     let place = Place { name: 42 };
     let o = Output { place, ino: 'o' };
     let f = Flattened { place, inf: 'f' };
+    let m = ManuallyFlattened { name: 42, inm: 'm' };
 
     p("O", &o);
     p("F", &f);
+    p("M", &m);
 }