From 055ead20e3804f18cf69bbefd24bdc8e8d889d8e Mon Sep 17 00:00:00 2001 From: Tamas Vajk Date: Thu, 25 Jan 2024 12:08:15 +0100 Subject: [PATCH] C#: Filter results of division by 0 from cs/telemetry/extraction-information --- .../ql/src/Telemetry/ExtractorInformation.ql | 58 +++++++++++-------- 1 file changed, 33 insertions(+), 25 deletions(-) diff --git a/csharp/ql/src/Telemetry/ExtractorInformation.ql b/csharp/ql/src/Telemetry/ExtractorInformation.ql index 99ef23e83856..5cbcc096b696 100644 --- a/csharp/ql/src/Telemetry/ExtractorInformation.ql +++ b/csharp/ql/src/Telemetry/ExtractorInformation.ql @@ -167,29 +167,37 @@ module ExprStatsReport = ReportStats; from string key, float value where - fileCount(key, value) or - fileCountByExtension(key, value) or - totalNumberOfLines(key, value) or - numberOfLinesOfCode(key, value) or - totalNumberOfLinesByExtension(key, value) or - numberOfLinesOfCodeByExtension(key, value) or - extractorDiagnostics(key, value) or - numberOfAmbiguityCompilerErrors(key, value) or - numberOfDistinctAmbiguityCompilerErrorMessages(key, value) or - extractionIsStandalone(key, value) or - CallTargetStatsReport::numberOfOk(key, value) or - CallTargetStatsReport::numberOfNotOk(key, value) or - CallTargetStatsReport::percentageOfOk(key, value) or - ExprTypeStatsReport::numberOfOk(key, value) or - ExprTypeStatsReport::numberOfNotOk(key, value) or - ExprTypeStatsReport::percentageOfOk(key, value) or - TypeMentionTypeStatsReport::numberOfOk(key, value) or - TypeMentionTypeStatsReport::numberOfNotOk(key, value) or - TypeMentionTypeStatsReport::percentageOfOk(key, value) or - AccessTargetStatsReport::numberOfOk(key, value) or - AccessTargetStatsReport::numberOfNotOk(key, value) or - AccessTargetStatsReport::percentageOfOk(key, value) or - ExprStatsReport::numberOfOk(key, value) or - ExprStatsReport::numberOfNotOk(key, value) or - ExprStatsReport::percentageOfOk(key, value) + ( + fileCount(key, value) or + fileCountByExtension(key, value) or + totalNumberOfLines(key, value) or + numberOfLinesOfCode(key, value) or + totalNumberOfLinesByExtension(key, value) or + numberOfLinesOfCodeByExtension(key, value) or + extractorDiagnostics(key, value) or + numberOfAmbiguityCompilerErrors(key, value) or + numberOfDistinctAmbiguityCompilerErrorMessages(key, value) or + extractionIsStandalone(key, value) or + CallTargetStatsReport::numberOfOk(key, value) or + CallTargetStatsReport::numberOfNotOk(key, value) or + CallTargetStatsReport::percentageOfOk(key, value) or + ExprTypeStatsReport::numberOfOk(key, value) or + ExprTypeStatsReport::numberOfNotOk(key, value) or + ExprTypeStatsReport::percentageOfOk(key, value) or + TypeMentionTypeStatsReport::numberOfOk(key, value) or + TypeMentionTypeStatsReport::numberOfNotOk(key, value) or + TypeMentionTypeStatsReport::percentageOfOk(key, value) or + AccessTargetStatsReport::numberOfOk(key, value) or + AccessTargetStatsReport::numberOfNotOk(key, value) or + AccessTargetStatsReport::percentageOfOk(key, value) or + ExprStatsReport::numberOfOk(key, value) or + ExprStatsReport::numberOfNotOk(key, value) or + ExprStatsReport::percentageOfOk(key, value) + ) and + /* Infinity */ + value != 1.0 / 0.0 and + /* -Infinity */ + value != -1.0 / 0.0 and + /* NaN */ + value != 0.0 / 0.0 select key, value