assertNever special-cases nodes with SyntaxKind (#27712)

* assertNever special-cases nodes with SyntaxKind

* Fix single-quote lint

* Use stringify when not a node
This commit is contained in:
Nathan Shively-Sanders 2018-10-11 12:33:29 -07:00 committed by GitHub
parent 5a126e2b27
commit 4d504f9b30
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1602,8 +1602,9 @@ namespace ts {
return value;
}
export function assertNever(member: never, message?: string, stackCrawlMark?: AnyFunction): never {
return fail(message || `Illegal value: ${member}`, stackCrawlMark || assertNever);
export function assertNever(member: never, message = "Illegal value:", stackCrawlMark?: AnyFunction): never {
const detail = "kind" in member && "pos" in member ? "SyntaxKind: " + showSyntaxKind(member as Node) : JSON.stringify(member);
return fail(`${message} ${detail}`, stackCrawlMark || assertNever);
}
export function getFunctionName(func: AnyFunction) {