diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-03-18 09:05:16 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-03-18 09:55:57 -0700 |
commit | 415ce75b066526125c5647e54b0db4821f4ddc54 (patch) | |
tree | 0022b788862ed97f66c45d93b2d0477eb0f53445 /src/util.lisp | |
parent | 80b5cee2fdf6c590db0e257b3c5fb67a5aa001d7 (diff) | |
download | consfigurator-415ce75b066526125c5647e54b0db4821f4ddc54.tar.gz |
introduce FORM-BEGINNING-WITH
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/util.lisp')
-rw-r--r-- | src/util.lisp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/util.lisp b/src/util.lisp index 2d35e0c..c4b4df2 100644 --- a/src/util.lisp +++ b/src/util.lisp @@ -79,8 +79,11 @@ supported." ,@(and docstring `(,docstring)) (error ',name :format-control message :format-arguments args)))) +(defmacro form-beginning-with (sym form) + `(and (listp ,form) (eq ',sym (car ,form)))) + (defun strip-declarations (forms) - (loop while (and (listp (car forms)) (eq 'declare (caar forms))) + (loop while (form-beginning-with declare (car forms)) do (pop forms) finally (return forms))) |