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

Function isTypeAssignableToKind

test/fixtures/snapshot/typescript.js:78563–78580  ·  view source on GitHub ↗
(source, kind, strict)

Source from the content-addressed store, hash-verified

78561 return false;
78562 }
78563 function isTypeAssignableToKind(source, kind, strict) {
78564 if (source.flags & kind) {
78565 return true;
78566 }
78567 if (strict && source.flags & (3 /* TypeFlags.AnyOrUnknown */ | 16384 /* TypeFlags.Void */ | 32768 /* TypeFlags.Undefined */ | 65536 /* TypeFlags.Null */)) {
78568 return false;
78569 }
78570 return !!(kind & 296 /* TypeFlags.NumberLike */) && isTypeAssignableTo(source, numberType) ||
78571 !!(kind & 2112 /* TypeFlags.BigIntLike */) && isTypeAssignableTo(source, bigintType) ||
78572 !!(kind & 402653316 /* TypeFlags.StringLike */) && isTypeAssignableTo(source, stringType) ||
78573 !!(kind & 528 /* TypeFlags.BooleanLike */) && isTypeAssignableTo(source, booleanType) ||
78574 !!(kind & 16384 /* TypeFlags.Void */) && isTypeAssignableTo(source, voidType) ||
78575 !!(kind & 131072 /* TypeFlags.Never */) && isTypeAssignableTo(source, neverType) ||
78576 !!(kind & 65536 /* TypeFlags.Null */) && isTypeAssignableTo(source, nullType) ||
78577 !!(kind & 32768 /* TypeFlags.Undefined */) && isTypeAssignableTo(source, undefinedType) ||
78578 !!(kind & 4096 /* TypeFlags.ESSymbol */) && isTypeAssignableTo(source, esSymbolType) ||
78579 !!(kind & 67108864 /* TypeFlags.NonPrimitive */) && isTypeAssignableTo(source, nonPrimitiveType);
78580 }
78581 function allTypesAssignableToKind(source, kind, strict) {
78582 return source.flags & 1048576 /* TypeFlags.Union */ ?
78583 ts.every(source.types, function (subType) { return allTypesAssignableToKind(subType, kind, strict); }) :

Callers 15

isNumericComputedNameFunction · 0.85
isSymbolWithSymbolNameFunction · 0.85
getUnaryResultTypeFunction · 0.85
allTypesAssignableToKindFunction · 0.85
checkInExpressionFunction · 0.85
bothAreBigIntLikeFunction · 0.85

Calls 1

isTypeAssignableToFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…