1.1--- a/lisp/std/path.lisp Wed Sep 11 21:40:01 2024 -0400
1.2+++ b/lisp/std/path.lisp Thu Sep 12 16:48:47 2024 -0400
1.3@@ -5,6 +5,9 @@
1.4 ;;; Code:
1.5 (in-package :std/path)
1.6
1.7+(defun symlinkp (pathname)
1.8+ (sb-posix:s-islnk (sb-posix:stat-mode (sb-posix:lstat pathname))))
1.9+
1.10 (deftype wild-pathname ()
1.11 "A pathname with wild components."
1.12 '(and pathname (satisfies wild-pathname-p)))
1.13@@ -23,6 +26,9 @@
1.14 (deftype directory-pathname ()
1.15 '(and pathname (satisfies uiop:directory-pathname-p)))
1.16
1.17+(deftype symlink-pathname ()
1.18+ '(and pathname (satisfies symlinkp)))
1.19+
1.20 (deftype absolute-directory-pathname ()
1.21 '(and absolute-pathname directory-pathname))
1.22