summaryrefslogtreecommitdiff
path: root/plugins/kotlin/gradle/gradle-tooling/src/org/jetbrains/kotlin/idea/gradleTooling/KotlinKPMGradleModelImpl.kt
blob: 96adaf6c5aa2835950f94e686d02ffb2009b5d0c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.kotlin.idea.gradleTooling

import org.jetbrains.kotlin.idea.projectModel.*
import java.io.File

class KotlinProjectModelSettingsImpl(
    override val coreLibrariesVersion: String,
    override val explicitApiModeCliOption: String?,
) : KotlinProjectModelSettings

data class KotlinLocalModuleIdentifierImpl(
    override val moduleClassifier: String?,
    override val buildId: String,
    override val projectId: String
) : KotlinLocalModuleIdentifier

data class KotlinMavenModuleIdentifierImpl(
    override val moduleClassifier: String?,
    override val group: String,
    override val name: String
) : KotlinMavenModuleIdentifier

class KotlinFragmentResolvedSourceDependency(override val dependencyIdentifier: String) : KotlinFragmentResolvedDependency

class KotlinFragmentResolvedBinaryDependency(override val dependencyIdentifier: String, val dependencyContent: Set<File>? = null) :
    KotlinFragmentResolvedDependency

internal class KotlinFragmentImpl(
    override val fragmentName: String,
    override val isTestFragment: Boolean,
    override val moduleIdentifier: KotlinModuleIdentifier,
    override val languageSettings: KotlinLanguageSettings?,
    override val directRefinesFragments: Collection<KotlinFragment>,
    override val resolvedDependencies: Collection<KotlinFragmentResolvedDependency>,
    override val sourceDirs: Set<File>,
    override val resourceDirs: Set<File>
) : KotlinFragment

internal class KotlinVariantImpl(
    private val fragment: KotlinFragment,
    override val variantAttributes: KotlinKPMVariantAttributesMap,
    override val compilationOutputs: KotlinCompilationOutput?
) : KotlinVariant, KotlinFragment by fragment

class KotlinKPMModuleImpl(
    override val moduleIdentifier: KotlinModuleIdentifier,
    override val fragments: Collection<KotlinFragment>,
) : KotlinKPMModule

class KotlinKPMGradleModelImpl(
    override val kpmModules: Collection<KotlinKPMModule>,
    override val settings: KotlinProjectModelSettings,
    override val kotlinNativeHome: String,
) : KotlinKPMGradleModel