summaryrefslogtreecommitdiff
path: root/str.lisp
diff options
context:
space:
mode:
authorJuan Manuel Tomás <jtomas1815@gmail.com>2022-11-04 00:40:17 -0300
committerJuan Manuel Tomás <jtomas1815@gmail.com>2022-11-04 00:40:17 -0300
commita0bcb57cbcfbfa8070ee617056983b03e8e64c29 (patch)
tree478181d36dd875c542c10c5dd2fac2dba940957d /str.lisp
parentca2362bc53b548c1e0b2a725545984854fe62413 (diff)
downloadutils-a0bcb57cbcfbfa8070ee617056983b03e8e64c29.tar.gz
utils-a0bcb57cbcfbfa8070ee617056983b03e8e64c29.zip
Add str:from-list
Diffstat (limited to 'str.lisp')
-rw-r--r--str.lisp10
1 files changed, 10 insertions, 0 deletions
diff --git a/str.lisp b/str.lisp
index e099e26..cbd6fe3 100644
--- a/str.lisp
+++ b/str.lisp
@@ -19,3 +19,13 @@
(length input)))
(queue:add result (subseq input start next)))))
(queue:to-list (split-rec (queue:new) 0)))
+
+(declaim (ftype (function ((cons char)) (values simple-string) &optional)) from-list)
+(defun from-list (lst)
+ (let ((str (make-string (length lst)))
+ (i 0))
+ (dolist (item lst)
+ (setf (char str i) item)
+ (incf i))
+ str))
+