• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
      • Sv
      • Fgl
      • Vwsim
      • Vl
        • Syntax
        • Loader
        • Warnings
        • Getting-started
        • Utilities
        • Printer
        • Kit
        • Mlib
        • Transforms
          • Unparameterization
          • Elaborate
          • Addnames
          • Annotate
            • Increment-elim
            • Make-implicit-wires
              • Shadowcheck
                • Vl-shadowcheck-genelement
                • Vl-shadowcheck-reference-name
                • Vl-shadowcheck-declare-name
                • Deltemps
                • Vl-shadowcheck-modelement
                • Vl-lexscope
                  • Vl-lexscope-entry
                    • Vl-lexscope-entry-fix
                    • Vl-lexscope-entry-equiv
                    • Make-vl-lexscope-entry
                    • Vl-lexscope-entry->wildpkgs
                    • Vl-lexscope-entry->genblockp
                    • Vl-lexscope-entry->direct-pkg
                    • Vl-lexscope-entry->decl
                    • Change-vl-lexscope-entry
                    • Vl-lexscope-entry-p
                  • Vl-lexscope-fix
                  • Vl-lexscope-equiv
                  • Vl-lexscope-find
                  • Make-vl-lexscope
                  • Vl-lexscope->wildpkgs
                  • Vl-lexscope->decls
                  • Change-vl-lexscope
                  • Vl-lexscope-p
                  • Vl-empty-lexscope
                • Vl-shadowcheck-reference-scopeexpr
                • Vl-shadowcheck-reference-names
                • Vl-shadowcheck-declare-names
                • Vl-shadowcheck-paramtype
                • Vl-shadowcheck-fun/task-loaditems
                • Vl-shadowcheck-fun/task-loaditem
                • Vl-shadowcheck-fundecl
                • Vl-shadowcheck-declare-typedefs
                • Vl-shadowcheck-blockitemlist
                • Vl-shadowcheck-portdecllist
                • Vl-shadowcheck-paramdecls
                • Vl-shadowcheck-dpiimports
                • Vl-shadowcheck-taskdecls
                • Vl-shadowcheck-taskdecl
                • Vl-shadowcheck-push-scope
                • Vl-shadowcheck-blockitem
                • Vl-shadowcheck-vardecls
                • Vl-shadowcheck-vardecl
                • Vl-shadowcheck-typedef
                • Vl-shadowcheck-portdecl
                • Vl-shadowcheck-paramdecl
                • Vl-shadowcheck-modport
                • Vl-shadowcheck-modinst
                • Vl-shadowcheck-imports
                • Vl-shadowcheck-import
                • Vl-shadowcheck-gateinst
                • Vl-shadowcheck-fundecls
                • Vl-shadowcheck-dpiimport
                • Vl-shadowcheck-ports
                • Vl-shadowcheck-port
                • Vl-shadowcheck-initial
                • Vl-shadowcheck-assign
                • Vl-shadowcheck-always
                • Vl-shadowcheck-final
                • Vl-shadowcheck-alias
                • Vl-shadowcheck-state
                • Vl-shadowcheck-module
                • Vl-shadowcheck-interface
                • Vl-shadowcheck-interfaces
                • Vl-shadowcheck-modules
                • Vl-packagemap-find-packages-for-name
                • Vl-shadowcheck-design
                • Vl-lexscopes
                • Vl-expr->maybe-subtype
                • Vl-shadowcheck-pop-scope
                • Nameclash
                • Vl-portdecl-or-blockitem
                • Vl-lexscope-decls
                • Vl-packagemap
                • Vl-portdecl-or-blockitem-list
              • Implicit-wires-minutia
              • Implicit-wires-generate-scoping
              • Vl-genbase-make-implicit-wires
              • Vl-expr-names-for-implicit
              • Vl-make-implicit-wires-main
              • Vl-implicitst
              • Vl-make-port-implicit-wires
              • Vl-import-update-implicit
              • Vl-blockitemlist-update-implicit
              • Vl-blockitem-update-implicit
              • Vl-make-ordinary-implicit-wires
              • Vl-remove-declared-wires
              • Vl-implicitsts-restore-fast-alists
              • Vl-genblock-under-cond-make-implicit-wires
              • Vl-collect-exprs-for-implicit-wires-from-namedargs
              • Vl-genblock-make-implicit-wires
              • Vl-collect-exprs-for-implicit-wires-from-portargs
              • Vl-collect-exprs-for-implicit-wires-from-namedarg
              • Vl-gateinst-exprs-for-implicit-wires
              • Vl-modinst-exprs-for-implicit-wires
              • Vl-genelementlist-make-implicit-wires
              • Vl-packagemap-find-name
            • Basic-bind-elim
            • Argresolve
            • Basicsanity
            • Portdecl-sign
            • Enum-names
            • Port-resolve
            • Udp-elim
            • Vl-annotate-design
            • Vl-annotate-module
          • Clean-warnings
          • Eliminitial
          • Custom-transform-hooks
          • Problem-modules
      • X86isa
      • Svl
      • Rtl
    • Software-verification
    • Math
    • Testing-utilities
  • Vl-lexscope

Vl-lexscope-entry

Information about a single name in a lexical scope.

This is a product type introduced by defprod.

Fields
decl — any-p
Non-nil indicates that there has been (at least one) explicit declaration of this name in this scope. In this case, decl is the corresponding declaration; it might be a vl-portdecl, a vl-vardecl, a vl-fundecl, etc.
direct-pkg — maybe-string
When non-nil, this entry is directly import from the package name direct-pkg, i.e., import foo::bar.
wildpkgs — string-listp
This entry is imported via import foo::* statements from each of packages named in wildpkgs. We used to eagerly compute this, but in the common case where there are lots of imports of big packages and relatively few uses of them, this isn't efficient. So vl-lexscope-find computes this lazily instead.
genblockp — booleanp
Non-nil indicates that this is a generate block and therefore may not be present in the scopestack.

Subtopics

Vl-lexscope-entry-fix
Fixing function for vl-lexscope-entry structures.
Vl-lexscope-entry-equiv
Basic equivalence relation for vl-lexscope-entry structures.
Make-vl-lexscope-entry
Basic constructor macro for vl-lexscope-entry structures.
Vl-lexscope-entry->wildpkgs
Get the wildpkgs field from a vl-lexscope-entry.
Vl-lexscope-entry->genblockp
Get the genblockp field from a vl-lexscope-entry.
Vl-lexscope-entry->direct-pkg
Get the direct-pkg field from a vl-lexscope-entry.
Vl-lexscope-entry->decl
Get the decl field from a vl-lexscope-entry.
Change-vl-lexscope-entry
Modifying constructor for vl-lexscope-entry structures.
Vl-lexscope-entry-p
Recognizer for vl-lexscope-entry structures.