Basic constructor macro for plexeme-punctuator structures.
(make-plexeme-punctuator [:punctuator <punctuator>])
This is the usual way to construct plexeme-punctuator structures. It simply conses together a structure with the specified fields.
This macro generates a new plexeme-punctuator structure from scratch. See also change-plexeme-punctuator, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-plexeme-punctuator (&rest args) (std::make-aggregate 'plexeme-punctuator args '((:punctuator)) 'make-plexeme-punctuator nil))
Function:
(defun plexeme-punctuator (punctuator) (declare (xargs :guard (stringp punctuator))) (declare (xargs :guard t)) (b* ((punctuator (mbe :logic (acl2::str-fix punctuator) :exec punctuator))) (cons :punctuator (list punctuator))))