;; Copyright 2021-2022 Fabien Bourgeois ;; ;; This Source Code Form is subject to the terms of the Mozilla Public ;; License, v. 2.0. If a copy of the MPL was not distributed with this ;; file, You can obtain one at https://mozilla.org/MPL/2.0/. " Hy General Macros " (defmacro instance? [type record] `(isinstance ~record ~type)) (defmacro hydict [dic] "Generate dict with mangled keys, from HyDict list" (setv mangled-dic (list (map (fn [pair] (if (even? (nth pair 0)) (hy.mangle (nth pair 1)) (nth pair 1))) (enumerate dic)))) `{~@mangled-dic})