Js frontend: prohibit default values for functions annotated as nativeIndexer.
This commit is contained in:
+3
@@ -18,4 +18,7 @@ fun foo() {
|
||||
|
||||
<!NATIVE_INDEXER_WRONG_PARAMETER_COUNT!>[nativeGetter]
|
||||
fun Int.get3(<!NATIVE_INDEXER_KEY_SHOULD_BE_STRING_OR_NUMBER!>a: Any<!>, b: Int, c: Any?): String?<!> = "OK"
|
||||
|
||||
[nativeGetter]
|
||||
fun Any.foo(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: Int = 1<!>): Any? = "OK"
|
||||
}
|
||||
+3
@@ -41,5 +41,8 @@ fun foo() {
|
||||
|
||||
nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!> = 0
|
||||
|
||||
nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int? = 0
|
||||
}
|
||||
}
|
||||
+3
@@ -38,5 +38,8 @@ fun foo() {
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!><!> = 0
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: Int = 0<!>): Int?<!> = 0
|
||||
}
|
||||
}
|
||||
+3
@@ -63,6 +63,9 @@ class C {
|
||||
nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!> = 0
|
||||
|
||||
nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int? = 0
|
||||
|
||||
class object {
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun Int.get(a: String): Int?<!> = 1
|
||||
|
||||
+1
@@ -67,6 +67,7 @@ kotlin.js.native() internal final class B {
|
||||
kotlin.js.native() internal final class C {
|
||||
public constructor C()
|
||||
kotlin.js.nativeGetter() internal final fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final fun baz(/*0*/ a: kotlin.String = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final fun get(): kotlin.Any?
|
||||
|
||||
+9
@@ -62,6 +62,9 @@ class A {
|
||||
|
||||
nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!> = 0
|
||||
|
||||
nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: Number = 1.1<!>): Int? = 0
|
||||
}
|
||||
|
||||
object obj {
|
||||
@@ -85,6 +88,9 @@ class A {
|
||||
|
||||
nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!> = 0
|
||||
|
||||
nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int? = 0
|
||||
}
|
||||
|
||||
val anonymous = object {
|
||||
@@ -108,6 +114,9 @@ class A {
|
||||
|
||||
nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!> = 0
|
||||
|
||||
nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int? = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
+3
@@ -80,6 +80,7 @@ kotlin.js.native() internal final class A {
|
||||
internal final class C {
|
||||
public constructor C()
|
||||
kotlin.js.nativeGetter() internal final fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final fun baz(/*0*/ a: kotlin.Number = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final fun get(): kotlin.Any?
|
||||
@@ -94,6 +95,7 @@ kotlin.js.native() internal final class A {
|
||||
internal object obj {
|
||||
private constructor obj()
|
||||
kotlin.js.nativeGetter() internal final fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final fun baz(/*0*/ a: kotlin.String = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final fun get(): kotlin.Any?
|
||||
@@ -107,6 +109,7 @@ kotlin.js.native() internal final class A {
|
||||
public class object <class-object-for-obj> : A.B.obj {
|
||||
private constructor <class-object-for-obj>()
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun baz(/*0*/ a: kotlin.String = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun get(): kotlin.Any?
|
||||
|
||||
+9
@@ -70,6 +70,9 @@ class A {
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!><!> = 0
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int?<!> = 0
|
||||
}
|
||||
|
||||
object obj {
|
||||
@@ -84,6 +87,9 @@ class A {
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!><!> = 0
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: Double = 0.0<!>): Int?<!> = 0
|
||||
}
|
||||
|
||||
val anonymous = object {
|
||||
@@ -98,6 +104,9 @@ class A {
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!><!> = 0
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int?<!> = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
+3
@@ -86,6 +86,7 @@ internal final class A {
|
||||
internal final class C {
|
||||
public constructor C()
|
||||
kotlin.js.nativeGetter() internal final fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final fun baz(/*0*/ a: kotlin.String = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final fun get(): kotlin.Any?
|
||||
@@ -97,6 +98,7 @@ internal final class A {
|
||||
internal object obj {
|
||||
private constructor obj()
|
||||
kotlin.js.nativeGetter() internal final fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final fun baz(/*0*/ a: kotlin.Double = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final fun get(): kotlin.Any?
|
||||
@@ -107,6 +109,7 @@ internal final class A {
|
||||
public class object <class-object-for-obj> : A.B.obj {
|
||||
private constructor <class-object-for-obj>()
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun baz(/*0*/ a: kotlin.Double = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final override /*1*/ /*fake_override*/ fun get(): kotlin.Any?
|
||||
|
||||
+3
@@ -59,4 +59,7 @@ class C {
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun bar(a: String): <!NATIVE_GETTER_RETURN_TYPE_SHOULD_BE_NULLABLE!>Int<!><!> = 0
|
||||
|
||||
<!NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN!>nativeGetter
|
||||
fun baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: String = "foo"<!>): Int?<!> = 0
|
||||
}
|
||||
+1
@@ -67,6 +67,7 @@ internal final class B {
|
||||
internal final class C {
|
||||
public constructor C()
|
||||
kotlin.js.nativeGetter() internal final fun bar(/*0*/ a: kotlin.String): kotlin.Int
|
||||
kotlin.js.nativeGetter() internal final fun baz(/*0*/ a: kotlin.String = ...): kotlin.Int?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
kotlin.js.nativeGetter() internal final fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
|
||||
kotlin.js.nativeGetter() internal final fun get(): kotlin.Any?
|
||||
|
||||
+3
@@ -9,6 +9,9 @@ fun Int.get2(a: Number): String? = "OK"
|
||||
nativeGetter
|
||||
fun Int.get3(a: Int): String? = "OK"
|
||||
|
||||
nativeGetter
|
||||
fun Int.baz(<!NATIVE_INDEXER_CAN_NOT_HAVE_DEFAULT_ARGUMENTS!>a: Int = 0<!>): String? = "OK"
|
||||
|
||||
nativeGetter
|
||||
fun Int.get(<!NATIVE_INDEXER_KEY_SHOULD_BE_STRING_OR_NUMBER!>a: Any<!>): Int? = 1
|
||||
|
||||
|
||||
+1
@@ -1,5 +1,6 @@
|
||||
package
|
||||
|
||||
kotlin.js.nativeGetter() internal fun kotlin.Int.baz(/*0*/ a: kotlin.Int = ...): kotlin.String?
|
||||
kotlin.js.nativeGetter() internal fun kotlin.Int.get(/*0*/ a: kotlin.Any): kotlin.Int?
|
||||
kotlin.js.nativeGetter() internal fun kotlin.Int.get(/*0*/ a: kotlin.String): kotlin.Int?
|
||||
kotlin.js.nativeGetter() internal fun kotlin.Int.get2(): kotlin.String?
|
||||
|
||||
Reference in New Issue
Block a user