diff --git a/hy_odoo/odoo.hy b/hy_odoo/odoo.hy index edaedf0..3a9fafe 100644 --- a/hy_odoo/odoo.hy +++ b/hy_odoo/odoo.hy @@ -43,6 +43,18 @@ value (nth hy-domain 3)) `(, ~field ~op ~value)) +(defmacro hydict [dic] + "Generate dict with mangled keys, from HyDict list" + (setv mangled-dic + (list + (map + (fn [pair] + (if (even? (nth pair 0)) + (mangle (nth pair 1)) + (nth pair 1))) + (enumerate dic)))) + `{~@mangled-dic}) + ; XML helpers functions and macros (defn odoo [&rest args] (xmlroot (xmln "odoo" {} #*args)))