From 6489538623714a7b54d816addb05e8492a810a24 Mon Sep 17 00:00:00 2001 From: Jason Reed Date: Tue, 28 Apr 2020 12:00:24 -0400 Subject: [PATCH 1/2] Add queries for ide search. This enables jump-to-definition and find-references in the VS Code extension, for golang source archives. --- ql/src/localDefinitions.ql | 19 +++++++++++++++++++ ql/src/localReferences.ql | 19 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 ql/src/localDefinitions.ql create mode 100644 ql/src/localReferences.ql diff --git a/ql/src/localDefinitions.ql b/ql/src/localDefinitions.ql new file mode 100644 index 00000000000..9618d8f8637 --- /dev/null +++ b/ql/src/localDefinitions.ql @@ -0,0 +1,19 @@ +/** + * @name Jump-to-definition links + * @description Generates use-definition pairs that provide the data + * for jump-to-definition in the code viewer. + * @kind definitions + * @id go/ide-jump-to-definition + * @tags ide-contextual-queries/local-definitions + */ + +import go + +external string selectedSourceFile(); + +cached +File getEncodedFile(string name) { result.getAbsolutePath().replaceAll(":", "_") = name } + +from Ident def, Ident use, Entity e +where use.uses(e) and def.declares(e) and use.getFile() = getEncodedFile(selectedSourceFile()) +select use, def, "V" diff --git a/ql/src/localReferences.ql b/ql/src/localReferences.ql new file mode 100644 index 00000000000..ddd556fc8b3 --- /dev/null +++ b/ql/src/localReferences.ql @@ -0,0 +1,19 @@ +/** + * @name Find-references links + * @description Generates use-definition pairs that provide the data + * for find-references in the code viewer. + * @kind definitions + * @id go/ide-find-references + * @tags ide-contextual-queries/local-references + */ + +import go + +external string selectedSourceFile(); + +cached +File getEncodedFile(string name) { result.getAbsolutePath().replaceAll(":", "_") = name } + +from Ident def, Ident use, Entity e +where use.uses(e) and def.declares(e) and def.getFile() = getEncodedFile(selectedSourceFile()) +select use, def, "V" From 5653889a39f961d41dc4393437f4acd5fbef7c03 Mon Sep 17 00:00:00 2001 From: Jason Reed Date: Tue, 5 May 2020 09:22:44 -0400 Subject: [PATCH 2/2] Exclude IDE queries from query suites. --- ql/src/codeql-suites/go-lgtm-full.qls | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ql/src/codeql-suites/go-lgtm-full.qls b/ql/src/codeql-suites/go-lgtm-full.qls index ee466f62619..6950fccec02 100644 --- a/ql/src/codeql-suites/go-lgtm-full.qls +++ b/ql/src/codeql-suites/go-lgtm-full.qls @@ -2,3 +2,8 @@ - qlpack: codeql-go - apply: lgtm-selectors.yml from: codeql-suite-helpers +# These are only for IDE use. +- exclude: + tags contain: + - ide-contextual-queries/local-definitions + - ide-contextual-queries/local-references