You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/code-security/how-tos/scan-code-for-vulnerabilities/scan-from-vs-code/exploring-the-structure-of-your-source-code.md
+7-14Lines changed: 7 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,30 +9,23 @@ topics:
9
9
- Code Security
10
10
- Code scanning
11
11
- CodeQL
12
-
intro: You can use the AST viewer to display the abstract syntax tree of a {% data variables.product.prodname_codeql %} database.
12
+
intro: Visualize how your code maps to {% data variables.product.prodname_codeql %} classes in {% data variables.product.prodname_vscode_shortname %}.
The abstract syntax tree (AST) of a program represents the program's syntactic structure. Nodes on the AST represent elements such as statements and expressions. A {% data variables.product.prodname_codeql %} database encodes these program elements and the relationships between them through a database schema. For more information about database schemas, see [{% data variables.product.prodname_codeql %} glossary](https://codeql.github.com/docs/codeql-overview/codeql-glossary/#ql-database-schema) in the {% data variables.product.prodname_codeql %} documentation.
21
+
To view the abstract syntax tree (AST) of a source file, you need to have an appropriate {% data variables.product.prodname_codeql %} query (usually `printAST.ql`) in your workspace. If you do not have an appropriate query, you can update your copy of the [`github/codeql`](https://github.com/github/codeql) repository from the `main` branch.
22
22
23
-
{% data variables.product.prodname_codeql %} for {% data variables.product.prodname_vscode %} contains an AST viewer. The viewer consists of a graph visualization view that lets you explore the AST of a file in a {% data variables.product.prodname_codeql %} database. This helps you see which {% data variables.product.prodname_codeql %} classes correspond to which parts of your source files.
23
+
> [!NOTE] Updating your repository may discard your query caches, making your next query runs slower.
24
24
25
25
## Viewing the abstract syntax tree of a source file
26
26
27
-
> [!NOTE]
28
-
> If you don't have an appropriate query (usually `printAST.ql`) in your workspace, the **{% data variables.product.prodname_codeql %}: View AST** command in the following steps won't work. To fix this, you can update your copy of the [`github/codeql`](https://github.com/github/codeql) repository from the `main` branch. If you do this, query caches may be discarded, so your next query runs may be slower.
29
-
30
27
1. Open the "Databases" view in the extension, and right-click the database that you want to explore. Click **Add Database Source to Workspace**.
31
-
32
28
1. Navigate to a {% data variables.product.prodname_codeql %} database's source file in the File Explorer.
33
-
34
-
1. Run **{% data variables.product.prodname_codeql %}: View AST** from the {% data variables.product.prodname_vscode_command_palette_shortname %}. This runs a {% data variables.product.prodname_codeql %} query (usually called `printAST.ql`) over the active file, which may take a few seconds. Once the query is complete, the AST viewer will display the structure of the source file.
35
-
36
-
1. To see the nested structure of the source file, click the arrows and expand the nodes.
37
-
38
-
You can click a node in the AST viewer to jump to it in the source code. Conversely, if you click a section of the source code, the AST viewer displays the corresponding node.
29
+
1. Run **{% data variables.product.prodname_codeql %}: View AST** from the {% data variables.product.prodname_vscode_command_palette_shortname %}. This runs a {% data variables.product.prodname_codeql %} query over the active file, which may take a few seconds. Once the query is complete, the AST viewer will display the structure of the source file.
30
+
1. To see the nested structure of the source file, click the arrows and expand the nodes. These nodes represent different elements of your code, such as statements and expressions.
31
+
1. To see the source code corresponding to a particular node, click the node in the AST viewer. Similarly, you can click a section of the source code to display the corresponding node.
0 commit comments