Pretty-print a struct declaration.
(pprint-structdecl decl level) → lines
Function:
(defun pprint-structdecl (decl level) (declare (xargs :guard (and (structdeclp decl) (natp level)))) (let ((__function__ 'pprint-structdecl)) (declare (ignorable __function__)) (b* (((structdecl decl) decl)) (append (list (pprint-line (msg "~s0 ~@1 {" (if decl.recordp "record" "struct") (pprint-identifier decl.name)) level)) (pprint-compdecl-list decl.components (1+ level)) (list (pprint-line "}" level))))))
Theorem:
(defthm msg-listp-of-pprint-structdecl (b* ((lines (pprint-structdecl decl level))) (msg-listp lines)) :rule-classes :rewrite)