summaryrefslogtreecommitdiff
path: root/src/tg/type-macros.lisp
diff options
context:
space:
mode:
authorGravatar Uko Kokņevičs2025-10-18 07:16:59 +0300
committerGravatar Uko Kokņevičs2025-10-18 07:16:59 +0300
commit797bc62a9b31ab7d063ced4d3285fde1c50fea05 (patch)
treeaf99a67fbb5178f75d009dd4375291ca26f3b829 /src/tg/type-macros.lisp
parentRemove SWANK dependencies from ocicl.csv (diff)
downloadukkoclot-797bc62a9b31ab7d063ced4d3285fde1c50fea05.tar.gz
ukkoclot-797bc62a9b31ab7d063ced4d3285fde1c50fea05.tar.xz
ukkoclot-797bc62a9b31ab7d063ced4d3285fde1c50fea05.zip
Add com.dieggsy.f-string, replace simple formats with #f"strings"
Diffstat (limited to 'src/tg/type-macros.lisp')
-rw-r--r--src/tg/type-macros.lisp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/tg/type-macros.lisp b/src/tg/type-macros.lisp
index b9d649c..390781f 100644
--- a/src/tg/type-macros.lisp
+++ b/src/tg/type-macros.lisp
@@ -1,7 +1,9 @@
1;; SPDX-License-Identifier: EUPL-1.2 1;; SPDX-License-Identifier: EUPL-1.2
2;; SPDX-FileCopyrightText: 2025 Uko Kokņevičs <perkontevs@gmail.com> 2;; SPDX-FileCopyrightText: 2025 Uko Kokņevičs <perkontevs@gmail.com>
3(defpackage :ukkoclot/tg/type-macros 3(defpackage :ukkoclot/tg/type-macros
4 (:documentation "Macros for easy defining TG types.")
4 (:use :c2cl :iterate) 5 (:use :c2cl :iterate)
6 (:import-from :com.dieggsy.f-string :enable-f-strings)
5 (:import-from :ukkoclot/serializing :parse-value) 7 (:import-from :ukkoclot/serializing :parse-value)
6 (:import-from :ukkoclot/hash-tables :gethash-lazy) 8 (:import-from :ukkoclot/hash-tables :gethash-lazy)
7 (:import-from :ukkoclot/strings :lisp->snake-case) 9 (:import-from :ukkoclot/strings :lisp->snake-case)
@@ -10,6 +12,8 @@
10 (:export :define-tg-type)) 12 (:export :define-tg-type))
11(in-package :ukkoclot/tg/type-macros) 13(in-package :ukkoclot/tg/type-macros)
12 14
15(enable-f-strings)
16
13(eval-when (:compile-toplevel :load-toplevel :execute) 17(eval-when (:compile-toplevel :load-toplevel :execute)
14 (defstruct (field (:constructor make-field%)) name type default skip-if-default) 18 (defstruct (field (:constructor make-field%)) name type default skip-if-default)
15 19
@@ -20,7 +24,7 @@
20 &optional (default +unique+) 24 &optional (default +unique+)
21 &key (skip-if-default (not (eq default +unique+)))) 25 &key (skip-if-default (not (eq default +unique+))))
22 (let ((default (if (eq default +unique+) 26 (let ((default (if (eq default +unique+)
23 `(error ,(format nil "No value given for ~A" name)) 27 `(error ,#f"No value given for {name}")
24 default))) 28 default)))
25 (make-field% :name name 29 (make-field% :name name
26 :type type 30 :type type