
dev.icerock.gradle.CocoaPodInfo.kt Maven / Gradle / Ivy
/*
* Copyright 2020 IceRock MAG Inc. Use of this source code is governed by the Apache 2.0 license.
*/
package dev.icerock.gradle
import java.io.File
open class CocoaPodInfo(
val name: String
) {
var scheme: String = name
var onlyLink: Boolean = false
var precompiled: Boolean = false
var frameworksPaths: List = emptyList()
val module: String get() = name
val capitalizedModule: String get() = module.capitalize()
var extraModules: List = emptyList()
var extraLinkerOpts: List = emptyList()
private val onConfiguredBlocks = mutableListOf<() -> Unit>()
private var configured = false
override fun toString(): String {
return "CocoaPodInfo(name = $name, module = $module, onlyLink = $onlyLink, " +
"precompiled = $precompiled, extraModules = $extraModules, " +
"extraLinkerOpts = $extraLinkerOpts)"
}
internal fun configured() {
configured = true
onConfiguredBlocks.forEach { it.invoke() }
}
internal fun doOnConfigured(block: () -> Unit) {
if (configured) block()
else onConfiguredBlocks.add(block)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy