mirror of
https://github.com/github/codeql.git
synced 2025-12-17 01:03:14 +01:00
With this change, users are now able to run View AST command in vscode within vscode workspaces that do not include the core libraries. The relevant core library only needs to be installed in the package cache.
29 lines
758 B
Plaintext
29 lines
758 B
Plaintext
/**
|
|
* @name Print AST
|
|
* @description Outputs a representation of a file's Abstract Syntax Tree. This
|
|
* query is used by the VS Code extension.
|
|
* @id java/print-ast
|
|
* @kind graph
|
|
* @tags ide-contextual-queries/print-ast
|
|
*/
|
|
|
|
import java
|
|
import semmle.code.java.PrintAst
|
|
import definitions
|
|
|
|
/**
|
|
* The source file to generate an AST from.
|
|
*/
|
|
external string selectedSourceFile();
|
|
|
|
class PrintAstConfigurationOverride extends PrintAstConfiguration {
|
|
/**
|
|
* Holds if the location matches the selected file in the VS Code extension and
|
|
* the element is `fromSource`.
|
|
*/
|
|
override predicate shouldPrint(Element e, Location l) {
|
|
super.shouldPrint(e, l) and
|
|
l.getFile() = getFileBySourceArchiveName(selectedSourceFile())
|
|
}
|
|
}
|