chiark / gitweb /
try to make it work with 1.31
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 10 May 2024 13:47:07 +0000 (14:47 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 10 May 2024 13:47:07 +0000 (14:47 +0100)
Cargo.lock
Cargo.toml
macros/Cargo.toml
macros/macros.rs
src/main.rs

index 27ce9acbf705e203765974cd2ac64a1bfb85c9cd..96091591aa9c14e690c10cbeb23b6534f667fd5d 100644 (file)
@@ -1,14 +1,11 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
 [[package]]
 name = "foo"
 version = "0.1.0"
 dependencies = [
- "foo-macros",
+ "foo-macros 0.1.0",
 ]
 
 [[package]]
 name = "foo-macros"
 version = "0.1.0"
+
index 2c2586a6dda67e62530e26950e3cccfb89552969..902c769d3a3a56322c3a550d986c2c152f814835 100644 (file)
@@ -1,7 +1,6 @@
 [package]
 name = "foo"
 version = "0.1.0"
-edition = "2021"
 
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
index d36e210fde00a980f6bad5628b58e18a5ff9cda6..9abfcfba0007d59a69f13e68730b379e34d5923c 100644 (file)
@@ -2,7 +2,6 @@
 
 name = "foo-macros"
 version = "0.1.0"
-edition = "2021"
 
 [dependencies]
 #syn = "2"
index 0f66a6bddf027d2db4035eceacee144d9331f289..7a456f2725e3fb7d28023825d39a021b50240761 100644 (file)
@@ -1,9 +1,10 @@
+extern crate proc_macro;
 use proc_macro::{Group, TokenStream, TokenTree};
 
 #[proc_macro]
 pub fn dbg_dump(input: TokenStream) -> TokenStream {
-    dbg!(&input);
-    dbg!(input.to_string());
+//    dbg!(&input);
+//    dbg!(input.to_string());
     input
 }
 
@@ -18,20 +19,20 @@ pub fn reconstruct_groups(input: TokenStream) -> TokenStream {
             let tt = match tt {
                 TokenTree::Group(g) => {
                     let delim = g.delimiter();
-                    dbg!(&delim);
+//                    dbg!(&delim);
                     let stream = recurse(g.stream());
                     TokenTree::Group(Group::new(delim, stream))
                 },
                 other => other,
             };
-            output.extend([tt]);
+            output.extend(std::iter::once(tt));
         }
         output
     }
 
-    dbg!(&input);
+//    dbg!(&input);
     let output = recurse(input);
-    dbg!(&output);
-    dbg!(&output.to_string());
+//    dbg!(&output);
+//    dbg!(&output.to_string());
     output
 }
index bdf2b1dbc93e57640de831254fdf86e3cabcc72d..76e65a867d047bb80f145e74755268197657e94e 100644 (file)
@@ -1,4 +1,5 @@
 #![allow(dead_code)]
+extern crate foo_macros;
 use foo_macros::*;
 
 macro_rules! one_plus { { $v:expr } => {