From f4b8d8e58b82b29b3cc765c44045b86d6ec44054 Mon Sep 17 00:00:00 2001 From: Uko Kokņevičs Date: Sat, 18 Oct 2025 07:31:03 +0300 Subject: Utilise alexandria:with-gensyms --- src/tg/method-macros.lisp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/tg/method-macros.lisp') diff --git a/src/tg/method-macros.lisp b/src/tg/method-macros.lisp index 215b2ab..b924e15 100644 --- a/src/tg/method-macros.lisp +++ b/src/tg/method-macros.lisp @@ -3,6 +3,7 @@ (defpackage :ukkoclot/tg/method-macros (:documentation "Macros for easy defining TG methods.") (:use :c2cl :iterate) + (:import-from :alexandria :with-gensyms) (:import-from :com.dieggsy.f-string :enable-f-strings) (:import-from :serapeum :take) (:import-from :ukkoclot/state :bot) @@ -51,13 +52,11 @@ `(,(param-name param) ,(param-default param))) (defun emit-defun (name return-type params method) - (let ((revparams (reverse params)) - (args (gensym "ARGS")) - (bot (gensym "BOT"))) + (with-gensyms (args bot) `(defun ,name (,bot &key ,@(iter (for param in params) ; lint:suppress lambda-list-invalid (collect (emit-defun-arg param)))) (let (,args) - ,@(iter (for param in revparams) + ,@(iter (for param in (reverse params)) (collect (if (param-skip-if-default param) `(unless (equal ,(param-name param) ,(param-default param)) -- cgit v1.2.3