org.jetbrains.kotlin.statistics.metrics.StatisticsValues.kt Maven / Gradle / Ivy
/*
* Copyright 2010-2020 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.statistics.metrics
interface ReportStatisticsValue {
val name: String
val value: T
}
class ReportOnceStatisticsValue(override val name: String, override val value: T) :
ReportStatisticsValue
interface AdditiveStatisticsValue : ReportStatisticsValue {
fun addValue(t: T)
}
interface IStatisticsValuesConsumer {
fun report(metric: BooleanMetrics, value: Boolean, subprojectName: String? = null)
fun report(metric: NumericalMetrics, value: Long, subprojectName: String? = null)
fun report(metric: StringMetrics, value: String, subprojectName: String? = null)
}