DVT IDE for VS Code SystemVerilog User Guide
Rev. 24.1.8, 24 April 2024

Chapter 25. Workspace Symbols

You can explore all the types like classes, modules, entities, interfaces or structs that are defined in your project using Workspace Symbols. Use the Go to Symbol in Workspace... command and search for an element by name. You can select an entry from the drop-down list in order to jump to its source code.

Note: By default, Workspace Symbols will display 100 items from each category (types, macros, files). To customize this value, use the DVT.workspaceSymbols.maximumNumberOfSymbols preference.

Workspace Symbols supports semantic search, allowing to look for a specific type or file. In order to do this, use the Go to Symbol in Workspace... command and structure your query in the following manner: query_key:filter_name. DVT supports the following query keys:

  • checker

  • class

  • configuration

  • covergroup

  • enum

  • file

  • generate

  • interface

  • library

  • macro

  • module

  • package

  • primitive

  • program

  • struct

  • typedef

  • union

If you want to search for any kind of symbol and exclude macro definitions, you can use the type:pattern query.

You can also use the extends:pattern query to search for classes which extend other classes that have a name matching pattern.

Additionally, there are UVM-specific queries, that have the following format: uvm_class_name:filter_name, where uvm_class_name is one of the following:

  • uvm_agent

  • uvm_driver

  • uvm_env

  • uvm_monitor

  • uvm_scoreboard

  • uvm_sequencer

  • uvm_sequence

  • uvm_sequence_item

  • uvm_test

  • uvm_component

  • uvm_object

  • uvm_mem

  • uvm_reg

  • uvm_reg_backdoor

  • uvm_reg_frontdoor

  • uvm_reg_sequence

  • uvm_reg_adapter

  • uvm_reg_block

  • uvm_reg_field

  • uvm_reg_map

  • uvm_reg_predictor

  • uvm_reg_fifo

  • uvm_reg_file