Function: majutsu-workspace--parse-record
majutsu-workspace--parse-record is a natively compiled function
defined in majutsu-workspace.el.
Signature
(majutsu-workspace--parse-record VALUES &optional PLAN)
Documentation
Parse one workspace record from VALUES using PLAN.
Return an entry plist, or nil if the record has no workspace name.
Source Code
;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-workspace.el
(defun majutsu-workspace--parse-record (values &optional plan)
"Parse one workspace record from VALUES using PLAN.
Return an entry plist, or nil if the record has no workspace name."
(let* ((plan (or plan (majutsu-workspace--ensure-template-plan)))
(specs (plist-get plan :specs))
entry)
(cl-loop for field in (plist-get plan :fields)
for spec in specs
for idx from 0
for value = (nth idx values)
do (setq entry
(plist-put
entry
(majutsu-workspace--field-key field)
(funcall (plist-get spec :parse)
(if (plist-get spec :json)
(majutsu-workspace--decode-json-field value)
value)))))
(when-let* ((name (plist-get entry :name)))
(unless (string-empty-p name)
entry))))