I was needing to debug some JavaScript project that uses Jest for unit testing, and the stack trace took me to a line that read
return (
(0, _jestMatcherUtils.matcherHint)(
matcherName,
undefined,
undefined,
options
) +
'\n\n' +
(deepEqualityName !== null ?
(0, _jestMatcherUtils.DIM_COLOR)(
`If it should pass with deep equality, replace "${matcherName}" with "${deepEqualityName}"`
) +
'\n\n' :
''
) +
(0, _jestMatcherUtils.printDiffOrStringify)(
expected,
received,
EXPECTED_LABEL,
RECEIVED_LABEL,
isExpand(this.expand)
)
);
Seeing this made me wonder why the expression (0, myFunc) is a function, and why does TypeScript write functions in this particular format?
Edit: The TypeScript source code that generated this segment can be found here