• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
        • Warnings
        • Primitives
        • Use-set
        • Syntax
        • Getting-started
        • Utilities
        • Loader
          • Preprocessor
          • Vl-loadconfig
          • Lexer
            • Lex-strings
            • Lex-identifiers
            • Vl-typo-uppercase-p
            • Vl-typo-number-p
            • Vl-typo-lowercase-p
            • Lex-numbers
            • Chartypes
            • Vl-lex
            • Defchar
            • Tokens
            • Lex-keywords
            • Lexstate
              • Vl-lexstate-p
                • Vl-lexstate
                • Make-vl-lexstate
                • Change-vl-lexstate
                  • Honsed-vl-lexstate
                  • Make-honsed-vl-lexstate
                  • Vl-lexstate->xorops
                  • Vl-lexstate->timelitsp
                  • Vl-lexstate->strextsp
                  • Vl-lexstate->starops
                  • Vl-lexstate->remops
                  • Vl-lexstate->quotesp
                  • Vl-lexstate->poundops
                  • Vl-lexstate->plusops
                  • Vl-lexstate->lessops
                  • Vl-lexstate->kwdtable
                  • Vl-lexstate->gtops
                  • Vl-lexstate->extintsp
                  • Vl-lexstate->eqops
                  • Vl-lexstate->dotops
                  • Vl-lexstate->dollarops
                  • Vl-lexstate->divops
                  • Vl-lexstate->dashops
                  • Vl-lexstate->colonops
                  • Vl-lexstate->barops
                  • Vl-lexstate->bangops
                  • Vl-lexstate->andops
                • Vl-plaintoken-alistp
                • *vl-2012-strict-lexstate*
                • Vl-lexstate->plainalist
                • Vl-lexstate-init
                • *vl-2005-strict-lexstate*
                • *vl-2012-lexstate*
                • *vl-2005-lexstate*
              • Make-test-tokens
              • Lexer-utils
              • Lex-comments
              • Vl-typo-uppercase-list-p
              • Vl-typo-lowercase-list-p
              • Vl-typo-number-list-p
            • Vl-loadstate
            • Parser
            • Vl-load-merge-descriptions
            • Scope-of-defines
            • Vl-load-file
            • Vl-flush-out-descriptions
            • Vl-description
            • Vl-loadresult
            • Vl-read-file
            • Vl-find-basename/extension
            • Vl-find-file
            • Vl-read-files
            • Extended-characters
            • Vl-load
            • Vl-load-main
            • Vl-load-description
            • Vl-descriptions-left-to-load
            • Inject-warnings
            • Vl-load-descriptions
            • Vl-load-files
            • Vl-load-summary
            • Vl-collect-modules-from-descriptions
            • Vl-descriptionlist
          • Transforms
          • Lint
          • Mlib
          • Server
          • Kit
          • Printer
          • Esim-vl
          • Well-formedness
        • Sv
        • Fgl
        • Vwsim
        • Vl
        • X86isa
        • Svl
        • Rtl
      • Software-verification
      • Math
      • Testing-utilities
    • Vl-lexstate-p

    Change-vl-lexstate

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

    Syntax:

    (change-vl-lexstate x 
                        [:kwdtable <kwdtable>] 
                        [:bangops <bangops>] 
                        [:poundops <poundops>] 
                        [:remops <remops>] 
                        [:andops <andops>] 
                        [:starops <starops>] 
                        [:plusops <plusops>] 
                        [:dashops <dashops>] 
                        [:dotops <dotops>] 
                        [:divops <divops>] 
                        [:colonops <colonops>] 
                        [:lessops <lessops>] 
                        [:gtops <gtops>] 
                        [:eqops <eqops>] 
                        [:xorops <xorops>] 
                        [:barops <barops>] 
                        [:dollarops <dollarops>] 
                        [:quotesp <quotesp>] 
                        [:strextsp <strextsp>] 
                        [:timelitsp <timelitsp>] 
                        [:extintsp <extintsp>]) 
    

    This is a sometimes useful alternative to make-vl-lexstate. It constructs a new vl-lexstate-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-lexstate

    (defmacro change-vl-lexstate (x &rest args)
      (std::change-aggregate 'vl-lexstate
                             x args
                             '((:kwdtable . vl-lexstate->kwdtable)
                               (:bangops . vl-lexstate->bangops)
                               (:poundops . vl-lexstate->poundops)
                               (:remops . vl-lexstate->remops)
                               (:andops . vl-lexstate->andops)
                               (:starops . vl-lexstate->starops)
                               (:plusops . vl-lexstate->plusops)
                               (:dashops . vl-lexstate->dashops)
                               (:dotops . vl-lexstate->dotops)
                               (:divops . vl-lexstate->divops)
                               (:colonops . vl-lexstate->colonops)
                               (:lessops . vl-lexstate->lessops)
                               (:gtops . vl-lexstate->gtops)
                               (:eqops . vl-lexstate->eqops)
                               (:xorops . vl-lexstate->xorops)
                               (:barops . vl-lexstate->barops)
                               (:dollarops . vl-lexstate->dollarops)
                               (:quotesp . vl-lexstate->quotesp)
                               (:strextsp . vl-lexstate->strextsp)
                               (:timelitsp . vl-lexstate->timelitsp)
                               (:extintsp . vl-lexstate->extintsp))
                             'change-vl-lexstate
                             'remake-vl-lexstate))