Basic constructor macro for vl-user-paramsetting structures.
(make-vl-user-paramsetting [:modname <modname>] [:unparam-name <unparam-name>] [:settings <settings>])
This is the usual way to construct vl-user-paramsetting structures. It simply conses together a structure with the specified fields.
This macro generates a new vl-user-paramsetting structure from scratch. See also change-vl-user-paramsetting, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-vl-user-paramsetting (&rest args) (std::make-aggregate 'vl-user-paramsetting args '((:modname) (:unparam-name) (:settings)) 'make-vl-user-paramsetting nil))
Function:
(defun vl-user-paramsetting (modname unparam-name settings) (declare (xargs :guard (and (stringp modname) (stringp unparam-name) (vl-string/int-alist-p settings)))) (declare (xargs :guard t)) (let ((__function__ 'vl-user-paramsetting)) (declare (ignorable __function__)) (b* ((modname (mbe :logic (str-fix modname) :exec modname)) (unparam-name (mbe :logic (str-fix unparam-name) :exec unparam-name)) (settings (mbe :logic (vl-string/int-alist-fix settings) :exec settings))) (list modname unparam-name settings))))