[JS IR] Drop generateScriptModule flag from Merger class
This commit is contained in:
committed by
Space Team
parent
f1bce9fad4
commit
4d37c1d49c
-2
@@ -30,7 +30,6 @@ class JsExecutableProducer(
|
|||||||
moduleKind = moduleKind,
|
moduleKind = moduleKind,
|
||||||
fragments = modules.flatMap { it.fragments },
|
fragments = modules.flatMap { it.fragments },
|
||||||
sourceMapsInfo = sourceMapsInfo,
|
sourceMapsInfo = sourceMapsInfo,
|
||||||
generateScriptModule = false,
|
|
||||||
generateCallToMain = true,
|
generateCallToMain = true,
|
||||||
outJsProgram = outJsProgram
|
outJsProgram = outJsProgram
|
||||||
)
|
)
|
||||||
@@ -64,7 +63,6 @@ class JsExecutableProducer(
|
|||||||
moduleKind = moduleKind,
|
moduleKind = moduleKind,
|
||||||
associatedModule.fragments,
|
associatedModule.fragments,
|
||||||
sourceMapsInfo = sourceMapsInfo,
|
sourceMapsInfo = sourceMapsInfo,
|
||||||
generateScriptModule = false,
|
|
||||||
generateCallToMain = generateCallToMain,
|
generateCallToMain = generateCallToMain,
|
||||||
crossModuleReferences = crossRef,
|
crossModuleReferences = crossRef,
|
||||||
outJsProgram = outJsProgram
|
outJsProgram = outJsProgram
|
||||||
|
|||||||
-7
@@ -89,7 +89,6 @@ class JsCodeGenerator(
|
|||||||
program,
|
program,
|
||||||
sourceMapsInfo,
|
sourceMapsInfo,
|
||||||
relativeRequirePath,
|
relativeRequirePath,
|
||||||
false,
|
|
||||||
outJsProgram
|
outJsProgram
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -388,7 +387,6 @@ private fun generateWrappedModuleBody(
|
|||||||
program: JsIrProgram,
|
program: JsIrProgram,
|
||||||
sourceMapsInfo: SourceMapsInfo?,
|
sourceMapsInfo: SourceMapsInfo?,
|
||||||
relativeRequirePath: Boolean,
|
relativeRequirePath: Boolean,
|
||||||
generateScriptModule: Boolean,
|
|
||||||
outJsProgram: Boolean
|
outJsProgram: Boolean
|
||||||
): CompilationOutputs {
|
): CompilationOutputs {
|
||||||
if (multiModule) {
|
if (multiModule) {
|
||||||
@@ -402,7 +400,6 @@ private fun generateWrappedModuleBody(
|
|||||||
moduleKind,
|
moduleKind,
|
||||||
main.fragments,
|
main.fragments,
|
||||||
sourceMapsInfo,
|
sourceMapsInfo,
|
||||||
generateScriptModule,
|
|
||||||
generateCallToMain = true,
|
generateCallToMain = true,
|
||||||
mainRef,
|
mainRef,
|
||||||
outJsProgram
|
outJsProgram
|
||||||
@@ -418,7 +415,6 @@ private fun generateWrappedModuleBody(
|
|||||||
moduleKind,
|
moduleKind,
|
||||||
module.fragments,
|
module.fragments,
|
||||||
sourceMapsInfo,
|
sourceMapsInfo,
|
||||||
generateScriptModule,
|
|
||||||
generateCallToMain = false,
|
generateCallToMain = false,
|
||||||
moduleRef,
|
moduleRef,
|
||||||
outJsProgram
|
outJsProgram
|
||||||
@@ -435,7 +431,6 @@ private fun generateWrappedModuleBody(
|
|||||||
moduleKind,
|
moduleKind,
|
||||||
program.asFragments(),
|
program.asFragments(),
|
||||||
sourceMapsInfo,
|
sourceMapsInfo,
|
||||||
generateScriptModule,
|
|
||||||
generateCallToMain = true,
|
generateCallToMain = true,
|
||||||
outJsProgram = outJsProgram
|
outJsProgram = outJsProgram
|
||||||
)
|
)
|
||||||
@@ -447,7 +442,6 @@ fun generateSingleWrappedModuleBody(
|
|||||||
moduleKind: ModuleKind,
|
moduleKind: ModuleKind,
|
||||||
fragments: List<JsIrProgramFragment>,
|
fragments: List<JsIrProgramFragment>,
|
||||||
sourceMapsInfo: SourceMapsInfo?,
|
sourceMapsInfo: SourceMapsInfo?,
|
||||||
generateScriptModule: Boolean,
|
|
||||||
generateCallToMain: Boolean,
|
generateCallToMain: Boolean,
|
||||||
crossModuleReferences: CrossModuleReferences = CrossModuleReferences.Empty(moduleKind),
|
crossModuleReferences: CrossModuleReferences = CrossModuleReferences.Empty(moduleKind),
|
||||||
outJsProgram: Boolean = true
|
outJsProgram: Boolean = true
|
||||||
@@ -457,7 +451,6 @@ fun generateSingleWrappedModuleBody(
|
|||||||
moduleKind,
|
moduleKind,
|
||||||
fragments,
|
fragments,
|
||||||
crossModuleReferences,
|
crossModuleReferences,
|
||||||
generateScriptModule,
|
|
||||||
generateRegionComments = true,
|
generateRegionComments = true,
|
||||||
generateCallToMain,
|
generateCallToMain,
|
||||||
).merge()
|
).merge()
|
||||||
|
|||||||
+23
-36
@@ -16,7 +16,6 @@ class Merger(
|
|||||||
private val moduleKind: ModuleKind,
|
private val moduleKind: ModuleKind,
|
||||||
private val fragments: List<JsIrProgramFragment>,
|
private val fragments: List<JsIrProgramFragment>,
|
||||||
private val crossModuleReferences: CrossModuleReferences,
|
private val crossModuleReferences: CrossModuleReferences,
|
||||||
private val generateScriptModule: Boolean,
|
|
||||||
private val generateRegionComments: Boolean,
|
private val generateRegionComments: Boolean,
|
||||||
private val generateCallToMain: Boolean,
|
private val generateCallToMain: Boolean,
|
||||||
) {
|
) {
|
||||||
@@ -239,48 +238,36 @@ class Merger(
|
|||||||
|
|
||||||
val program = JsProgram()
|
val program = JsProgram()
|
||||||
|
|
||||||
if (generateScriptModule) {
|
val internalModuleName = ReservedJsNames.makeInternalModuleName()
|
||||||
with(program.globalBlock) {
|
val rootFunction = JsFunction(program.rootScope, JsBlock(), "root function").apply {
|
||||||
polyfillDeclarationBlock.statements
|
parameters += JsParameter(internalModuleName)
|
||||||
.takeIf { it.isNotEmpty() }
|
parameters += (importedJsModules).map { JsParameter(it.internalName) }
|
||||||
?.let { statements.addWithComment("block: polyfills", it) }
|
with(body) {
|
||||||
|
if (!isEsModules) {
|
||||||
|
statements += JsStringLiteral("use strict").makeStmt()
|
||||||
|
}
|
||||||
statements.addWithComment("block: imports", importStatements)
|
statements.addWithComment("block: imports", importStatements)
|
||||||
statements += moduleBody
|
statements += moduleBody
|
||||||
statements.addWithComment("block: exports", exportStatements)
|
statements.addWithComment("block: exports", exportStatements)
|
||||||
}
|
if (generateCallToMain) {
|
||||||
} else {
|
callToMain?.let { this.statements += it }
|
||||||
val internalModuleName = ReservedJsNames.makeInternalModuleName()
|
|
||||||
val rootFunction = JsFunction(program.rootScope, JsBlock(), "root function").apply {
|
|
||||||
parameters += JsParameter(internalModuleName)
|
|
||||||
parameters += (importedJsModules).map { JsParameter(it.internalName) }
|
|
||||||
with(body) {
|
|
||||||
if (!isEsModules) {
|
|
||||||
statements += JsStringLiteral("use strict").makeStmt()
|
|
||||||
}
|
|
||||||
statements.addWithComment("block: imports", importStatements)
|
|
||||||
statements += moduleBody
|
|
||||||
statements.addWithComment("block: exports", exportStatements)
|
|
||||||
if (generateCallToMain) {
|
|
||||||
callToMain?.let { this.statements += it }
|
|
||||||
}
|
|
||||||
this.statements += JsReturn(internalModuleName.makeRef())
|
|
||||||
}
|
}
|
||||||
|
this.statements += JsReturn(internalModuleName.makeRef())
|
||||||
}
|
}
|
||||||
|
|
||||||
polyfillDeclarationBlock.statements
|
|
||||||
.takeIf { it.isNotEmpty() }
|
|
||||||
?.let { program.globalBlock.statements.addWithComment("block: polyfills", it) }
|
|
||||||
|
|
||||||
program.globalBlock.statements += ModuleWrapperTranslation.wrap(
|
|
||||||
moduleName,
|
|
||||||
rootFunction,
|
|
||||||
importedJsModules,
|
|
||||||
program,
|
|
||||||
kind = moduleKind
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
polyfillDeclarationBlock.statements
|
||||||
|
.takeIf { it.isNotEmpty() }
|
||||||
|
?.let { program.globalBlock.statements.addWithComment("block: polyfills", it) }
|
||||||
|
|
||||||
|
program.globalBlock.statements += ModuleWrapperTranslation.wrap(
|
||||||
|
moduleName,
|
||||||
|
rootFunction,
|
||||||
|
importedJsModules,
|
||||||
|
program,
|
||||||
|
kind = moduleKind
|
||||||
|
)
|
||||||
|
|
||||||
return program
|
return program
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user