diff options
Diffstat (limited to 'src/js_parser/ast.js')
-rw-r--r-- | src/js_parser/ast.js | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/src/js_parser/ast.js b/src/js_parser/ast.js new file mode 100644 index 000000000..a02748664 --- /dev/null +++ b/src/js_parser/ast.js @@ -0,0 +1,111 @@ +globalThis.BunASTNode ??= class BunASTNode { + position = -1; + +}; + +if (!globalThis.BunAST) { + globalThis.BunAST = { + EArray: class EArray extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EUnary: class EUnary extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EBinary: class EBinary extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EClass: class EClass extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ENew: class ENew extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EFunction: class EFunction extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ECall: class ECall extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EDot: class EDot extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EIndex: class EIndex extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EArrow: class EArrow extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EIdentifier: class EIdentifier extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EImportIdentifier: class EImportIdentifier extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EPrivateIdentifier: class EPrivateIdentifier extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EJsxElement: class EJsxElement extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EObject: class EObject extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ESpread: class ESpread extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ETemplatePart: class ETemplatePart extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ETemplate: class ETemplate extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ERegExp: class ERegExp extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EAwait: class EAwait extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EYield: class EYield extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EIf: class EIf extends BunASTNode { + no = Number.MAX_SAFE_INTEGER; + yes = Number.MAX_SAFE_INTEGER; + }, + ERequire: class ERequire extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EImport: class EImport extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EBoolean: class EBoolean extends BunASTNode { + val = false; + }, + ENumber: class ENumber extends BunASTNode { + val = 0; + }, + EBigInt: class EBigInt extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EString: class EString extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EMissing: class EMissing extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EThis: class EThis extends BunASTNode { + }, + ESuper: class ESuper extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + ENull: class ENull extends BunASTNode { + }, + EUndefined: class EUndefined extends BunASTNode { + }, + ENewTarget: class ENewTarget extends BunASTNode { + #ptr = Number.MAX_SAFE_INTEGER; + }, + EImportMeta: class EImportMeta extends BunASTNode { + }, + }; +} |