All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jetbrains.kotlin.ir.backend.js.JsMapping.kt Maven / Gradle / Ivy

There is a newer version: 2.1.0-RC
Show newest version
/*
 * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
 * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
 */

package org.jetbrains.kotlin.ir.backend.js

import org.jetbrains.kotlin.backend.common.Mapping
import org.jetbrains.kotlin.ir.backend.js.utils.MutableReference
import org.jetbrains.kotlin.ir.declarations.*

class JsMapping : Mapping() {
    val classToItsDefaultConstructor: DeclarationMapping by AttributeBasedMappingDelegate()

    val esClassWhichNeedBoxParameters: DeclarationMapping by AttributeBasedMappingDelegate()
    val esClassToPossibilityForOptimization: DeclarationMapping> by AttributeBasedMappingDelegate()

    // Main function wrappers
    val mainFunctionToItsWrapper: DeclarationMapping by AttributeBasedMappingDelegate()
    val outerThisFieldSymbols: DeclarationMapping by AttributeBasedMappingDelegate()
    val innerClassConstructors: DeclarationMapping by AttributeBasedMappingDelegate()
    val originalInnerClassPrimaryConstructorByClass: DeclarationMapping by AttributeBasedMappingDelegate()
    val secondaryConstructorToDelegate: DeclarationMapping by AttributeBasedMappingDelegate()
    val secondaryConstructorToFactory: DeclarationMapping by AttributeBasedMappingDelegate()
    val objectToGetInstanceFunction: DeclarationMapping by AttributeBasedMappingDelegate()
    val objectToInstanceField: DeclarationMapping by AttributeBasedMappingDelegate()
    val classToSyntheticPrimaryConstructor: DeclarationMapping by AttributeBasedMappingDelegate()
    val privateMemberToCorrespondingStatic: DeclarationMapping by AttributeBasedMappingDelegate()

    val enumEntryToGetInstanceFun: DeclarationMapping by AttributeBasedMappingDelegate()
    val enumEntryToInstanceField: DeclarationMapping by AttributeBasedMappingDelegate()
    val enumConstructorToNewConstructor: DeclarationMapping by AttributeBasedMappingDelegate()
    val enumClassToCorrespondingEnumEntry: DeclarationMapping by AttributeBasedMappingDelegate()
    val enumConstructorOldToNewValueParameters: DeclarationMapping by AttributeBasedMappingDelegate()
    val enumEntryToCorrespondingField: DeclarationMapping by AttributeBasedMappingDelegate()
    val fieldToEnumEntry: DeclarationMapping by AttributeBasedMappingDelegate()
    val enumClassToInitEntryInstancesFun: DeclarationMapping by AttributeBasedMappingDelegate()

    val suspendArityStore: DeclarationMapping> by AttributeBasedMappingDelegate()

    val objectsWithPureInitialization: DeclarationMapping by AttributeBasedMappingDelegate()

    val inlineFunctionsBeforeInlining: DeclarationMapping by AttributeBasedMappingDelegate()

    // Wasm mappings
    val wasmJsInteropFunctionToWrapper: DeclarationMapping by AttributeBasedMappingDelegate()

    val wasmNestedExternalToNewTopLevelFunction: DeclarationMapping by AttributeBasedMappingDelegate()

    val wasmExternalObjectToGetInstanceFunction: DeclarationMapping by AttributeBasedMappingDelegate()

    val wasmExternalClassToInstanceCheck: DeclarationMapping by AttributeBasedMappingDelegate()

    val wasmGetJsClass: DeclarationMapping by AttributeBasedMappingDelegate()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy