Skip to content

Commit dc632d5

Browse files
committed
Change to use QueryLanguage | undefined.
1 parent 6accba6 commit dc632d5

File tree

3 files changed

+11
-7
lines changed

3 files changed

+11
-7
lines changed

extensions/ql-vscode/src/common/query-language.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,9 @@ export const dbSchemeToLanguage: Record<string, QueryLanguage> = {
6262
export function isQueryLanguage(language: string): language is QueryLanguage {
6363
return Object.values(QueryLanguage).includes(language as QueryLanguage);
6464
}
65+
66+
export function tryGetQueryLanguage(
67+
language: string,
68+
): QueryLanguage | undefined {
69+
return isQueryLanguage(language) ? language : undefined;
70+
}

extensions/ql-vscode/src/databases/local-databases-ui.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ import {
5151
createMultiSelectionCommand,
5252
createSingleSelectionCommand,
5353
} from "../common/vscode/selection-commands";
54-
import { QueryLanguage } from "../common/query-language";
54+
import { QueryLanguage, tryGetQueryLanguage } from "../common/query-language";
5555
import { LanguageContextStore } from "../language-context-store";
5656

5757
enum SortOrder {
@@ -143,7 +143,9 @@ class DatabaseTreeDataProvider
143143
if (element === undefined) {
144144
// Filter items by language
145145
const displayItems = this.databaseManager.databaseItems.filter((item) => {
146-
return this.languageContext.shouldInclude(item.language);
146+
return this.languageContext.shouldInclude(
147+
tryGetQueryLanguage(item.language),
148+
);
147149
});
148150

149151
// Sort items

extensions/ql-vscode/src/language-context-store.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,7 @@ export class LanguageContextStore extends DisposableObject {
4343
);
4444
}
4545

46-
// This method takes a string to allow it to be used in cases
47-
// where the language is not always a known one.
48-
// The semantics of such an unknown langauge is that it is
49-
// only included if the current language context is "All".
50-
public shouldInclude(language: string): boolean {
46+
public shouldInclude(language: QueryLanguage | undefined): boolean {
5147
return this.languageFilter === "All" || this.languageFilter === language;
5248
}
5349
}

0 commit comments

Comments
 (0)