• 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
              • Vl-inttoken-p
              • Vl-plaintoken-p
              • Vl-token->etext
              • Vl-token->type
              • Vl-token-p
              • Vl-idtoken-p
                • Vl-idtoken
                • Make-vl-idtoken
                • Change-vl-idtoken
                • Honsed-vl-idtoken
                • Make-honsed-vl-idtoken
                • Vl-idtoken->name
                • Vl-idtoken->etext
              • Vl-timetoken-p
              • Vl-stringtoken-p
              • Vl-kill-whitespace-and-comments
              • Vl-tokenlist->etext
              • Vl-extinttoken-p
              • Vl-sysidtoken-p
              • Vl-realtoken-p
              • Vl-tokenlist-p
              • Vl-tokenlist->string-with-spaces
              • Vl-idtoken-list-p
              • Vl-token->loc
              • Vl-plaintokentypelist-p
              • Vl-tokenlistlist-p
              • Vl-token->string
            • Lex-keywords
            • 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
  • Tokens

Vl-idtoken-p

Tokens for ordinary identifiers.

(vl-idtoken-p x) is a defaggregate of the following fields.

  • etext — The characters that gave rise to this token.
        Invariant (and (vl-echarlist-p etext) (consp etext) (true-listp etext)).
  • name — An ACL2 string with the name of this literal.
        Invariant (stringp name).

Source link: vl-idtoken-p

Note that we distinguish between plain identifiers and system identifiers, such as $display. We only generate a vl-idtoken for a plain identifier.

Usually name matches up with etext, but note that from Section 3.7.1 of the Verilog-2005 standard that in escaped identifiers, the initial backslash is not considered to be part of the identifier's name. So, if we process a Verilog file which includes the identifiers \foo and foo, the resulting tokens will have different etext but the same name.

BOZO double check that this is still how things work in SystemVerilog, give updated references to the standard.

Subtopics

Vl-idtoken
Raw constructor for vl-idtoken-p structures.
Make-vl-idtoken
Constructor macro for vl-idtoken-p structures.
Change-vl-idtoken
A copying macro that lets you create new vl-idtoken-p structures, based on existing structures.
Honsed-vl-idtoken
Raw constructor for honsed vl-idtoken-p structures.
Make-honsed-vl-idtoken
Constructor macro for honsed vl-idtoken-p structures.
Vl-idtoken->name
Access the name field of a vl-idtoken-p structure.
Vl-idtoken->etext
Access the etext field of a vl-idtoken-p structure.