From a2e444628432b4782f035e71bcb678638703d228 Mon Sep 17 00:00:00 2001 From: MukjepScarlet <93977077+MukjepScarlet@users.noreply.github.com> Date: Mon, 27 Jan 2025 00:45:05 +0800 Subject: [PATCH] FunctionalInterface annotation for JVM1.8+ on Kotlin functions All Java built-in function types like `BiFunction`, `IntProvider` have this annotation. Also, this annotation is used by the GraalVM Polyglot library. It can only parse types with this annotation to a JavaScript function, that's why I want to add this. --- generators/builtins/functions.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generators/builtins/functions.kt b/generators/builtins/functions.kt index 7670a0d856486..8cd1c5edd9b91 100644 --- a/generators/builtins/functions.kt +++ b/generators/builtins/functions.kt @@ -45,7 +45,7 @@ class GenerateFunctions(out: PrintWriter) : BuiltInsSourceGenerator(out) { override fun generateBody() { for (i in 0..MAX_PARAM_COUNT) { generateDocumentation(i) - out.print("public interface Function$i") + out.print("@FunctionalInterface public interface Function$i") generateTypeParameters(i, variance = true) generateSuperClass() generateFunctionClassBody(i)