From 052f345a1783892680155d67c749289f62bb07df Mon Sep 17 00:00:00 2001 From: Dmitry Petrov Date: Tue, 13 Oct 2020 15:42:04 +0300 Subject: [PATCH] JVM_IR no generic signatures for abstract stubs KT-42609 --- .../jvm/codegen/MethodSignatureMapper.kt | 3 + .../abstractStubSignatures/byteShortMap.kt | 3 + .../abstractStubSignatures/byteShortMap.txt | 24 +++ .../byteShortMap_ir.txt | 26 ++++ .../byteShortMutableMap.kt | 3 + .../byteShortMutableMap.txt | 21 +++ .../byteShortMutableMap_ir.txt | 23 +++ .../abstractStubSignatures/collection.kt | 5 + .../abstractStubSignatures/collection.txt | 39 +++++ .../abstractStubSignatures/collection_ir.txt | 39 +++++ .../genericCollection.kt | 3 + .../genericCollection.txt | 17 +++ .../genericCollection_ir.txt | 16 ++ .../abstractStubSignatures/genericMap.kt | 3 + .../abstractStubSignatures/genericMap.txt | 20 +++ .../abstractStubSignatures/genericMap_ir.txt | 17 +++ .../genericMutableCollection.kt | 3 + .../genericMutableCollection.txt | 11 ++ .../genericMutableCollection_ir.txt | 9 ++ .../genericMutableList.kt | 3 + .../genericMutableList.txt | 15 ++ .../genericMutableList_ir.txt | 11 ++ .../genericMutableMap.kt | 3 + .../genericMutableMap.txt | 17 +++ .../genericMutableMap_ir.txt | 13 ++ .../genericStringMap.kt | 3 + .../genericStringMap.txt | 23 +++ .../genericStringMap_ir.txt | 22 +++ .../genericStringMutableMap.kt | 3 + .../genericStringMutableMap.txt | 20 +++ .../genericStringMutableMap_ir.txt | 17 +++ .../abstractStubSignatures/iterable.kt | 7 + .../abstractStubSignatures/iterable.txt | 20 +++ .../abstractStubSignatures/iterator.kt | 7 + .../abstractStubSignatures/iterator.txt | 20 +++ .../abstractStubSignatures/list.kt | 7 + .../abstractStubSignatures/list.txt | 91 +++++++++++ .../abstractStubSignatures/listIterator.kt | 7 + .../abstractStubSignatures/listIterator.txt | 38 +++++ .../listIterator_ir.txt | 38 +++++ .../abstractStubSignatures/list_ir.txt | 88 +++++++++++ .../abstractStubSignatures/mapEntry.kt | 11 ++ .../abstractStubSignatures/mapEntry.txt | 37 +++++ .../abstractStubSignatures/mapEntry_ir.txt | 37 +++++ .../mutableCollection.kt | 5 + .../mutableCollection.txt | 27 ++++ .../abstractStubSignatures/mutableIterable.kt | 7 + .../mutableIterable.txt | 17 +++ .../abstractStubSignatures/mutableIterator.kt | 7 + .../mutableIterator.txt | 17 +++ .../abstractStubSignatures/mutableList.kt | 5 + .../abstractStubSignatures/mutableList.txt | 41 +++++ .../mutableListIterator.kt | 7 + .../mutableListIterator.txt | 17 +++ .../abstractStubSignatures/mutableMapEntry.kt | 11 ++ .../mutableMapEntry.txt | 29 ++++ .../abstractStubSignatures/numberStringMap.kt | 3 + .../numberStringMap.txt | 24 +++ .../numberStringMap_ir.txt | 26 ++++ .../numberStringMutableMap.kt | 3 + .../numberStringMutableMap.txt | 21 +++ .../numberStringMutableMap_ir.txt | 23 +++ .../abstractStubSignatures/set.kt | 7 + .../abstractStubSignatures/set.txt | 57 +++++++ .../abstractStubSignatures/set_ir.txt | 56 +++++++ .../stringGenericMap.kt | 3 + .../stringGenericMap.txt | 23 +++ .../stringGenericMap_ir.txt | 22 +++ .../stringGenericMutableMap.kt | 3 + .../stringGenericMutableMap.txt | 20 +++ .../stringGenericMutableMap_ir.txt | 19 +++ .../signatures/implementsJavaMap_ir.txt | 16 +- .../signatures/implementsMap_ir.txt | 22 +-- .../codegen/BytecodeListingTestGenerated.java | 143 ++++++++++++++++++ .../ir/IrBytecodeListingTestGenerated.java | 143 ++++++++++++++++++ 75 files changed, 1648 insertions(+), 19 deletions(-) create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap_ir.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.kt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.txt create mode 100644 compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap_ir.txt diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt index d8dce86526d..9e7a463c6e0 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt @@ -266,6 +266,9 @@ class MethodSignatureMapper(private val context: JvmBackendContext) { val newGenericSignature = specialSignatureInfo.replaceValueParametersIn(signature.genericsSignature) return JvmMethodGenericSignature(signature.asmMethod, signature.valueParameters, newGenericSignature) } + if (function.origin == JvmLoweredDeclarationOrigin.ABSTRACT_BRIDGE_STUB) { + return JvmMethodGenericSignature(signature.asmMethod, signature.valueParameters, null) + } return signature } diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.kt new file mode 100644 index 00000000000..1d3b2bf35cb --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class ByteShortMap : Map diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.txt new file mode 100644 index 00000000000..9f9296cf920 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.txt @@ -0,0 +1,24 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> ByteShortMap { + // source: 'byteShortMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public <(Ljava/util/Map<+Ljava/lang/Byte;+Ljava/lang/Short;>;)V> method putAll(p0: java.util.Map): void + public method (): void + public method clear(): void + public abstract method containsKey(p0: byte): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: short): boolean + public abstract method get(p0: byte): java.lang.Short + public bridge final method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public method put(p0: byte, p1: short): java.lang.Short + public synthetic method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public method remove(p0: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap_ir.txt new file mode 100644 index 00000000000..ee8e520495e --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap_ir.txt @@ -0,0 +1,26 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> ByteShortMap { + // source: 'byteShortMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public <(Ljava/util/Map<+Ljava/lang/Byte;+Ljava/lang/Short;>;)V> method putAll(p0: java.util.Map): void + public method (): void + public method clear(): void + public abstract method containsKey(p0: byte): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: short): boolean + public abstract method get(p0: byte): java.lang.Short + public synthetic bridge method get(p0: java.lang.Object): java.lang.Object + public bridge final method get(p0: java.lang.Object): java.lang.Short + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public method put(p0: byte, p1: short): java.lang.Short + public synthetic bridge method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public synthetic bridge method remove(p0: java.lang.Object): java.lang.Object + public method remove(p0: java.lang.Object): java.lang.Short + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.kt new file mode 100644 index 00000000000..15ef036bb89 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class ByteShortMutableMap : MutableMap diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.txt new file mode 100644 index 00000000000..3c12495db9e --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.txt @@ -0,0 +1,21 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableMap;> ByteShortMutableMap { + // source: 'byteShortMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public method (): void + public abstract method containsKey(p0: byte): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: short): boolean + public abstract method get(p0: byte): java.lang.Short + public bridge final method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: byte): java.lang.Short + public bridge final method remove(p0: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap_ir.txt new file mode 100644 index 00000000000..d89087647aa --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap_ir.txt @@ -0,0 +1,23 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableMap;> ByteShortMutableMap { + // source: 'byteShortMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public method (): void + public abstract method containsKey(p0: byte): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: short): boolean + public abstract method get(p0: byte): java.lang.Short + public synthetic bridge method get(p0: java.lang.Object): java.lang.Object + public bridge final method get(p0: java.lang.Object): java.lang.Short + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: byte): java.lang.Short + public synthetic bridge method remove(p0: java.lang.Object): java.lang.Object + public bridge final method remove(p0: java.lang.Object): java.lang.Short + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.kt new file mode 100644 index 00000000000..e7283e320ab --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.kt @@ -0,0 +1,5 @@ +// WITH_SIGNATURES + +abstract class DoubleCollection : Collection + +abstract class StringCollection : Collection diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.txt new file mode 100644 index 00000000000..5d24531511e --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.txt @@ -0,0 +1,39 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleCollection { + // source: 'collection.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Double;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method add(p0: double): boolean + public synthetic method add(p0: java.lang.Object): boolean + public method clear(): void + public abstract method contains(p0: double): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringCollection { + // source: 'collection.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public synthetic method add(p0: java.lang.Object): boolean + public method add(p0: java.lang.String): boolean + public method clear(): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection_ir.txt new file mode 100644 index 00000000000..b7310e8cf0b --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection_ir.txt @@ -0,0 +1,39 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleCollection { + // source: 'collection.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Double;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method add(p0: double): boolean + public synthetic bridge method add(p0: java.lang.Object): boolean + public method clear(): void + public abstract method contains(p0: double): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringCollection { + // source: 'collection.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public synthetic bridge method add(p0: java.lang.Object): boolean + public method add(p0: java.lang.String): boolean + public method clear(): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.kt new file mode 100644 index 00000000000..49cc58c8505 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericCollection : Collection \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.txt new file mode 100644 index 00000000000..363d43b592e --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Collection;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericCollection { + // source: 'genericCollection.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+TT;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(TT;)Z> method add(p0: java.lang.Object): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method clear(): void + public abstract method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection_ir.txt new file mode 100644 index 00000000000..31e1e65a4a8 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection_ir.txt @@ -0,0 +1,16 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Collection;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericCollection { + // source: 'genericCollection.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+TT;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(TT;)Z> method add(p0: java.lang.Object): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method clear(): void + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.kt new file mode 100644 index 00000000000..d64e0be043b --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericMap : Map diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.txt new file mode 100644 index 00000000000..bb936496956 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.txt @@ -0,0 +1,20 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericMap { + // source: 'genericMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public <(Ljava/lang/Object;)TV;> method remove(p0: java.lang.Object): java.lang.Object + public <(Ljava/util/Map<+TK;+TV;>;)V> method putAll(p0: java.util.Map): void + public <(TK;TV;)TV;> method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public method (): void + public method clear(): void + public abstract method containsKey(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap_ir.txt new file mode 100644 index 00000000000..42c14798f83 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap_ir.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericMap { + // source: 'genericMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public <(Ljava/lang/Object;)TV;> method remove(p0: java.lang.Object): java.lang.Object + public <(Ljava/util/Map<+TK;+TV;>;)V> method putAll(p0: java.util.Map): void + public <(TK;TV;)TV;> method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public method (): void + public method clear(): void + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.kt new file mode 100644 index 00000000000..327e7912dc8 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericMutableCollection : MutableCollection diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.txt new file mode 100644 index 00000000000..47ff83a0ffc --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.txt @@ -0,0 +1,11 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Collection;Lkotlin/jvm/internal/markers/KMutableCollection;> GenericMutableCollection { + // source: 'genericMutableCollection.kt' + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public abstract method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection_ir.txt new file mode 100644 index 00000000000..f04092bde31 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection_ir.txt @@ -0,0 +1,9 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Collection;Lkotlin/jvm/internal/markers/KMutableCollection;> GenericMutableCollection { + // source: 'genericMutableCollection.kt' + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public abstract method getSize(): int + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.kt new file mode 100644 index 00000000000..27d2891dd4e --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericMutableList : MutableList diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.txt new file mode 100644 index 00000000000..19613e3ca69 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.txt @@ -0,0 +1,15 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/List;Lkotlin/jvm/internal/markers/KMutableList;> GenericMutableList { + // source: 'genericMutableList.kt' + public bridge final <(I)TT;> method remove(p0: int): java.lang.Object + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public abstract method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method indexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: java.lang.Object): int + public abstract method remove(p0: java.lang.Object): boolean + public abstract method removeAt(p0: int): java.lang.Object + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList_ir.txt new file mode 100644 index 00000000000..064afd1feb2 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList_ir.txt @@ -0,0 +1,11 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/List;Lkotlin/jvm/internal/markers/KMutableList;> GenericMutableList { + // source: 'genericMutableList.kt' + public bridge final <(I)TT;> method remove(p0: int): java.lang.Object + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public abstract method getSize(): int + public abstract method removeAt(p0: int): java.lang.Object + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.kt new file mode 100644 index 00000000000..b03f5cc93fb --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericMutableMap : MutableMap diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.txt new file mode 100644 index 00000000000..a8d8338d33b --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMutableMap;> GenericMutableMap { + // source: 'genericMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public method (): void + public abstract method containsKey(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap_ir.txt new file mode 100644 index 00000000000..ee7bfe4e075 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap_ir.txt @@ -0,0 +1,13 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMutableMap;> GenericMutableMap { + // source: 'genericMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public method (): void + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.kt new file mode 100644 index 00000000000..17e0263c891 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericStringMap : Map diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.txt new file mode 100644 index 00000000000..92d37db8e1d --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.txt @@ -0,0 +1,23 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericStringMap { + // source: 'genericStringMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <(Ljava/lang/Object;)Ljava/lang/String;> method get(p0: java.lang.Object): java.lang.Object + public <(Ljava/lang/Object;)Ljava/lang/String;> method remove(p0: java.lang.Object): java.lang.Object + public <(Ljava/util/Map<+TK;+Ljava/lang/String;>;)V> method putAll(p0: java.util.Map): void + public <(TK;Ljava/lang/String;)Ljava/lang/String;> method put(p0: java.lang.Object, p1: java.lang.String): java.lang.String + public method (): void + public method clear(): void + public abstract method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.Object): java.lang.String + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public synthetic method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap_ir.txt new file mode 100644 index 00000000000..9d95caade61 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap_ir.txt @@ -0,0 +1,22 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericStringMap { + // source: 'genericStringMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public <(Ljava/util/Map<+TK;+Ljava/lang/String;>;)V> method putAll(p0: java.util.Map): void + public <(TK;Ljava/lang/String;)Ljava/lang/String;> method put(p0: java.lang.Object, p1: java.lang.String): java.lang.String + public method (): void + public method clear(): void + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public synthetic bridge method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public synthetic bridge method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public synthetic bridge method remove(p0: java.lang.Object): java.lang.Object + public method remove(p0: java.lang.Object): java.lang.String + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.kt new file mode 100644 index 00000000000..35ddf0f894f --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class GenericStringMutableMap : MutableMap diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.txt new file mode 100644 index 00000000000..a6fdd017e06 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.txt @@ -0,0 +1,20 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMutableMap;> GenericStringMutableMap { + // source: 'genericStringMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <(Ljava/lang/Object;)Ljava/lang/String;> method get(p0: java.lang.Object): java.lang.Object + public bridge final <(Ljava/lang/Object;)Ljava/lang/String;> method remove(p0: java.lang.Object): java.lang.Object + public method (): void + public abstract method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.Object): java.lang.String + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.Object): java.lang.String + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap_ir.txt new file mode 100644 index 00000000000..a4d1f1c07ac --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap_ir.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMutableMap;> GenericStringMutableMap { + // source: 'genericStringMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public method (): void + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public synthetic bridge method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public synthetic bridge method remove(p0: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.kt new file mode 100644 index 00000000000..e6967b34eb6 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericIterable : Iterable + +abstract class DoubleIterable : Iterable + +abstract class StringIterable : Iterable \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.txt new file mode 100644 index 00000000000..03cf2e0c3d4 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.txt @@ -0,0 +1,20 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleIterable { + // source: 'iterable.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/lang/Iterable;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericIterable { + // source: 'iterable.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public method (): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringIterable { + // source: 'iterable.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.kt new file mode 100644 index 00000000000..3bde654f064 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericIterator : Iterator + +abstract class DoubleIterator : Iterator + +abstract class StringIterator : Iterator \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.txt new file mode 100644 index 00000000000..9c5c39331a8 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.txt @@ -0,0 +1,20 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleIterator { + // source: 'iterator.kt' + public method (): void + public method remove(): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Iterator;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericIterator { + // source: 'iterator.kt' + public method (): void + public method remove(): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringIterator { + // source: 'iterator.kt' + public method (): void + public method remove(): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.kt new file mode 100644 index 00000000000..99bc98894dd --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericList : List + +abstract class DoubleList : List + +abstract class StringList : List \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.txt new file mode 100644 index 00000000000..fe92f920936 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.txt @@ -0,0 +1,91 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleList { + // source: 'list.kt' + public <()Ljava/util/ListIterator;> method listIterator(): java.util.ListIterator + public <(I)Ljava/util/ListIterator;> method listIterator(p0: int): java.util.ListIterator + public <(II)Ljava/util/List;> method subList(p0: int, p1: int): java.util.List + public <(ILjava/util/Collection<+Ljava/lang/Double;>;)Z> method addAll(p0: int, p1: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Double;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method add(p0: double): boolean + public method add(p0: int, p1: double): void + public synthetic method add(p0: int, p1: java.lang.Object): void + public synthetic method add(p0: java.lang.Object): boolean + public method clear(): void + public abstract method contains(p0: double): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method indexOf(p0: double): int + public bridge final method indexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: double): int + public bridge final method lastIndexOf(p0: java.lang.Object): int + public method remove(p0: int): double + public synthetic method remove(p0: int): java.lang.Object + public method remove(p0: java.lang.Object): boolean + public method set(p0: int, p1: double): java.lang.Double + public synthetic method set(p0: int, p1: java.lang.Object): java.lang.Object + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/List;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericList { + // source: 'list.kt' + public <()Ljava/util/ListIterator;> method listIterator(): java.util.ListIterator + public <(I)Ljava/util/ListIterator;> method listIterator(p0: int): java.util.ListIterator + public <(I)TT;> method remove(p0: int): java.lang.Object + public <(II)Ljava/util/List;> method subList(p0: int, p1: int): java.util.List + public <(ILjava/util/Collection<+TT;>;)Z> method addAll(p0: int, p1: java.util.Collection): boolean + public <(ITT;)TT;> method set(p0: int, p1: java.lang.Object): java.lang.Object + public <(ITT;)V> method add(p0: int, p1: java.lang.Object): void + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+TT;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(TT;)Z> method add(p0: java.lang.Object): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method clear(): void + public abstract method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method indexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: java.lang.Object): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringList { + // source: 'list.kt' + public <()Ljava/util/ListIterator;> method listIterator(): java.util.ListIterator + public <(I)Ljava/util/ListIterator;> method listIterator(p0: int): java.util.ListIterator + public <(II)Ljava/util/List;> method subList(p0: int, p1: int): java.util.List + public <(ILjava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: int, p1: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public synthetic method add(p0: int, p1: java.lang.Object): void + public method add(p0: int, p1: java.lang.String): void + public synthetic method add(p0: java.lang.Object): boolean + public method add(p0: java.lang.String): boolean + public method clear(): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public bridge final method indexOf(p0: java.lang.Object): int + public abstract method indexOf(p0: java.lang.String): int + public bridge final method lastIndexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: java.lang.String): int + public synthetic method remove(p0: int): java.lang.Object + public method remove(p0: int): java.lang.String + public method remove(p0: java.lang.Object): boolean + public synthetic method set(p0: int, p1: java.lang.Object): java.lang.Object + public method set(p0: int, p1: java.lang.String): java.lang.String + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.kt new file mode 100644 index 00000000000..ccd94304084 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericListIterator : ListIterator + +abstract class DoubleListIterator : ListIterator + +abstract class StringListIterator : ListIterator \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.txt new file mode 100644 index 00000000000..a59fe617f16 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.txt @@ -0,0 +1,38 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleListIterator { + // source: 'listIterator.kt' + public method (): void + public method add(p0: double): void + public synthetic method add(p0: java.lang.Object): void + public method hasNext(): boolean + public method next(): java.lang.Double + public synthetic method next(): java.lang.Object + public method remove(): void + public method set(p0: double): void + public synthetic method set(p0: java.lang.Object): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/ListIterator;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericListIterator { + // source: 'listIterator.kt' + public <()TT;> method next(): java.lang.Object + public <(TT;)V> method add(p0: java.lang.Object): void + public <(TT;)V> method set(p0: java.lang.Object): void + public method (): void + public method hasNext(): boolean + public method remove(): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringListIterator { + // source: 'listIterator.kt' + public method (): void + public synthetic method add(p0: java.lang.Object): void + public method add(p0: java.lang.String): void + public method hasNext(): boolean + public synthetic method next(): java.lang.Object + public method next(): java.lang.String + public method remove(): void + public synthetic method set(p0: java.lang.Object): void + public method set(p0: java.lang.String): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator_ir.txt new file mode 100644 index 00000000000..bf1197564c8 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator_ir.txt @@ -0,0 +1,38 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleListIterator { + // source: 'listIterator.kt' + public method (): void + public method add(p0: double): void + public synthetic bridge method add(p0: java.lang.Object): void + public method hasNext(): boolean + public method next(): java.lang.Double + public synthetic bridge method next(): java.lang.Object + public method remove(): void + public method set(p0: double): void + public synthetic bridge method set(p0: java.lang.Object): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/ListIterator;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericListIterator { + // source: 'listIterator.kt' + public <()TT;> method next(): java.lang.Object + public <(TT;)V> method add(p0: java.lang.Object): void + public <(TT;)V> method set(p0: java.lang.Object): void + public method (): void + public method hasNext(): boolean + public method remove(): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringListIterator { + // source: 'listIterator.kt' + public method (): void + public synthetic bridge method add(p0: java.lang.Object): void + public method add(p0: java.lang.String): void + public method hasNext(): boolean + public synthetic bridge method next(): java.lang.Object + public method next(): java.lang.String + public method remove(): void + public synthetic bridge method set(p0: java.lang.Object): void + public method set(p0: java.lang.String): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list_ir.txt new file mode 100644 index 00000000000..dbbbfcdb3ca --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list_ir.txt @@ -0,0 +1,88 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> DoubleList { + // source: 'list.kt' + public <()Ljava/util/ListIterator;> method listIterator(): java.util.ListIterator + public <(I)Ljava/util/ListIterator;> method listIterator(p0: int): java.util.ListIterator + public <(II)Ljava/util/List;> method subList(p0: int, p1: int): java.util.List + public <(ILjava/util/Collection<+Ljava/lang/Double;>;)Z> method addAll(p0: int, p1: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Double;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method add(p0: double): boolean + public method add(p0: int, p1: double): void + public synthetic bridge method add(p0: int, p1: java.lang.Object): void + public synthetic bridge method add(p0: java.lang.Object): boolean + public method clear(): void + public abstract method contains(p0: double): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method indexOf(p0: double): int + public bridge final method indexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: double): int + public bridge final method lastIndexOf(p0: java.lang.Object): int + public method remove(p0: int): double + public synthetic bridge method remove(p0: int): java.lang.Object + public method remove(p0: java.lang.Object): boolean + public method set(p0: int, p1: double): java.lang.Double + public synthetic bridge method set(p0: int, p1: java.lang.Object): java.lang.Object + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/List;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericList { + // source: 'list.kt' + public <()Ljava/util/ListIterator;> method listIterator(): java.util.ListIterator + public <(I)Ljava/util/ListIterator;> method listIterator(p0: int): java.util.ListIterator + public <(I)TT;> method remove(p0: int): java.lang.Object + public <(II)Ljava/util/List;> method subList(p0: int, p1: int): java.util.List + public <(ILjava/util/Collection<+TT;>;)Z> method addAll(p0: int, p1: java.util.Collection): boolean + public <(ITT;)TT;> method set(p0: int, p1: java.lang.Object): java.lang.Object + public <(ITT;)V> method add(p0: int, p1: java.lang.Object): void + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+TT;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(TT;)Z> method add(p0: java.lang.Object): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method clear(): void + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringList { + // source: 'list.kt' + public <()Ljava/util/ListIterator;> method listIterator(): java.util.ListIterator + public <(I)Ljava/util/ListIterator;> method listIterator(p0: int): java.util.ListIterator + public <(II)Ljava/util/List;> method subList(p0: int, p1: int): java.util.List + public <(ILjava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: int, p1: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public synthetic bridge method add(p0: int, p1: java.lang.Object): void + public method add(p0: int, p1: java.lang.String): void + public synthetic bridge method add(p0: java.lang.Object): boolean + public method add(p0: java.lang.String): boolean + public method clear(): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public bridge final method indexOf(p0: java.lang.Object): int + public abstract method indexOf(p0: java.lang.String): int + public bridge final method lastIndexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: java.lang.String): int + public synthetic bridge method remove(p0: int): java.lang.Object + public method remove(p0: int): java.lang.String + public method remove(p0: java.lang.Object): boolean + public synthetic bridge method set(p0: int, p1: java.lang.Object): java.lang.Object + public method set(p0: int, p1: java.lang.String): java.lang.String + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.kt new file mode 100644 index 00000000000..fd4f0396ed2 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.kt @@ -0,0 +1,11 @@ +// WITH_SIGNATURES + +abstract class GenericMapEntry : Map.Entry + +abstract class GenericStringMapEntry : Map.Entry + +abstract class StringGenericMapEntry : Map.Entry + +abstract class ByteShortMapEntry : Map.Entry + +abstract class NumberStringMapEntry : Map.Entry \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.txt new file mode 100644 index 00000000000..7ac2b7e51a3 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.txt @@ -0,0 +1,37 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> ByteShortMapEntry { + // source: 'mapEntry.kt' + public method (): void + public synthetic method setValue(p0: java.lang.Object): java.lang.Object + public method setValue(p0: short): java.lang.Short +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericMapEntry { + // source: 'mapEntry.kt' + public <(TV;)TV;> method setValue(p0: java.lang.Object): java.lang.Object + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericStringMapEntry { + // source: 'mapEntry.kt' + public method (): void + public synthetic method setValue(p0: java.lang.Object): java.lang.Object + public method setValue(p0: java.lang.String): java.lang.String +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> NumberStringMapEntry { + // source: 'mapEntry.kt' + public method (): void + public synthetic method setValue(p0: java.lang.Object): java.lang.Object + public method setValue(p0: java.lang.String): java.lang.String +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMappedMarker;> StringGenericMapEntry { + // source: 'mapEntry.kt' + public <(TV;)TV;> method setValue(p0: java.lang.Object): java.lang.Object + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry_ir.txt new file mode 100644 index 00000000000..eee59eafbc9 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry_ir.txt @@ -0,0 +1,37 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> ByteShortMapEntry { + // source: 'mapEntry.kt' + public method (): void + public synthetic bridge method setValue(p0: java.lang.Object): java.lang.Object + public method setValue(p0: short): java.lang.Short +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericMapEntry { + // source: 'mapEntry.kt' + public <(TV;)TV;> method setValue(p0: java.lang.Object): java.lang.Object + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericStringMapEntry { + // source: 'mapEntry.kt' + public method (): void + public synthetic bridge method setValue(p0: java.lang.Object): java.lang.Object + public method setValue(p0: java.lang.String): java.lang.String +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> NumberStringMapEntry { + // source: 'mapEntry.kt' + public method (): void + public synthetic bridge method setValue(p0: java.lang.Object): java.lang.Object + public method setValue(p0: java.lang.String): java.lang.String +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMappedMarker;> StringGenericMapEntry { + // source: 'mapEntry.kt' + public <(TV;)TV;> method setValue(p0: java.lang.Object): java.lang.Object + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.kt new file mode 100644 index 00000000000..68ceb9582e7 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.kt @@ -0,0 +1,5 @@ +// WITH_SIGNATURES + +abstract class DoubleMutableCollection : MutableCollection + +abstract class StringMutableCollection : MutableCollection \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.txt new file mode 100644 index 00000000000..39f12cbff8f --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.txt @@ -0,0 +1,27 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableCollection;> DoubleMutableCollection { + // source: 'mutableCollection.kt' + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public abstract method contains(p0: double): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method remove(p0: double): boolean + public bridge final method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableCollection;> StringMutableCollection { + // source: 'mutableCollection.kt' + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public bridge final method remove(p0: java.lang.Object): boolean + public abstract method remove(p0: java.lang.String): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.kt new file mode 100644 index 00000000000..7d1bd74dce3 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericMutableIterable : MutableIterable + +abstract class DoubleMutableIterable : MutableIterable + +abstract class StringMutableIterable : MutableIterable \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.txt new file mode 100644 index 00000000000..d5cd85a3727 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableIterable;> DoubleMutableIterable { + // source: 'mutableIterable.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/lang/Iterable;Lkotlin/jvm/internal/markers/KMutableIterable;> GenericMutableIterable { + // source: 'mutableIterable.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableIterable;> StringMutableIterable { + // source: 'mutableIterable.kt' + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.kt new file mode 100644 index 00000000000..d434e962e88 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericMutableIterator : MutableIterator + +abstract class DoubleMutableIterator : MutableIterator + +abstract class StringMutableIterator : MutableIterator \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.txt new file mode 100644 index 00000000000..2031f086542 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableIterator;> DoubleMutableIterator { + // source: 'mutableIterator.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Iterator;Lkotlin/jvm/internal/markers/KMutableIterator;> GenericMutableIterator { + // source: 'mutableIterator.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableIterator;> StringMutableIterator { + // source: 'mutableIterator.kt' + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.kt new file mode 100644 index 00000000000..427b3076584 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.kt @@ -0,0 +1,5 @@ +// WITH_SIGNATURES + +abstract class DoubleMutableList : MutableList + +abstract class StringMutableList : MutableList \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.txt new file mode 100644 index 00000000000..cfe9ddc254d --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.txt @@ -0,0 +1,41 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableList;> DoubleMutableList { + // source: 'mutableList.kt' + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public abstract method contains(p0: double): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public abstract method indexOf(p0: double): int + public bridge final method indexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: double): int + public bridge final method lastIndexOf(p0: java.lang.Object): int + public abstract method remove(p0: double): boolean + public bridge final method remove(p0: int): double + public synthetic bridge method remove(p0: int): java.lang.Object + public bridge final method remove(p0: java.lang.Object): boolean + public abstract method removeAt(p0: int): java.lang.Double + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableList;> StringMutableList { + // source: 'mutableList.kt' + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public bridge final method indexOf(p0: java.lang.Object): int + public abstract method indexOf(p0: java.lang.String): int + public bridge final method lastIndexOf(p0: java.lang.Object): int + public abstract method lastIndexOf(p0: java.lang.String): int + public synthetic bridge method remove(p0: int): java.lang.Object + public bridge final method remove(p0: int): java.lang.String + public bridge final method remove(p0: java.lang.Object): boolean + public abstract method remove(p0: java.lang.String): boolean + public abstract method removeAt(p0: int): java.lang.String + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.kt new file mode 100644 index 00000000000..608811ffdfd --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericMutableListIterator : MutableListIterator + +abstract class DoubleMutableListIterator : MutableListIterator + +abstract class StringMutableListIterator : MutableListIterator \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.txt new file mode 100644 index 00000000000..5ebe2bbc153 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.txt @@ -0,0 +1,17 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableListIterator;> DoubleMutableListIterator { + // source: 'mutableListIterator.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/ListIterator;Lkotlin/jvm/internal/markers/KMutableListIterator;> GenericMutableListIterator { + // source: 'mutableListIterator.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableListIterator;> StringMutableListIterator { + // source: 'mutableListIterator.kt' + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.kt new file mode 100644 index 00000000000..529037140b7 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.kt @@ -0,0 +1,11 @@ +// WITH_SIGNATURES + +abstract class GenericMutableMutableMapEntry : MutableMap.MutableEntry + +abstract class GenericStringMutableMapEntry : MutableMap.MutableEntry + +abstract class StringGenericMutableMapEntry : MutableMap.MutableEntry + +abstract class ByteShortMutableMapEntry : MutableMap.MutableEntry + +abstract class NumberStringMutableMapEntry : MutableMap.MutableEntry \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.txt new file mode 100644 index 00000000000..22254fa9c1c --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.txt @@ -0,0 +1,29 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableMap$Entry;> ByteShortMutableMapEntry { + // source: 'mutableMapEntry.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMutableMap$Entry;> GenericMutableMutableMapEntry { + // source: 'mutableMapEntry.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMutableMap$Entry;> GenericStringMutableMapEntry { + // source: 'mutableMapEntry.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableMap$Entry;> NumberStringMutableMapEntry { + // source: 'mutableMapEntry.kt' + public method (): void +} + +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map$Entry;Lkotlin/jvm/internal/markers/KMutableMap$Entry;> StringGenericMutableMapEntry { + // source: 'mutableMapEntry.kt' + public method (): void +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.kt new file mode 100644 index 00000000000..017fd35359e --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class NumberStringMap : Map \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.txt new file mode 100644 index 00000000000..bfa19e02be4 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.txt @@ -0,0 +1,24 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> NumberStringMap { + // source: 'numberStringMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public <(Ljava/util/Map<+Ljava/lang/Number;+Ljava/lang/String;>;)V> method putAll(p0: java.util.Map): void + public method (): void + public method clear(): void + public abstract method containsKey(p0: java.lang.Number): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.Number): java.lang.String + public bridge final method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public method put(p0: java.lang.Number, p1: java.lang.String): java.lang.String + public synthetic method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public method remove(p0: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap_ir.txt new file mode 100644 index 00000000000..4043241f3cf --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap_ir.txt @@ -0,0 +1,26 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> NumberStringMap { + // source: 'numberStringMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public <(Ljava/util/Map<+Ljava/lang/Number;+Ljava/lang/String;>;)V> method putAll(p0: java.util.Map): void + public method (): void + public method clear(): void + public abstract method containsKey(p0: java.lang.Number): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.Number): java.lang.String + public synthetic bridge method get(p0: java.lang.Object): java.lang.Object + public bridge final method get(p0: java.lang.Object): java.lang.String + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public method put(p0: java.lang.Number, p1: java.lang.String): java.lang.String + public synthetic bridge method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public synthetic bridge method remove(p0: java.lang.Object): java.lang.Object + public method remove(p0: java.lang.Object): java.lang.String + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.kt new file mode 100644 index 00000000000..88ce7a0c212 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class NumberStringMutableMap : MutableMap \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.txt new file mode 100644 index 00000000000..c774ae142ef --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.txt @@ -0,0 +1,21 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableMap;> NumberStringMutableMap { + // source: 'numberStringMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public method (): void + public abstract method containsKey(p0: java.lang.Number): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.Number): java.lang.String + public bridge final method get(p0: java.lang.Object): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.Number): java.lang.String + public bridge final method remove(p0: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap_ir.txt new file mode 100644 index 00000000000..83d426ee4e3 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap_ir.txt @@ -0,0 +1,23 @@ +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMutableMap;> NumberStringMutableMap { + // source: 'numberStringMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public method (): void + public abstract method containsKey(p0: java.lang.Number): boolean + public bridge final method containsKey(p0: java.lang.Object): boolean + public bridge final method containsValue(p0: java.lang.Object): boolean + public abstract method containsValue(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.Number): java.lang.String + public synthetic bridge method get(p0: java.lang.Object): java.lang.Object + public bridge final method get(p0: java.lang.Object): java.lang.String + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.Number): java.lang.String + public synthetic bridge method remove(p0: java.lang.Object): java.lang.Object + public bridge final method remove(p0: java.lang.Object): java.lang.String + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.kt new file mode 100644 index 00000000000..386ee56dbca --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.kt @@ -0,0 +1,7 @@ +// WITH_SIGNATURES + +abstract class GenericSet : Set + +abstract class IntSet : Set + +abstract class StringSet : Set \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.txt new file mode 100644 index 00000000000..357ef2345ab --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.txt @@ -0,0 +1,57 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Set;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericSet { + // source: 'set.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+TT;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(TT;)Z> method add(p0: java.lang.Object): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method clear(): void + public abstract method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> IntSet { + // source: 'set.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Integer;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method add(p0: int): boolean + public synthetic method add(p0: java.lang.Object): boolean + public method clear(): void + public abstract method contains(p0: int): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringSet { + // source: 'set.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public synthetic method add(p0: java.lang.Object): boolean + public method add(p0: java.lang.String): boolean + public method clear(): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set_ir.txt new file mode 100644 index 00000000000..c4fe266ad9d --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set_ir.txt @@ -0,0 +1,56 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Set;Lkotlin/jvm/internal/markers/KMappedMarker;> GenericSet { + // source: 'set.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+TT;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(TT;)Z> method add(p0: java.lang.Object): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method clear(): void + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> IntSet { + // source: 'set.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Integer;>;)Z> method addAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public method add(p0: int): boolean + public synthetic bridge method add(p0: java.lang.Object): boolean + public method clear(): void + public abstract method contains(p0: int): boolean + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} + +@kotlin.Metadata +public abstract class;Lkotlin/jvm/internal/markers/KMappedMarker;> StringSet { + // source: 'set.kt' + public <()Ljava/util/Iterator;> method iterator(): java.util.Iterator + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method removeAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/Object;>;)Z> method retainAll(p0: java.util.Collection): boolean + public <(Ljava/util/Collection<+Ljava/lang/String;>;)Z> method addAll(p0: java.util.Collection): boolean + public <([TT;)[TT;> method toArray(p0: java.lang.Object[]): java.lang.Object[] + public method (): void + public synthetic bridge method add(p0: java.lang.Object): boolean + public method add(p0: java.lang.String): boolean + public method clear(): void + public bridge final method contains(p0: java.lang.Object): boolean + public abstract method contains(p0: java.lang.String): boolean + public abstract method getSize(): int + public method remove(p0: java.lang.Object): boolean + public bridge final method size(): int + public method toArray(): java.lang.Object[] +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.kt new file mode 100644 index 00000000000..466222bc908 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class StringGenericMap : Map diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.txt new file mode 100644 index 00000000000..cf842b0f3f5 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.txt @@ -0,0 +1,23 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> StringGenericMap { + // source: 'stringGenericMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <(Ljava/lang/Object;)TV;> method get(p0: java.lang.Object): java.lang.Object + public <(Ljava/lang/Object;)TV;> method remove(p0: java.lang.Object): java.lang.Object + public <(Ljava/lang/String;TV;)TV;> method put(p0: java.lang.String, p1: java.lang.Object): java.lang.Object + public <(Ljava/util/Map<+Ljava/lang/String;+TV;>;)V> method putAll(p0: java.util.Map): void + public method (): void + public method clear(): void + public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method containsKey(p0: java.lang.String): boolean + public abstract method containsValue(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.String): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public synthetic method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap_ir.txt new file mode 100644 index 00000000000..b5fa7e547ab --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap_ir.txt @@ -0,0 +1,22 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> StringGenericMap { + // source: 'stringGenericMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <(Ljava/lang/Object;)TV;> method get(p0: java.lang.Object): java.lang.Object + public <(Ljava/lang/Object;)TV;> method remove(p0: java.lang.Object): java.lang.Object + public <(Ljava/lang/String;TV;)TV;> method put(p0: java.lang.String, p1: java.lang.Object): java.lang.Object + public <(Ljava/util/Map<+Ljava/lang/String;+TV;>;)V> method putAll(p0: java.util.Map): void + public method (): void + public method clear(): void + public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method containsKey(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.String): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public synthetic bridge method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.kt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.kt new file mode 100644 index 00000000000..d504614fffd --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.kt @@ -0,0 +1,3 @@ +// WITH_SIGNATURES + +abstract class StringGenericMutableMap : MutableMap diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.txt new file mode 100644 index 00000000000..5c158f2dc03 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.txt @@ -0,0 +1,20 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMutableMap;> StringGenericMutableMap { + // source: 'stringGenericMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <(Ljava/lang/Object;)TV;> method get(p0: java.lang.Object): java.lang.Object + public bridge final <(Ljava/lang/Object;)TV;> method remove(p0: java.lang.Object): java.lang.Object + public method (): void + public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method containsKey(p0: java.lang.String): boolean + public abstract method containsValue(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.String): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.String): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap_ir.txt b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap_ir.txt new file mode 100644 index 00000000000..ea5ce048bf2 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap_ir.txt @@ -0,0 +1,19 @@ +@kotlin.Metadata +public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMutableMap;> StringGenericMutableMap { + // source: 'stringGenericMutableMap.kt' + public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection + public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set + public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set + public bridge final <(Ljava/lang/Object;)TV;> method get(p0: java.lang.Object): java.lang.Object + public bridge final <(Ljava/lang/Object;)TV;> method remove(p0: java.lang.Object): java.lang.Object + public method (): void + public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method containsKey(p0: java.lang.String): boolean + public abstract method get(p0: java.lang.String): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set + public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.String): java.lang.Object + public bridge final method size(): int +} diff --git a/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsJavaMap_ir.txt b/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsJavaMap_ir.txt index 14519ef19c8..40cc49a6877 100644 --- a/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsJavaMap_ir.txt +++ b/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsJavaMap_ir.txt @@ -1,34 +1,34 @@ @kotlin.Metadata public abstract class<Ljava/lang/Object;LJMap;> JMapImpl { // source: 'implementsJavaMap.kt' - public abstract <()Ljava/util/Collection;> method getValues(): java.util.Collection public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set - public abstract <()Ljava/util/Set;>;> method getEntries(): java.util.Set - public abstract <()Ljava/util/Set;> method getKeys(): java.util.Set public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set public method (): void public method containsKey(p0: java.lang.Object): boolean + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set public abstract method getSize(): int + public abstract method getValues(): java.util.Collection public bridge final method size(): int } @kotlin.Metadata public abstract class<Ljava/lang/Object;LJMapN;> JMapNImpl { // source: 'implementsJavaMap.kt' - public abstract <()Ljava/util/Collection;> method getValues(): java.util.Collection public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set - public abstract <()Ljava/util/Set;>;> method getEntries(): java.util.Set - public abstract <()Ljava/util/Set;> method getKeys(): java.util.Set public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set public bridge final <(Ljava/lang/Object;)TB;> method get(p0: java.lang.Object): java.lang.Object public bridge final <(Ljava/lang/Object;)TB;> method remove(p0: java.lang.Object): java.lang.Object - public abstract <(TA;)TB;> method get(p0: java.lang.Number): java.lang.Object - public abstract <(TA;)TB;> method remove(p0: java.lang.Number): java.lang.Object public <(TA;)Z> method containsKey(@org.jetbrains.annotations.NotNull p0: java.lang.Number): boolean public method (): void public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.Number): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set public abstract method getSize(): int + public abstract method getValues(): java.util.Collection + public abstract method remove(p0: java.lang.Number): java.lang.Object public bridge final method size(): int } diff --git a/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsMap_ir.txt b/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsMap_ir.txt index 38cc2a22ad8..010997f99f8 100644 --- a/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsMap_ir.txt +++ b/compiler/testData/codegen/bytecodeListing/specialBridges/signatures/implementsMap_ir.txt @@ -1,11 +1,8 @@ @kotlin.Metadata public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> MapImpl { // source: 'implementsMap.kt' - public abstract <()Ljava/util/Collection;> method getValues(): java.util.Collection public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set - public abstract <()Ljava/util/Set;>;> method getEntries(): java.util.Set - public abstract <()Ljava/util/Set;> method getKeys(): java.util.Set public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set public <(Ljava/lang/Object;)TB;> method remove(p0: java.lang.Object): java.lang.Object public <(Ljava/util/Map<+TA;+TB;>;)V> method putAll(p0: java.util.Map): void @@ -13,7 +10,10 @@ public abstract class<Ljava/lang/Objec public method (): void public method clear(): void public method containsKey(p0: java.lang.Object): boolean + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set public abstract method getSize(): int + public abstract method getValues(): java.util.Collection public bridge final method size(): int } @@ -25,22 +25,22 @@ public interface<Ljava/lang/Object;Lja @kotlin.Metadata public abstract class<Ljava/lang/Object;LMapN;> MapNImpl { // source: 'implementsMap.kt' - public abstract <()Ljava/util/Collection;> method getValues(): java.util.Collection public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set - public abstract <()Ljava/util/Set;>;> method getEntries(): java.util.Set - public abstract <()Ljava/util/Set;> method getKeys(): java.util.Set public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set public bridge final <(Ljava/lang/Object;)TB;> method get(p0: java.lang.Object): java.lang.Object public <(Ljava/lang/Object;)TB;> method remove(p0: java.lang.Object): java.lang.Object public <(Ljava/util/Map<+TA;+TB;>;)V> method putAll(p0: java.util.Map): void - public abstract <(TA;)TB;> method get(p0: java.lang.Number): java.lang.Object public <(TA;)Z> method containsKey(@org.jetbrains.annotations.NotNull p0: java.lang.Number): boolean public <(TA;TB;)TB;> method put(p0: java.lang.Number, p1: java.lang.Object): java.lang.Object public method (): void public method clear(): void public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.Number): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set public abstract method getSize(): int + public abstract method getValues(): java.util.Collection public synthetic bridge method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object public bridge final method size(): int } @@ -48,22 +48,22 @@ public abstract class<Ljava/lang/Objec @kotlin.Metadata public abstract class<Ljava/lang/Object;Ljava/util/Map;Lkotlin/jvm/internal/markers/KMappedMarker;> MapSImpl { // source: 'implementsMap.kt' - public abstract <()Ljava/util/Collection;> method getValues(): java.util.Collection public bridge final <()Ljava/util/Collection;> method values(): java.util.Collection - public abstract <()Ljava/util/Set;> method getKeys(): java.util.Set public bridge final <()Ljava/util/Set;> method keySet(): java.util.Set public bridge final <()Ljava/util/Set;>;> method entrySet(): java.util.Set - public abstract <()Ljava/util/Set;>;> method getEntries(): java.util.Set public bridge final <(Ljava/lang/Object;)TB;> method get(p0: java.lang.Object): java.lang.Object public <(Ljava/lang/Object;)TB;> method remove(p0: java.lang.Object): java.lang.Object - public abstract <(Ljava/lang/String;)TB;> method get(p0: java.lang.String): java.lang.Object public <(Ljava/lang/String;TB;)TB;> method put(p0: java.lang.String, p1: java.lang.Object): java.lang.Object public <(Ljava/util/Map<+Ljava/lang/String;+TB;>;)V> method putAll(p0: java.util.Map): void public method (): void public method clear(): void public method containsKey(@org.jetbrains.annotations.NotNull p0: java.lang.String): boolean public bridge final method containsKey(p0: java.lang.Object): boolean + public abstract method get(p0: java.lang.String): java.lang.Object + public abstract method getEntries(): java.util.Set + public abstract method getKeys(): java.util.Set public abstract method getSize(): int + public abstract method getValues(): java.util.Collection public synthetic bridge method put(p0: java.lang.Object, p1: java.lang.Object): java.lang.Object public bridge final method size(): int } diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java index 262cfaf0df3..21e2e2d6d03 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java @@ -358,6 +358,149 @@ public class BytecodeListingTestGenerated extends AbstractBytecodeListingTest { public void testStubsFromSuperclassNoBridges() throws Exception { runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/stubsFromSuperclassNoBridges.kt"); } + + @TestMetadata("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class AbstractStubSignatures extends AbstractBytecodeListingTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest(this::doTest, this, testDataFilePath); + } + + public void testAllFilesPresentInAbstractStubSignatures() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures"), Pattern.compile("^(.+)\\.kt$"), null, true); + } + + @TestMetadata("byteShortMap.kt") + public void testByteShortMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.kt"); + } + + @TestMetadata("byteShortMutableMap.kt") + public void testByteShortMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.kt"); + } + + @TestMetadata("collection.kt") + public void testCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.kt"); + } + + @TestMetadata("genericCollection.kt") + public void testGenericCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.kt"); + } + + @TestMetadata("genericMap.kt") + public void testGenericMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.kt"); + } + + @TestMetadata("genericMutableCollection.kt") + public void testGenericMutableCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.kt"); + } + + @TestMetadata("genericMutableList.kt") + public void testGenericMutableList() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.kt"); + } + + @TestMetadata("genericMutableMap.kt") + public void testGenericMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.kt"); + } + + @TestMetadata("genericStringMap.kt") + public void testGenericStringMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.kt"); + } + + @TestMetadata("genericStringMutableMap.kt") + public void testGenericStringMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.kt"); + } + + @TestMetadata("iterable.kt") + public void testIterable() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.kt"); + } + + @TestMetadata("iterator.kt") + public void testIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.kt"); + } + + @TestMetadata("list.kt") + public void testList() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.kt"); + } + + @TestMetadata("listIterator.kt") + public void testListIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.kt"); + } + + @TestMetadata("mapEntry.kt") + public void testMapEntry() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.kt"); + } + + @TestMetadata("mutableCollection.kt") + public void testMutableCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.kt"); + } + + @TestMetadata("mutableIterable.kt") + public void testMutableIterable() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.kt"); + } + + @TestMetadata("mutableIterator.kt") + public void testMutableIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.kt"); + } + + @TestMetadata("mutableList.kt") + public void testMutableList() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.kt"); + } + + @TestMetadata("mutableListIterator.kt") + public void testMutableListIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.kt"); + } + + @TestMetadata("mutableMapEntry.kt") + public void testMutableMapEntry() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.kt"); + } + + @TestMetadata("numberStringMap.kt") + public void testNumberStringMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.kt"); + } + + @TestMetadata("numberStringMutableMap.kt") + public void testNumberStringMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.kt"); + } + + @TestMetadata("set.kt") + public void testSet() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.kt"); + } + + @TestMetadata("stringGenericMap.kt") + public void testStringGenericMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.kt"); + } + + @TestMetadata("stringGenericMutableMap.kt") + public void testStringGenericMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.kt"); + } + } } @TestMetadata("compiler/testData/codegen/bytecodeListing/coroutines") diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBytecodeListingTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBytecodeListingTestGenerated.java index 085531b051e..39e08ffebb8 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBytecodeListingTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBytecodeListingTestGenerated.java @@ -358,6 +358,149 @@ public class IrBytecodeListingTestGenerated extends AbstractIrBytecodeListingTes public void testStubsFromSuperclassNoBridges() throws Exception { runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/stubsFromSuperclassNoBridges.kt"); } + + @TestMetadata("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class AbstractStubSignatures extends AbstractIrBytecodeListingTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest(this::doTest, TargetBackend.JVM_IR, testDataFilePath); + } + + public void testAllFilesPresentInAbstractStubSignatures() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM_IR, true); + } + + @TestMetadata("byteShortMap.kt") + public void testByteShortMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMap.kt"); + } + + @TestMetadata("byteShortMutableMap.kt") + public void testByteShortMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/byteShortMutableMap.kt"); + } + + @TestMetadata("collection.kt") + public void testCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/collection.kt"); + } + + @TestMetadata("genericCollection.kt") + public void testGenericCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericCollection.kt"); + } + + @TestMetadata("genericMap.kt") + public void testGenericMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMap.kt"); + } + + @TestMetadata("genericMutableCollection.kt") + public void testGenericMutableCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableCollection.kt"); + } + + @TestMetadata("genericMutableList.kt") + public void testGenericMutableList() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableList.kt"); + } + + @TestMetadata("genericMutableMap.kt") + public void testGenericMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericMutableMap.kt"); + } + + @TestMetadata("genericStringMap.kt") + public void testGenericStringMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMap.kt"); + } + + @TestMetadata("genericStringMutableMap.kt") + public void testGenericStringMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/genericStringMutableMap.kt"); + } + + @TestMetadata("iterable.kt") + public void testIterable() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterable.kt"); + } + + @TestMetadata("iterator.kt") + public void testIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/iterator.kt"); + } + + @TestMetadata("list.kt") + public void testList() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/list.kt"); + } + + @TestMetadata("listIterator.kt") + public void testListIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/listIterator.kt"); + } + + @TestMetadata("mapEntry.kt") + public void testMapEntry() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mapEntry.kt"); + } + + @TestMetadata("mutableCollection.kt") + public void testMutableCollection() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableCollection.kt"); + } + + @TestMetadata("mutableIterable.kt") + public void testMutableIterable() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterable.kt"); + } + + @TestMetadata("mutableIterator.kt") + public void testMutableIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableIterator.kt"); + } + + @TestMetadata("mutableList.kt") + public void testMutableList() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableList.kt"); + } + + @TestMetadata("mutableListIterator.kt") + public void testMutableListIterator() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableListIterator.kt"); + } + + @TestMetadata("mutableMapEntry.kt") + public void testMutableMapEntry() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/mutableMapEntry.kt"); + } + + @TestMetadata("numberStringMap.kt") + public void testNumberStringMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMap.kt"); + } + + @TestMetadata("numberStringMutableMap.kt") + public void testNumberStringMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/numberStringMutableMap.kt"); + } + + @TestMetadata("set.kt") + public void testSet() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/set.kt"); + } + + @TestMetadata("stringGenericMap.kt") + public void testStringGenericMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMap.kt"); + } + + @TestMetadata("stringGenericMutableMap.kt") + public void testStringGenericMutableMap() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/abstractStubSignatures/stringGenericMutableMap.kt"); + } + } } @TestMetadata("compiler/testData/codegen/bytecodeListing/coroutines")