summaryrefslogtreecommitdiff
path: root/node_modules/sucrase/dist/esm/parser/traverser/index.js
diff options
context:
space:
mode:
authorPhilipp Tanlak <philipp.tanlak@gmail.com>2025-11-24 20:54:57 +0100
committerPhilipp Tanlak <philipp.tanlak@gmail.com>2025-11-24 20:57:48 +0100
commitb1e2c8fd5cb5dfa46bc440a12eafaf56cd844b1c (patch)
tree49d360fd6cbc6a2754efe93524ac47ff0fbe0f7d /node_modules/sucrase/dist/esm/parser/traverser/index.js
Docs
Diffstat (limited to 'node_modules/sucrase/dist/esm/parser/traverser/index.js')
-rw-r--r--node_modules/sucrase/dist/esm/parser/traverser/index.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/node_modules/sucrase/dist/esm/parser/traverser/index.js b/node_modules/sucrase/dist/esm/parser/traverser/index.js
new file mode 100644
index 0000000..eb8c990
--- /dev/null
+++ b/node_modules/sucrase/dist/esm/parser/traverser/index.js
@@ -0,0 +1,18 @@
+
+import {nextToken, skipLineComment} from "../tokenizer/index";
+import {charCodes} from "../util/charcodes";
+import {input, state} from "./base";
+import {parseTopLevel} from "./statement";
+
+export function parseFile() {
+ // If enabled, skip leading hashbang line.
+ if (
+ state.pos === 0 &&
+ input.charCodeAt(0) === charCodes.numberSign &&
+ input.charCodeAt(1) === charCodes.exclamationMark
+ ) {
+ skipLineComment(2);
+ }
+ nextToken();
+ return parseTopLevel();
+}