MCPcopy Index your code
hub / github.com/nodejs/node / formatEnum

Function formatEnum

test/fixtures/snapshot/typescript.js:2838–2870  ·  view source on GitHub ↗

* Formats an enum value as a string for debugging and debug assertions.

(value, enumObject, isFlags)

Source from the content-addressed store, hash-verified

2836 * Formats an enum value as a string for debugging and debug assertions.
2837 */
2838 function formatEnum(value, enumObject, isFlags) {
2839 if (value === void 0) { value = 0; }
2840 var members = getEnumMembers(enumObject);
2841 if (value === 0) {
2842 return members.length > 0 && members[0][0] === 0 ? members[0][1] : "0";
2843 }
2844 if (isFlags) {
2845 var result = "";
2846 var remainingFlags = value;
2847 for (var _i = 0, members_1 = members; _i < members_1.length; _i++) {
2848 var _a = members_1[_i], enumValue = _a[0], enumName = _a[1];
2849 if (enumValue > value) {
2850 break;
2851 }
2852 if (enumValue !== 0 && enumValue & value) {
2853 result = "".concat(result).concat(result ? "|" : "").concat(enumName);
2854 remainingFlags &= ~enumValue;
2855 }
2856 }
2857 if (remainingFlags === 0) {
2858 return result;
2859 }
2860 }
2861 else {
2862 for (var _b = 0, members_2 = members; _b < members_2.length; _b++) {
2863 var _c = members_2[_b], enumValue = _c[0], enumName = _c[1];
2864 if (enumValue === value) {
2865 return enumName;
2866 }
2867 }
2868 }
2869 return value.toString();
2870 }
2871 Debug.formatEnum = formatEnum;
2872 function getEnumMembers(enumObject) {
2873 var result = [];

Callers 12

formatSyntaxKindFunction · 0.85
formatSnippetKindFunction · 0.85
formatNodeFlagsFunction · 0.85
formatModifierFlagsFunction · 0.85
formatTransformFlagsFunction · 0.85
formatEmitFlagsFunction · 0.85
formatSymbolFlagsFunction · 0.85
formatTypeFlagsFunction · 0.85
formatSignatureFlagsFunction · 0.85
formatObjectFlagsFunction · 0.85
formatFlowFlagsFunction · 0.85

Calls 3

getEnumMembersFunction · 0.85
concatMethod · 0.80
toStringMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…