git.fiddlerwoaroof.com
misc.lisp
51be2765
 (in-package :fwoar.lisputils)
 
 (defmacro twice (&body body)
   `(progn ,@body
           ,@body))
c67ed088
 
 (defmacro define-cluser-entrypoint ((&rest args) &body body)
   "Use the current package name to generate a <PACKAGE-NAME>.MAIN function in CL-USER.
 
a11a7dd4
 This will not do anything if :FW.DEV is not in features as it's only intended as a shortcut"
5c00eb6b
   `(progn ,@(when (featurep :fw.dev)
               (let ((entrypoint-symbol (intern (format nil "~a.~a" (package-name *package*) '#:main)
                                                :cl-user)))
                 `((defun ,entrypoint-symbol ,args
                     ,@body)
                   (export ',entrypoint-symbol :cl-user))))
           (defun ,(intern (symbol-name '#:main) *package*) ,args
             ,@body)
           (export ',(intern (symbol-name '#:main) *package*) *package*)))