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

Function scan

test/fixtures/snapshot/typescript.js:11420–11866  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

11418 }
11419 }
11420 function scan() {
11421 var _a;
11422 startPos = pos;
11423 tokenFlags = 0 /* TokenFlags.None */;
11424 var asteriskSeen = false;
11425 while (true) {
11426 tokenPos = pos;
11427 if (pos >= end) {
11428 return token = 1 /* SyntaxKind.EndOfFileToken */;
11429 }
11430 var ch = codePointAt(text, pos);
11431 // Special handling for shebang
11432 if (ch === 35 /* CharacterCodes.hash */ && pos === 0 && isShebangTrivia(text, pos)) {
11433 pos = scanShebangTrivia(text, pos);
11434 if (skipTrivia) {
11435 continue;
11436 }
11437 else {
11438 return token = 6 /* SyntaxKind.ShebangTrivia */;
11439 }
11440 }
11441 switch (ch) {
11442 case 10 /* CharacterCodes.lineFeed */:
11443 case 13 /* CharacterCodes.carriageReturn */:
11444 tokenFlags |= 1 /* TokenFlags.PrecedingLineBreak */;
11445 if (skipTrivia) {
11446 pos++;
11447 continue;
11448 }
11449 else {
11450 if (ch === 13 /* CharacterCodes.carriageReturn */ && pos + 1 < end && text.charCodeAt(pos + 1) === 10 /* CharacterCodes.lineFeed */) {
11451 // consume both CR and LF
11452 pos += 2;
11453 }
11454 else {
11455 pos++;
11456 }
11457 return token = 4 /* SyntaxKind.NewLineTrivia */;
11458 }
11459 case 9 /* CharacterCodes.tab */:
11460 case 11 /* CharacterCodes.verticalTab */:
11461 case 12 /* CharacterCodes.formFeed */:
11462 case 32 /* CharacterCodes.space */:
11463 case 160 /* CharacterCodes.nonBreakingSpace */:
11464 case 5760 /* CharacterCodes.ogham */:
11465 case 8192 /* CharacterCodes.enQuad */:
11466 case 8193 /* CharacterCodes.emQuad */:
11467 case 8194 /* CharacterCodes.enSpace */:
11468 case 8195 /* CharacterCodes.emSpace */:
11469 case 8196 /* CharacterCodes.threePerEmSpace */:
11470 case 8197 /* CharacterCodes.fourPerEmSpace */:
11471 case 8198 /* CharacterCodes.sixPerEmSpace */:
11472 case 8199 /* CharacterCodes.figureSpace */:
11473 case 8200 /* CharacterCodes.punctuationSpace */:
11474 case 8201 /* CharacterCodes.thinSpace */:
11475 case 8202 /* CharacterCodes.hairSpace */:
11476 case 8203 /* CharacterCodes.zeroWidthSpace */:
11477 case 8239 /* CharacterCodes.narrowNoBreakSpace */:

Callers 1

scanJsxAttributeValueFunction · 0.85

Calls 15

isShebangTriviaFunction · 0.85
scanShebangTriviaFunction · 0.85
isWhiteSpaceSingleLineFunction · 0.85
scanStringFunction · 0.85
isDigitFunction · 0.85
scanNumberFunction · 0.85
isLineBreakFunction · 0.85
appendIfCommentDirectiveFunction · 0.85
checkBigIntSuffixFunction · 0.85
scanBinaryOrOctalDigitsFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…