From d8840f8a185a8e428f47d04b5a2294d81c3c0cf2 Mon Sep 17 00:00:00 2001 From: Andrew Branch Date: Fri, 25 Oct 2019 16:27:24 -0700 Subject: [PATCH] Show all matching enum flags in debug flag formatter (#34689) * Show all matching enum flags in debug formatter * Revert "Show all matching enum flags in debug formatter" This reverts commit 073099722a297ac0d483566ebd806357dafbb63d. * Same thing but simpler * Lint --- src/compiler/debug.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/compiler/debug.ts b/src/compiler/debug.ts index 40ac6c9c94f..9adc4095054 100644 --- a/src/compiler/debug.ts +++ b/src/compiler/debug.ts @@ -100,11 +100,13 @@ namespace ts { if (isFlags) { let result = ""; let remainingFlags = value; - for (let i = members.length - 1; i >= 0 && remainingFlags !== 0; i--) { - const [enumValue, enumName] = members[i]; - if (enumValue !== 0 && (remainingFlags & enumValue) === enumValue) { + for (const [enumValue, enumName] of members) { + if (enumValue > value) { + break; + } + if (enumValue !== 0 && enumValue & value) { + result = `${result}${result ? "|" : ""}${enumName}`; remainingFlags &= ~enumValue; - result = `${enumName}${result ? "|" : ""}${result}`; } } if (remainingFlags === 0) {