aboutsummaryrefslogtreecommitdiff
path: root/just_template/src/deprecated.rs
diff options
context:
space:
mode:
Diffstat (limited to 'just_template/src/deprecated.rs')
-rw-r--r--just_template/src/deprecated.rs45
1 files changed, 45 insertions, 0 deletions
diff --git a/just_template/src/deprecated.rs b/just_template/src/deprecated.rs
new file mode 100644
index 0000000..b218969
--- /dev/null
+++ b/just_template/src/deprecated.rs
@@ -0,0 +1,45 @@
+#[macro_export]
+macro_rules! tmpl_param {
+ ($template:ident, $($key:ident = $value:expr),* $(,)?) => {{
+ $(
+ $template.insert_param(stringify!($key).to_string(), $value.to_string());
+ )*
+ }};
+}
+
+#[macro_export]
+macro_rules! tmpl {
+ ($template:ident, $($name:ident {
+ $($key:ident = $value:expr),* $(,)?
+ }),* $(,)?) => {{
+ $(
+ let $name = $template.add_impl(stringify!($name).to_string());
+ $(
+ $name.push({
+ let mut params = std::collections::HashMap::new();
+ params.insert(stringify!($key).to_string(), $value.to_string());
+ params
+ });
+ )*
+ )*
+ }};
+
+ // Old syntax
+ ($template:ident += {
+ $($name:ident {
+ $(($($key:ident = $value:expr),* $(,)?)),*
+ $(,)?
+ }),*
+ }) => {{
+ $(
+ let $name = $template.add_impl(stringify!($name).to_string());
+ $(
+ $name.push({
+ let mut params = std::collections::HashMap::new();
+ $(params.insert(stringify!($key).to_string(), $value.to_string());)*
+ params
+ });
+ )*
+ )*
+ }};
+}