fun buildResultOverloadFunction()

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


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()
}