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

Function bindModuleDeclaration

test/fixtures/snapshot/typescript.js:46356–46390  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

46354 }
46355 }
46356 function bindModuleDeclaration(node) {
46357 setExportContextFlag(node);
46358 if (ts.isAmbientModule(node)) {
46359 if (ts.hasSyntacticModifier(node, 1 /* ModifierFlags.Export */)) {
46360 errorOnFirstToken(node, ts.Diagnostics.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible);
46361 }
46362 if (ts.isModuleAugmentationExternal(node)) {
46363 declareModuleSymbol(node);
46364 }
46365 else {
46366 var pattern = void 0;
46367 if (node.name.kind === 10 /* SyntaxKind.StringLiteral */) {
46368 var text = node.name.text;
46369 pattern = ts.tryParsePattern(text);
46370 if (pattern === undefined) {
46371 errorOnFirstToken(node.name, ts.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character, text);
46372 }
46373 }
46374 var symbol = declareSymbolAndAddToSymbolTable(node, 512 /* SymbolFlags.ValueModule */, 110735 /* SymbolFlags.ValueModuleExcludes */);
46375 file.patternAmbientModules = ts.append(file.patternAmbientModules, pattern && !ts.isString(pattern) ? { pattern: pattern, symbol: symbol } : undefined);
46376 }
46377 }
46378 else {
46379 var state = declareModuleSymbol(node);
46380 if (state !== 0 /* ModuleInstanceState.NonInstantiated */) {
46381 var symbol = node.symbol;
46382 // if module was already merged with some function, class or non-const enum, treat it as non-const-enum-only
46383 symbol.constEnumOnlyModule = (!(symbol.flags & (16 /* SymbolFlags.Function */ | 32 /* SymbolFlags.Class */ | 256 /* SymbolFlags.RegularEnum */)))
46384 // Current must be `const enum` only
46385 && state === 2 /* ModuleInstanceState.ConstEnumOnly */
46386 // Can't have been set to 'false' in a previous merged symbol. ('undefined' OK)
46387 && symbol.constEnumOnlyModule !== false;
46388 }
46389 }
46390 }
46391 function declareModuleSymbol(node) {
46392 var state = getModuleInstanceState(node);
46393 var instantiated = state !== 0 /* ModuleInstanceState.NonInstantiated */;

Callers 1

bindWorkerFunction · 0.85

Calls 5

setExportContextFlagFunction · 0.85
errorOnFirstTokenFunction · 0.85
declareModuleSymbolFunction · 0.85
appendMethod · 0.45

Tested by

no test coverage detected