fun buildResultOverloadFunction()

in telemetry/jetbrains/src/main/kotlin/software/aws/toolkits/telemetry/generator/TelemetryGenerator.kt [247:265]


fun buildResultOverloadFunction(metadataProvider: ParameterSpec, functionName: String, metric: MetricSchema): FunSpec {
    val overloadedParameters = buildMetricParameters(metric).map {
        if (it.name == RESULT) {
            ParameterSpec.builder(SUCCESS, BOOLEAN).build()
        } else {
            it
        }
    }

    val functionParameters = mutableListOf<ParameterSpec>()
    functionParameters.add(metadataProvider)
    functionParameters.addAll(overloadedParameters)

    return FunSpec.builder(functionName)
        .addKdoc(metric.description)
        .addParameters(functionParameters)
        .generateResultOverloadFunctionBody(functionName, functionParameters)
        .build()
}