@@ -16,20 +16,20 @@ import {
1616import { basename } from "path" ;
1717
1818import { DatabaseItem } from "../../databases/local-databases" ;
19- import { UrlValue , BqrsId } from "../../common/bqrs-cli-types" ;
19+ import { BqrsId } from "../../common/bqrs-cli-types" ;
2020import { showLocation } from "../../databases/local-databases/locations" ;
21- import {
22- isStringLoc ,
23- isWholeFileLoc ,
24- isLineColumnLoc ,
25- } from "../../common/bqrs-utils" ;
2621import { DisposableObject } from "../../common/disposable-object" ;
27- import { asError , getErrorMessage } from "../../common/helpers-pure" ;
22+ import {
23+ asError ,
24+ assertNever ,
25+ getErrorMessage ,
26+ } from "../../common/helpers-pure" ;
2827import { redactableError } from "../../common/errors" ;
2928import { AstViewerCommands } from "../../common/commands" ;
3029import { extLogger } from "../../common/logging/vscode" ;
3130import { showAndLogExceptionWithTelemetry } from "../../common/logging" ;
3231import { telemetryListener } from "../../common/vscode/telemetry" ;
32+ import { UrlValue } from "../../common/raw-result-types" ;
3333
3434export interface AstItem {
3535 id : BqrsId ;
@@ -90,15 +90,18 @@ class AstViewerDataProvider
9090
9191 private extractLineInfo ( loc ?: UrlValue ) {
9292 if ( ! loc ) {
93- return "" ;
94- } else if ( isStringLoc ( loc ) ) {
95- return loc ;
96- } else if ( isWholeFileLoc ( loc ) ) {
97- return loc . uri ;
98- } else if ( isLineColumnLoc ( loc ) ) {
99- return loc . startLine ;
100- } else {
101- return "" ;
93+ return ;
94+ }
95+
96+ switch ( loc . type ) {
97+ case "string" :
98+ return loc . value ;
99+ case "wholeFileLocation" :
100+ return loc . uri ;
101+ case "lineColumnLocation" :
102+ return loc . startLine ;
103+ default :
104+ assertNever ( loc ) ;
102105 }
103106 }
104107}
0 commit comments