Files
kotlin/compiler/testData/codegen/dumpDeclarations/classMembers.json
Fabian Mastenbroek 05f6ed40f1 Don't generate setters for trivial private property setters
This change will prevent the compiler for generating Java bytecode for
private property setters that are trivial.

Since Kotlin uses direct field access for private properties, it will result
in the private setter never been used and since it cannot be accessed by any
other class without reflection, the setter cannot be covered by code
coverage tools.

See https://youtrack.jetbrains.com/issue/KT-20344 for the related YouTrack
issue.
2018-10-18 12:05:46 +02:00

157 lines
14 KiB
JSON
Vendored

[
{
"declaration": "final class ClassWithProperties defined in root package",
"visibility": "public",
"class": "ClassWithProperties",
"members": [
{"visibility": "public", "declaration": "final val publicVal: kotlin.Int", "name": "publicVal", "desc": "I"},
{"visibility": "public", "declaration": "final fun <get-publicVal>(): kotlin.Int", "name": "getPublicVal", "desc": "()I"},
{"visibility": "public", "declaration": "final var publicVar: kotlin.Int", "name": "publicVar", "desc": "I"},
{"visibility": "public", "declaration": "final fun <get-publicVar>(): kotlin.Int", "name": "getPublicVar", "desc": "()I"},
{"visibility": "public", "declaration": "final fun <set-publicVar>(<set-?>: kotlin.Int): kotlin.Unit", "name": "setPublicVar", "desc": "(I)V"},
{"visibility": "internal", "declaration": "final val internalVal: kotlin.Long", "name": "internalVal", "desc": "J"},
{"visibility": "internal", "declaration": "final fun <get-internalVal>(): kotlin.Long", "name": "getInternalVal$test_module", "desc": "()J"},
{"visibility": "internal", "declaration": "final var internalVar: kotlin.Long", "name": "internalVar", "desc": "J"},
{"visibility": "internal", "declaration": "final fun <get-internalVar>(): kotlin.Long", "name": "getInternalVar$test_module", "desc": "()J"},
{"visibility": "internal", "declaration": "final fun <set-internalVar>(<set-?>: kotlin.Long): kotlin.Unit", "name": "setInternalVar$test_module", "desc": "(J)V"},
{"visibility": "protected", "declaration": "final val protectedVal: kotlin.String", "name": "protectedVal", "desc": "Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final fun <get-protectedVal>(): kotlin.String", "name": "getProtectedVal", "desc": "()Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final var protectedVar: kotlin.String", "name": "protectedVar", "desc": "Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final fun <get-protectedVar>(): kotlin.String", "name": "getProtectedVar", "desc": "()Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final fun <set-protectedVar>(<set-?>: kotlin.String): kotlin.Unit", "name": "setProtectedVar", "desc": "(Ljava/lang/String;)V"},
{"visibility": "private", "declaration": "final val privateVal: kotlin.Any?", "name": "privateVal", "desc": "Ljava/lang/Object;"},
{"visibility": "private", "declaration": "final var privateVar: kotlin.Any?", "name": "privateVar", "desc": "Ljava/lang/Object;"},
{"visibility": "public", "declaration": "constructor ClassWithProperties()", "name": "<init>", "desc": "()V"}
]
},
{
"declaration": "final class ClassWithLateinit defined in root package",
"visibility": "public",
"class": "ClassWithLateinit",
"members": [
{"visibility": "public", "declaration": "final lateinit var publicVar: kotlin.String", "name": "publicVar", "desc": "Ljava/lang/String;"},
{"visibility": "public", "declaration": "final fun <get-publicVar>(): kotlin.String", "name": "getPublicVar", "desc": "()Ljava/lang/String;"},
{"visibility": "public", "declaration": "final fun <set-publicVar>(<set-?>: kotlin.String): kotlin.Unit", "name": "setPublicVar", "desc": "(Ljava/lang/String;)V"},
{"visibility": "public", "declaration": "final lateinit var publicVarInternalSet: kotlin.String", "name": "publicVarInternalSet", "desc": "Ljava/lang/String;"},
{"visibility": "public", "declaration": "final fun <get-publicVarInternalSet>(): kotlin.String", "name": "getPublicVarInternalSet", "desc": "()Ljava/lang/String;"},
{"visibility": "internal", "declaration": "final fun <set-publicVarInternalSet>(<set-?>: kotlin.String): kotlin.Unit", "name": "setPublicVarInternalSet$test_module", "desc": "(Ljava/lang/String;)V"},
{"visibility": "internal", "declaration": "final lateinit var internalVar: kotlin.String", "name": "internalVar", "desc": "Ljava/lang/String;"},
{"visibility": "internal", "declaration": "final fun <get-internalVar>(): kotlin.String", "name": "getInternalVar$test_module", "desc": "()Ljava/lang/String;"},
{"visibility": "internal", "declaration": "final fun <set-internalVar>(<set-?>: kotlin.String): kotlin.Unit", "name": "setInternalVar$test_module", "desc": "(Ljava/lang/String;)V"},
{"visibility": "internal", "declaration": "final lateinit var internalVarPrivateSet: kotlin.String", "name": "internalVarPrivateSet", "desc": "Ljava/lang/String;"},
{"visibility": "internal", "declaration": "final fun <get-internalVarPrivateSet>(): kotlin.String", "name": "getInternalVarPrivateSet$test_module", "desc": "()Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final lateinit var protectedVar: kotlin.String", "name": "protectedVar", "desc": "Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final fun <get-protectedVar>(): kotlin.String", "name": "getProtectedVar", "desc": "()Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final fun <set-protectedVar>(<set-?>: kotlin.String): kotlin.Unit", "name": "setProtectedVar", "desc": "(Ljava/lang/String;)V"},
{"visibility": "protected", "declaration": "final lateinit var protectedVarPrivateSet: kotlin.String", "name": "protectedVarPrivateSet", "desc": "Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final fun <get-protectedVarPrivateSet>(): kotlin.String", "name": "getProtectedVarPrivateSet", "desc": "()Ljava/lang/String;"},
{"visibility": "private", "declaration": "final lateinit var privateVar: kotlin.Any", "name": "privateVar", "desc": "Ljava/lang/Object;"},
{"visibility": "public", "declaration": "constructor ClassWithLateinit()", "name": "<init>", "desc": "()V"}
]
},
{
"declaration": "final class ClassWithFields defined in root package",
"visibility": "public",
"class": "ClassWithFields",
"members": [
{"visibility": "public", "declaration": "final val publicVal: kotlin.Int", "name": "publicVal", "desc": "I"},
{"visibility": "public", "declaration": "final var publicVar: kotlin.Int", "name": "publicVar", "desc": "I"},
{"visibility": "internal", "declaration": "final val internalVal: kotlin.Long", "name": "internalVal", "desc": "J"},
{"visibility": "internal", "declaration": "final var internalVar: kotlin.Long", "name": "internalVar", "desc": "J"},
{"visibility": "protected", "declaration": "final val protectedVal: kotlin.String", "name": "protectedVal", "desc": "Ljava/lang/String;"},
{"visibility": "protected", "declaration": "final var protectedVar: kotlin.String", "name": "protectedVar", "desc": "Ljava/lang/String;"},
{"visibility": "public", "declaration": "constructor ClassWithFields()", "name": "<init>", "desc": "()V"}
]
},
{
"declaration": "final class ClassWithConstructors defined in root package",
"visibility": "public",
"class": "ClassWithConstructors",
"members": [
{"visibility": "public", "declaration": "final val a: kotlin.Any", "name": "a", "desc": "Ljava/lang/Object;"},
{"visibility": "public", "declaration": "final fun <get-a>(): kotlin.Any", "name": "getA", "desc": "()Ljava/lang/Object;"},
{"visibility": "public", "declaration": "constructor ClassWithConstructors(a: kotlin.Any, b: kotlin.Int)", "name": "<init>", "desc": "(Ljava/lang/Object;I)V"},
{"visibility": "public", "declaration": "constructor ClassWithConstructors(a: kotlin.String)", "name": "<init>", "desc": "(Ljava/lang/String;)V"},
{"visibility": "internal", "declaration": "constructor ClassWithConstructors(a: kotlin.Int)", "name": "<init>", "desc": "(I)V"},
{"visibility": "protected", "declaration": "constructor ClassWithConstructors(a: kotlin.Any)", "name": "<init>", "desc": "(Ljava/lang/Object;)V"}
]
},
{
"declaration": "final class ClassWithFunctions defined in root package",
"visibility": "public",
"class": "ClassWithFunctions",
"members": [
{"visibility": "public", "declaration": "final fun publicFun(): kotlin.Unit", "name": "publicFun", "desc": "()V"},
{"visibility": "internal", "declaration": "final fun internalFun(param1: kotlin.Int): kotlin.Unit", "name": "internalFun$test_module", "desc": "(I)V"},
{"visibility": "protected", "declaration": "final fun protectedFun(a: kotlin.String, b: kotlin.Long): kotlin.Unit", "name": "protectedFun", "desc": "(Ljava/lang/String;J)V"},
{"visibility": "private", "declaration": "final fun privateFun(x: kotlin.Any): kotlin.Unit", "name": "privateFun", "desc": "(Ljava/lang/Object;)V"},
{"visibility": "internal", "declaration": "final fun internalOverloads(a: kotlin.String = ..., b: kotlin.Long? = ...): kotlin.Unit", "name": "internalOverloads$test_module", "desc": "(Ljava/lang/String;Ljava/lang/Long;)V"},
{"visibility": "internal", "declaration": "final fun internalOverloads(a: kotlin.String = ..., b: kotlin.Long? = ...): kotlin.Unit", "name": "internalOverloads$test_module$default", "desc": "(LClassWithFunctions;Ljava/lang/String;Ljava/lang/Long;ILjava/lang/Object;)V"},
{"visibility": "internal", "declaration": "final fun internalOverloads(a: kotlin.String = ..., b: kotlin.Long? = ...): kotlin.Unit", "name": "internalOverloads$test_module", "desc": "(Ljava/lang/String;)V"},
{"visibility": "internal", "declaration": "final fun internalOverloads(a: kotlin.String = ..., b: kotlin.Long? = ...): kotlin.Unit", "name": "internalOverloads$test_module", "desc": "()V"},
{"visibility": "public", "declaration": "constructor ClassWithFunctions()", "name": "<init>", "desc": "()V"}
]
},
{
"declaration": "object ObjectWithProperties defined in root package",
"visibility": "public",
"class": "ObjectWithProperties",
"members": [
{"visibility": "public", "declaration": "final val publicVal: kotlin.Int", "name": "publicVal", "desc": "I"},
{"visibility": "public", "declaration": "final fun <get-publicVal>(): kotlin.Int", "name": "getPublicVal", "desc": "()I"},
{"visibility": "public", "declaration": "final var publicVar: kotlin.Int", "name": "publicVar", "desc": "I"},
{"visibility": "public", "declaration": "final fun <get-publicVar>(): kotlin.Int", "name": "getPublicVar", "desc": "()I"},
{"visibility": "public", "declaration": "final fun <set-publicVar>(<set-?>: kotlin.Int): kotlin.Unit", "name": "setPublicVar", "desc": "(I)V"},
{"visibility": "internal", "declaration": "final val internalVal: kotlin.Long", "name": "internalVal", "desc": "J"},
{"visibility": "internal", "declaration": "final fun <get-internalVal>(): kotlin.Long", "name": "getInternalVal$test_module", "desc": "()J"},
{"visibility": "internal", "declaration": "final var internalVar: kotlin.Long", "name": "internalVar", "desc": "J"},
{"visibility": "internal", "declaration": "final fun <get-internalVar>(): kotlin.Long", "name": "getInternalVar$test_module", "desc": "()J"},
{"visibility": "internal", "declaration": "final fun <set-internalVar>(<set-?>: kotlin.Long): kotlin.Unit", "name": "setInternalVar$test_module", "desc": "(J)V"},
{"visibility": "private", "declaration": "final val privateVal: kotlin.Any?", "name": "privateVal", "desc": "Ljava/lang/Object;"},
{"visibility": "private", "declaration": "final var privateVar: kotlin.Any?", "name": "privateVar", "desc": "Ljava/lang/Object;"},
{"visibility": "private", "declaration": "constructor ObjectWithProperties()", "name": "<init>", "desc": "()V"},
{"name": "INSTANCE", "desc": "LObjectWithProperties;"},
{"visibility": "public", "declaration": "object ObjectWithProperties", "name": "<clinit>", "desc": "()V"}
]
},
{
"declaration": "object ObjectWithFields defined in root package",
"visibility": "public",
"class": "ObjectWithFields",
"members": [
{"visibility": "public", "declaration": "final val publicVal: kotlin.Int", "name": "publicVal", "desc": "I"},
{"visibility": "public", "declaration": "final var publicVar: kotlin.Int", "name": "publicVar", "desc": "I"},
{"visibility": "internal", "declaration": "final val internalVal: kotlin.Long", "name": "internalVal", "desc": "J"},
{"visibility": "internal", "declaration": "final var internalVar: kotlin.Long", "name": "internalVar", "desc": "J"},
{"visibility": "private", "declaration": "constructor ObjectWithFields()", "name": "<init>", "desc": "()V"},
{"name": "INSTANCE", "desc": "LObjectWithFields;"},
{"visibility": "public", "declaration": "object ObjectWithFields", "name": "<clinit>", "desc": "()V"}
]
},
{
"declaration": "final class ObjectWithFunctions defined in root package",
"visibility": "public",
"class": "ObjectWithFunctions",
"members": [
{"visibility": "public", "declaration": "final fun publicFun(): kotlin.Unit", "name": "publicFun", "desc": "()V"},
{"visibility": "internal", "declaration": "final fun internalFun(param1: kotlin.Int): kotlin.Unit", "name": "internalFun$test_module", "desc": "(I)V"},
{"visibility": "protected", "declaration": "final fun protectedFun(a: kotlin.String, b: kotlin.Long): kotlin.Unit", "name": "protectedFun", "desc": "(Ljava/lang/String;J)V"},
{"visibility": "private", "declaration": "final fun privateFun(x: kotlin.Any): kotlin.Unit", "name": "privateFun", "desc": "(Ljava/lang/Object;)V"},
{"visibility": "public", "declaration": "constructor ObjectWithFunctions()", "name": "<init>", "desc": "()V"}
]
},
{
"declaration": "object ObjectWithConst defined in root package",
"visibility": "public",
"class": "ObjectWithConst",
"members": [
{"visibility": "public", "declaration": "const final val publicConst: kotlin.Int", "name": "publicConst", "desc": "I"},
{"visibility": "internal", "declaration": "const final val internalConst: kotlin.Int", "name": "internalConst", "desc": "I"},
{"visibility": "private", "declaration": "const final val privateConst: kotlin.Int", "name": "privateConst", "desc": "I"},
{"visibility": "private", "declaration": "constructor ObjectWithConst()", "name": "<init>", "desc": "()V"},
{"name": "INSTANCE", "desc": "LObjectWithConst;"},
{"visibility": "public", "declaration": "object ObjectWithConst", "name": "<clinit>", "desc": "()V"}
]
}
]