From f7b10efb816059b2dc9a6b63da2756b0364e50d1 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Wed, 29 Nov 2006 17:31:47 +0000 Subject: [PATCH] r11323: add uri-query-to-alist --- ChangeLog | 4 ++++ debian/changelog | 7 +++++++ package.lisp | 1 + strings.lisp | 7 +++++++ 4 files changed, 19 insertions(+) diff --git a/ChangeLog b/ChangeLog index 0e1e57f..5599a7b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +29 Nov 2006 Kevin Rosenberg + * Version 1.92 + * strings.lisp: Add uri-query-to-alist + 24 Oct 2006 Kevin Rosenberg * Version 1.91 * io.lisp: Fix output from read-file-to-string diff --git a/debian/changelog b/debian/changelog index a763c7f..c66c71c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,16 @@ +cl-kmrcl (1.92-1) unstable; urgency=low + + * New upstream + + -- Kevin M. Rosenberg Wed, 29 Nov 2006 09:31:48 -0700 + cl-kmrcl (1.91-1) unstable; urgency=low * New upstream -- Kevin M. Rosenberg Tue, 24 Oct 2006 20:45:19 -0600 +>>>>>>> .r11322 cl-kmrcl (1.90-1) unstable; urgency=low * New upstream diff --git a/package.lisp b/package.lisp index a138169..cde77c1 100644 --- a/package.lisp +++ b/package.lisp @@ -61,6 +61,7 @@ #:charhex #:encode-uri-string #:decode-uri-string + #:uri-query-to-alist #:non-alphanumericp #:random-string #:first-char diff --git a/strings.lisp b/strings.lisp index 166c5fa..bc5f4bd 100644 --- a/strings.lisp +++ b/strings.lisp @@ -496,6 +496,13 @@ for characters in a string" (setf (schar str dpos) ch))))) +(defun uri-query-to-alist (query) + "Converts non-decoded URI query to an alist of settings" + (mapcar (lambda (set) + (let ((lst (kmrcl:delimited-string-to-list set #\=))) + (cons (first lst) (second lst)))) + (kmrcl:delimited-string-to-list + (kmrcl:decode-uri-string query) #\&))) (eval-when (:compile-toplevel :load-toplevel :execute) (defvar +unambiguous-charset+ -- 2.34.1