• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Community
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
        • Warnings
        • Primitives
        • Use-set
        • Syntax
        • Getting-started
        • Utilities
        • Loader
        • Transforms
        • Lint
        • Mlib
        • Server
        • Kit
          • Vl-model
          • Vl-json
            • Vl-json-opts-p
              • Parse-vl-json-opts
              • Vl-json-opts
              • Make-vl-json-opts
              • Change-vl-json-opts
                • Honsed-vl-json-opts
                • Make-honsed-vl-json-opts
                • *vl-json-opts-usage*
                • Vl-json-opts->strict
                • Vl-json-opts->separate
                • Vl-json-opts->search-path
                • Vl-json-opts->readme
                • Vl-json-opts->outfile
                • Vl-json-opts->mem
                • Vl-json-opts->help
                • Vl-json-opts->edition
                • Vl-json-opts->debug
            • Vl-gather
            • Vl-server
            • Vl-pp
            • Vl-lint
            • Vl-main
            • Vl-toolkit-other-command
            • Vl-help
          • Printer
          • Esim-vl
          • Well-formedness
        • Sv
        • Fgl
        • Vwsim
        • Vl
        • X86isa
        • Svl
        • Rtl
      • Software-verification
      • Math
      • Testing-utilities
    • Vl-json-opts-p

    Change-vl-json-opts

    A copying macro that lets you create new vl-json-opts-p structures, based on existing structures.

    Syntax:

    (change-vl-json-opts x 
                         [:help <help>] 
                         [:readme <readme>] 
                         [:outfile <outfile>] 
                         [:search-path <search-path>] 
                         [:separate <separate>] 
                         [:edition <edition>] 
                         [:strict <strict>] 
                         [:mem <mem>] 
                         [:debug <debug>]) 
    

    This is a sometimes useful alternative to make-vl-json-opts. It constructs a new vl-json-opts-p structure that is a copy of x, except that you can explicitly change some particular fields. Any fields you don't mention just keep their values from x.

    Definition

    This is an ordinary change- macro introduced by defaggregate.

    Macro: change-vl-json-opts

    (defmacro change-vl-json-opts (x &rest args)
     (std::change-aggregate 'vl-json-opts
                            x args
                            '((:help . vl-json-opts->help)
                              (:readme . vl-json-opts->readme)
                              (:outfile . vl-json-opts->outfile)
                              (:search-path . vl-json-opts->search-path)
                              (:separate . vl-json-opts->separate)
                              (:edition . vl-json-opts->edition)
                              (:strict . vl-json-opts->strict)
                              (:mem . vl-json-opts->mem)
                              (:debug . vl-json-opts->debug))
                            'change-vl-json-opts
                            'nil))