diff --git a/literate/package.org b/literate/package.org index 700c33c..6187ab7 100644 --- a/literate/package.org +++ b/literate/package.org @@ -138,6 +138,32 @@ flowchart TD #:find-headline-missing-id)) #+end_src +#+begin_src lisp :tangle ../src/package.lisp +(in-package :opencortex) + +(defun proto-get (plist key) + "Robustly retrieves a value from a plist, checking both uppercase and lowercase keyword versions." + (let* ((s (string key)) + (up (intern (string-upcase s) :keyword)) + (dn (intern (string-downcase s) :keyword))) + (or (getf plist up) (getf plist dn)))) +#+end_src + +#+end_src + +#+begin_src lisp :tangle ../src/package.lisp +(in-package :opencortex) + +(defun proto-get (plist key) + "Robustly retrieves a value from a plist, checking both uppercase and lowercase keyword versions." + (let* ((s (string key)) + (up (intern (string-upcase s) :keyword)) + (dn (intern (string-downcase s) :keyword))) + (or (getf plist up) (getf plist dn)))) +#+end_src + +#+end_src + ** Package Implementation #+begin_src lisp :tangle ../src/package.lisp (in-package :opencortex) @@ -217,9 +243,4 @@ Centralized logging function. It simultaneously writes to standard output and th (finish-output))) #+end_src -(defun proto-get (plist key) - "Robustly retrieves a value from a plist, checking both uppercase and lowercase keyword versions." - (let* ((s (string key)) - (up (intern (string-upcase s) :keyword)) - (dn (intern (string-downcase s) :keyword))) - (or (getf plist up) (getf plist dn)))) + diff --git a/src/package.lisp b/src/package.lisp index b3f0155..25a53db 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -118,6 +118,24 @@ (in-package :opencortex) +(defun proto-get (plist key) + "Robustly retrieves a value from a plist, checking both uppercase and lowercase keyword versions." + (let* ((s (string key)) + (up (intern (string-upcase s) :keyword)) + (dn (intern (string-downcase s) :keyword))) + (or (getf plist up) (getf plist dn)))) + +(in-package :opencortex) + +(defun proto-get (plist key) + "Robustly retrieves a value from a plist, checking both uppercase and lowercase keyword versions." + (let* ((s (string key)) + (up (intern (string-upcase s) :keyword)) + (dn (intern (string-downcase s) :keyword))) + (or (getf plist up) (getf plist dn)))) + +(in-package :opencortex) + (defvar *system-logs* nil) (defvar *logs-lock* (bt:make-lock "harness-logs-lock")) (defvar *max-log-history* 100)