Files
NapCatQQ/.pnpm-store/v3/files/fe/c965bad06d1d5cc2416869b4f50719512c05af5d2e8dd178525c71c552aff70f0a23a7a8f6beb45f0228527a76a33e91ccfd25d793cf1960c45defb721097e
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

37 lines
1.2 KiB
Plaintext

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ImportVisitor = void 0;
const definition_1 = require("../definition");
const Visitor_1 = require("./Visitor");
class ImportVisitor extends Visitor_1.Visitor {
#declaration;
#referencer;
constructor(declaration, referencer) {
super(referencer);
this.#declaration = declaration;
this.#referencer = referencer;
}
static visit(referencer, declaration) {
const importReferencer = new ImportVisitor(declaration, referencer);
importReferencer.visit(declaration);
}
ImportDefaultSpecifier(node) {
const local = node.local;
this.visitImport(local, node);
}
ImportNamespaceSpecifier(node) {
const local = node.local;
this.visitImport(local, node);
}
ImportSpecifier(node) {
const local = node.local;
this.visitImport(local, node);
}
visitImport(id, specifier) {
this.#referencer
.currentScope()
.defineIdentifier(id, new definition_1.ImportBindingDefinition(id, specifier, this.#declaration));
}
}
exports.ImportVisitor = ImportVisitor;