Skip to content

Commit 005e651

Browse files
authored
Merge pull request #3809 from asgerf/asgerf/ra-pretty-printing
More work on RA pretty printing and overall presentation
2 parents 82fe703 + 6de1b2f commit 005e651

File tree

3 files changed

+297
-161
lines changed

3 files changed

+297
-161
lines changed

extensions/ql-vscode/src/view/compare-performance/ComparePerformance.tsx

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import type {
1212
import { formatDecimal } from "../../common/number";
1313
import { styled } from "styled-components";
1414
import { Codicon, ViewTitle, WarningBox } from "../common";
15-
import { abbreviateRASteps } from "./RAPrettyPrinter";
15+
import { abbreviateRANames, abbreviateRASteps } from "./RAPrettyPrinter";
1616

1717
const enum AbsentReason {
1818
NotSeen = "NotSeen",
@@ -190,7 +190,7 @@ const SortOrderDropdown = styled.select``;
190190
interface PipelineStepProps {
191191
before: number | undefined;
192192
after: number | undefined;
193-
step: string;
193+
step: React.ReactNode;
194194
}
195195

196196
/**
@@ -216,6 +216,10 @@ function PipelineStep(props: PipelineStepProps) {
216216
);
217217
}
218218

219+
const HeaderTR = styled.tr`
220+
background-color: var(--vscode-sideBar-background);
221+
`;
222+
219223
interface HighLevelStatsProps {
220224
before: PredicateInfo;
221225
after: PredicateInfo;
@@ -229,13 +233,13 @@ function HighLevelStats(props: HighLevelStatsProps) {
229233
before.evaluationCount > 1 || after.evaluationCount > 1;
230234
return (
231235
<>
232-
<tr>
236+
<HeaderTR>
233237
<ChevronCell></ChevronCell>
234238
<NumberHeader>{hasBefore ? "Before" : ""}</NumberHeader>
235239
<NumberHeader>{hasAfter ? "After" : ""}</NumberHeader>
236240
<NumberHeader>{hasBefore && hasAfter ? "Delta" : ""}</NumberHeader>
237241
<NameHeader>Stats</NameHeader>
238-
</tr>
242+
</HeaderTR>
239243
{showEvaluationCount && (
240244
<PipelineStep
241245
before={before.evaluationCount || undefined}
@@ -360,6 +364,8 @@ export function ComparePerformance(_: Record<string, never>) {
360364
totalDiff += row.diff;
361365
}
362366

367+
const rowNames = abbreviateRANames(rows.map((row) => row.name));
368+
363369
return (
364370
<>
365371
<ViewTitle>Performance comparison</ViewTitle>
@@ -393,16 +399,16 @@ export function ComparePerformance(_: Record<string, never>) {
393399
</SortOrderDropdown>
394400
<Table>
395401
<thead>
396-
<tr>
402+
<HeaderTR>
397403
<ChevronCell />
398404
<NumberHeader>Before</NumberHeader>
399405
<NumberHeader>After</NumberHeader>
400406
<NumberHeader>Delta</NumberHeader>
401407
<NameHeader>Predicate</NameHeader>
402-
</tr>
408+
</HeaderTR>
403409
</thead>
404410
</Table>
405-
{rows.map((row) => (
411+
{rows.map((row, rowIndex) => (
406412
<Table
407413
key={row.name}
408414
className={expandedPredicates.has(row.name) ? "expanded" : ""}
@@ -423,7 +429,7 @@ export function ComparePerformance(_: Record<string, never>) {
423429
{renderAbsoluteValue(row.before)}
424430
{renderAbsoluteValue(row.after)}
425431
{renderDelta(row.diff)}
426-
<NameCell>{row.name}</NameCell>
432+
<NameCell>{rowNames[rowIndex]}</NameCell>
427433
</PredicateTR>
428434
{expandedPredicates.has(row.name) && (
429435
<>
@@ -433,7 +439,7 @@ export function ComparePerformance(_: Record<string, never>) {
433439
row.after.pipelines,
434440
).map(({ name, first, second }, pipelineIndex) => (
435441
<Fragment key={pipelineIndex}>
436-
<tr>
442+
<HeaderTR>
437443
<td></td>
438444
<NumberHeader>{first != null && "Before"}</NumberHeader>
439445
<NumberHeader>{second != null && "After"}</NumberHeader>
@@ -448,7 +454,7 @@ export function ComparePerformance(_: Record<string, never>) {
448454
? " (before)"
449455
: ""}
450456
</NameHeader>
451-
</tr>
457+
</HeaderTR>
452458
{abbreviateRASteps(first?.steps ?? second!.steps).map(
453459
(step, index) => (
454460
<PipelineStep

extensions/ql-vscode/src/view/compare-performance/RAPrettyPrinter.ts

Lines changed: 0 additions & 151 deletions
This file was deleted.

0 commit comments

Comments
 (0)