Skip to content

Commit c205712

Browse files
committed
lint(query): fix linting errors - #1107
1 parent 552578f commit c205712

File tree

3 files changed

+22
-27
lines changed

3 files changed

+22
-27
lines changed

src/queries/catalog/resolve-value-query/resolve-value-query-executor.ts

+13-14
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11
import type { ResolveValueQuery, ResolveValueQueryResult } from './resolve-value-query-format';
2-
import { staticSlicing } from '../../../slicing/static/static-slicer';
3-
import { reconstructToCode } from '../../../reconstruct/reconstruct';
4-
import { doNotAutoSelect } from '../../../reconstruct/auto-select/auto-select-defaults';
5-
import { makeMagicCommentHandler } from '../../../reconstruct/auto-select/magic-comments';
62
import { log } from '../../../util/log';
73
import type { BasicQueryData } from '../../base-query-format';
84
import { slicingCriterionToId } from '../../../slicing/criterion/parse';
@@ -13,30 +9,33 @@ export function fingerPrintOfQuery(query: ResolveValueQuery): string {
139
return JSON.stringify(query);
1410
}
1511

16-
export function executeResolveValueQuery({ dataflow: { graph, environment }, ast }: BasicQueryData, queries: readonly ResolveValueQuery[]): ResolveValueQueryResult {
12+
export function executeResolveValueQuery({ dataflow: { graph, environment } }: BasicQueryData, queries: readonly ResolveValueQuery[]): ResolveValueQueryResult {
13+
const idMap = graph.idMap;
14+
15+
if(!idMap) {
16+
throw new Error('idMap was undefined');
17+
}
18+
1719
const start = Date.now();
18-
const results: ResolveValueQueryResult['results'] = [];
20+
const results: ResolveValueQueryResult['results'] = {};
1921
for(const query of queries) {
2022
const key = fingerPrintOfQuery(query);
2123

2224
if(results[key]) {
2325
log.warn(`Duplicate Key for slicing-query: ${key}, skipping...`);
2426
}
2527

26-
const ids = query.criteria.map(criteria => slicingCriterionToId(criteria, graph.idMap!));
28+
const ids = query.criteria.map(criteria => slicingCriterionToId(criteria, idMap));
2729
const values = new Set<unknown>();
2830

29-
const resolveStart = Date.now();
3031
for(const id of ids) {
31-
resolveToValues(recoverName(id, graph.idMap), environment, graph)
32-
?.forEach(values.add);
32+
resolveToValues(recoverName(id, idMap), environment, graph)
33+
?.forEach(v => values.add(v));
3334
}
34-
const resolveEnd = Date.now();
3535

3636
results[key] = {
37-
values: values.values(),
38-
'.meta': { timing: resolveEnd - resolveStart }
39-
}
37+
values: [...values]
38+
};
4039
}
4140
return {
4241
'.meta': {
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,22 @@
11
import type { BaseQueryFormat, BaseQueryResult } from '../../base-query-format';
2-
import type { PipelineOutput } from '../../../core/steps/pipeline/pipeline';
3-
import type {
4-
DEFAULT_DATAFLOW_PIPELINE, DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE,
5-
DEFAULT_SLICING_PIPELINE
6-
} from '../../../core/steps/pipeline/default-pipelines';
2+
73
import type { SlicingCriteria } from '../../../slicing/criterion/parse';
84
import type { QueryResults, SupportedQuery } from '../../query';
95
import { bold } from '../../../util/ansi';
106
import { printAsMs } from '../../../util/time';
117
import Joi from 'joi';
128

13-
import { summarizeIdsIfTooLong } from '../../query-print';
149
import { executeResolveValueQuery } from './resolve-value-query-executor';
1510

1611

1712
export interface ResolveValueQuery extends BaseQueryFormat {
18-
readonly type: 'resolve-value';
13+
readonly type: 'resolve-value';
1914
/** The slicing criteria to use */
20-
readonly criteria: SlicingCriteria,
15+
readonly criteria: SlicingCriteria,
2116
}
2217

2318
export interface ResolveValueQueryResult extends BaseQueryResult {
24-
results: Record<string, any>
19+
results: Record<string, {values: unknown[]}>
2520
}
2621

2722
export const ResolveValueQueryDefinition = {
@@ -37,7 +32,7 @@ export const ResolveValueQueryDefinition = {
3732
return true;
3833
},
3934
schema: Joi.object({
40-
type: Joi.string().valid('resolve-value').required().description('The type of the query.'),
41-
criteria: Joi.array().items(Joi.string()).min(0).required().description('The slicing criteria to use.'),
35+
type: Joi.string().valid('resolve-value').required().description('The type of the query.'),
36+
criteria: Joi.array().items(Joi.string()).min(0).required().description('The slicing criteria to use.'),
4237
}).description('Resolve Value query used to get definitions of an identifier')
4338
} as const satisfies SupportedQuery<'resolve-value'>;

src/queries/query.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ import type {
3535
import {
3636
HappensBeforeQueryDefinition
3737
} from './catalog/happens-before-query/happens-before-query-format';
38-
import { ResolveValueQuery, ResolveValueQueryDefinition } from './catalog/resolve-value-query/resolve-value-query-format';
38+
import type { ResolveValueQuery } from './catalog/resolve-value-query/resolve-value-query-format';
39+
import { ResolveValueQueryDefinition } from './catalog/resolve-value-query/resolve-value-query-format';
3940

4041
export type Query = CallContextQuery
4142
| ConfigQuery
@@ -79,7 +80,7 @@ export const SupportedQueries = {
7980
'location-map': LocationMapQueryDefinition,
8081
'search': SearchQueryDefinition,
8182
'happens-before': HappensBeforeQueryDefinition,
82-
'resolve-value': ResolveValueQueryDefinition
83+
'resolve-value': ResolveValueQueryDefinition
8384
} as const satisfies SupportedQueries;
8485

8586
export type SupportedQueryTypes = keyof typeof SupportedQueries;

0 commit comments

Comments
 (0)