Report warnings on overrides with wrong types nullability
^KT-48899 Fixed
This commit is contained in:
committed by
TeamCityServer
parent
ec97dab6cd
commit
f7ef551f99
+79
@@ -0,0 +1,79 @@
|
||||
// JSPECIFY_STATE: warn
|
||||
|
||||
// FILE: Foo.java
|
||||
public interface Foo {}
|
||||
// FILE: BaseClass.java
|
||||
|
||||
import org.jspecify.nullness.*;
|
||||
|
||||
@NullMarked
|
||||
public class BaseClass {
|
||||
public Foo everythingNotNullable(Foo x) { return null; }
|
||||
|
||||
public @Nullable Foo everythingNullable(@Nullable Foo x) { return null; }
|
||||
|
||||
public @NullnessUnspecified Foo everythingUnknown(@NullnessUnspecified Foo x) { return null; }
|
||||
|
||||
public @Nullable Foo mixed(Foo x) { return null; }
|
||||
|
||||
public Foo explicitlyNullnessUnspecified(@NullnessUnspecified Foo x) { return null; }
|
||||
}
|
||||
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
private val FOO = object : Foo {}
|
||||
|
||||
class Correct : BaseClass() {
|
||||
override fun everythingNotNullable(x: Foo): Foo {
|
||||
return FOO
|
||||
}
|
||||
|
||||
override fun everythingNullable(x: Foo?): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun everythingUnknown(x: Foo?): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun mixed(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun explicitlyNullnessUnspecified(x: Foo): Foo {
|
||||
return FOO
|
||||
}
|
||||
}
|
||||
|
||||
class WrongReturnTypes : BaseClass() {
|
||||
override fun everythingNotNullable(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun explicitlyNullnessUnspecified(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
class WrongParameter : BaseClass() {
|
||||
override fun everythingNotNullable(x: Foo?): Foo {
|
||||
return FOO
|
||||
}
|
||||
|
||||
override fun everythingNullable(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun everythingUnknown(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun mixed(x: Foo?): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun explicitlyNullnessUnspecified(x: Foo?): Foo {
|
||||
return FOO
|
||||
}
|
||||
}
|
||||
+79
@@ -0,0 +1,79 @@
|
||||
// JSPECIFY_STATE: warn
|
||||
|
||||
// FILE: Foo.java
|
||||
public interface Foo {}
|
||||
// FILE: BaseClass.java
|
||||
|
||||
import org.jspecify.nullness.*;
|
||||
|
||||
@NullMarked
|
||||
public class BaseClass {
|
||||
public Foo everythingNotNullable(Foo x) { return null; }
|
||||
|
||||
public @Nullable Foo everythingNullable(@Nullable Foo x) { return null; }
|
||||
|
||||
public @NullnessUnspecified Foo everythingUnknown(@NullnessUnspecified Foo x) { return null; }
|
||||
|
||||
public @Nullable Foo mixed(Foo x) { return null; }
|
||||
|
||||
public Foo explicitlyNullnessUnspecified(@NullnessUnspecified Foo x) { return null; }
|
||||
}
|
||||
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
private val FOO = object : Foo {}
|
||||
|
||||
class Correct : BaseClass() {
|
||||
override fun everythingNotNullable(x: Foo): Foo {
|
||||
return FOO
|
||||
}
|
||||
|
||||
override fun everythingNullable(x: Foo?): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun everythingUnknown(x: Foo?): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun mixed(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun explicitlyNullnessUnspecified(x: Foo): Foo {
|
||||
return FOO
|
||||
}
|
||||
}
|
||||
|
||||
class WrongReturnTypes : BaseClass() {
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun everythingNotNullable(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun explicitlyNullnessUnspecified(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
class WrongParameter : BaseClass() {
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun everythingNotNullable(x: Foo?): Foo {
|
||||
return FOO
|
||||
}
|
||||
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun everythingNullable(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun everythingUnknown(x: Foo): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun mixed(x: Foo?): Foo? {
|
||||
return null
|
||||
}
|
||||
|
||||
override fun explicitlyNullnessUnspecified(x: Foo?): Foo {
|
||||
return FOO
|
||||
}
|
||||
}
|
||||
+57
@@ -0,0 +1,57 @@
|
||||
package
|
||||
|
||||
private val FOO: FOO.<no name provided>
|
||||
|
||||
@org.jspecify.nullness.NullMarked public open class BaseClass {
|
||||
public constructor BaseClass()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open fun everythingNotNullable(/*0*/ x: Foo!): Foo!
|
||||
@org.jspecify.nullness.Nullable public open fun everythingNullable(/*0*/ @org.jspecify.nullness.Nullable x: @org.jspecify.nullness.Nullable Foo!): @org.jspecify.nullness.Nullable Foo!
|
||||
@org.jspecify.nullness.NullnessUnspecified public open fun everythingUnknown(/*0*/ @org.jspecify.nullness.NullnessUnspecified x: @org.jspecify.nullness.NullnessUnspecified Foo!): @org.jspecify.nullness.NullnessUnspecified Foo!
|
||||
public open fun explicitlyNullnessUnspecified(/*0*/ @org.jspecify.nullness.NullnessUnspecified x: @org.jspecify.nullness.NullnessUnspecified Foo!): Foo!
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
@org.jspecify.nullness.Nullable public open fun mixed(/*0*/ x: Foo!): @org.jspecify.nullness.Nullable Foo!
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Correct : BaseClass {
|
||||
public constructor Correct()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ fun everythingNotNullable(/*0*/ x: Foo): Foo
|
||||
public open override /*1*/ fun everythingNullable(/*0*/ x: Foo?): Foo?
|
||||
public open override /*1*/ fun everythingUnknown(/*0*/ x: Foo?): Foo?
|
||||
public open override /*1*/ fun explicitlyNullnessUnspecified(/*0*/ x: Foo): Foo
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ fun mixed(/*0*/ x: Foo): Foo?
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public interface Foo {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class WrongParameter : BaseClass {
|
||||
public constructor WrongParameter()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ fun everythingNotNullable(/*0*/ x: Foo?): Foo
|
||||
public open override /*1*/ fun everythingNullable(/*0*/ x: Foo): Foo?
|
||||
public open override /*1*/ fun everythingUnknown(/*0*/ x: Foo): Foo?
|
||||
public open override /*1*/ fun explicitlyNullnessUnspecified(/*0*/ x: Foo?): Foo
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ fun mixed(/*0*/ x: Foo?): Foo?
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class WrongReturnTypes : BaseClass {
|
||||
public constructor WrongReturnTypes()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ fun everythingNotNullable(/*0*/ x: Foo): Foo?
|
||||
@org.jspecify.nullness.Nullable public open override /*1*/ /*fake_override*/ fun everythingNullable(/*0*/ @org.jspecify.nullness.Nullable x: @org.jspecify.nullness.Nullable Foo!): @org.jspecify.nullness.Nullable Foo!
|
||||
@org.jspecify.nullness.NullnessUnspecified public open override /*1*/ /*fake_override*/ fun everythingUnknown(/*0*/ @org.jspecify.nullness.NullnessUnspecified x: @org.jspecify.nullness.NullnessUnspecified Foo!): @org.jspecify.nullness.NullnessUnspecified Foo!
|
||||
public open override /*1*/ fun explicitlyNullnessUnspecified(/*0*/ x: Foo): Foo?
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
@org.jspecify.nullness.Nullable public open override /*1*/ /*fake_override*/ fun mixed(/*0*/ x: Foo!): @org.jspecify.nullness.Nullable Foo!
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
// !SKIP_JAVAC
|
||||
// !LANGUAGE: -ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
|
||||
// !LANGUAGE: +DefinitelyNonNullableTypes
|
||||
// FILE: SLRUMap.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
public interface SLRUMap<V> {
|
||||
void takeV(@NotNull V value);
|
||||
<E> void takeE(@NotNull E value);
|
||||
|
||||
void takeVList(@NotNull List<@NotNull V> value);
|
||||
<E> void takeEList(@NotNull List<@NotNull E> value);
|
||||
|
||||
public <K> K id(K value) { return null; }
|
||||
}
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
interface Q1<X> : SLRUMap<X> {
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> fun takeV(x: X)
|
||||
override fun <E1> takeE(e: E1)
|
||||
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> fun takeVList(l: List<X>)
|
||||
override fun <E2> takeEList(l2: List<E2>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
|
||||
interface Q2<X> : SLRUMap<X> {
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> fun takeV(x: X & Any)
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> fun <E1> takeE(e: E1 & Any)
|
||||
|
||||
override fun takeVList(l: List<X & Any>)
|
||||
override fun <E2> takeEList(l2: List<E2 & Any>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
// !SKIP_JAVAC
|
||||
// !LANGUAGE: -ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
|
||||
// !LANGUAGE: +DefinitelyNonNullableTypes
|
||||
// FILE: SLRUMap.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
public interface SLRUMap<V> {
|
||||
void takeV(@NotNull V value);
|
||||
<E> void takeE(@NotNull E value);
|
||||
|
||||
void takeVList(@NotNull List<@NotNull V> value);
|
||||
<E> void takeEList(@NotNull List<@NotNull E> value);
|
||||
|
||||
public <K> K id(K value) { return null; }
|
||||
}
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
interface Q1<X> : SLRUMap<X> {
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun takeV(x: X)
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun <E1> takeE(e: E1)
|
||||
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun takeVList(l: List<X>)
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun <E2> takeEList(l2: List<E2>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
|
||||
interface Q2<X> : SLRUMap<X> {
|
||||
override fun takeV(x: X & Any)
|
||||
override fun <E1> takeE(e: E1 & Any)
|
||||
|
||||
override fun takeVList(l: List<X & Any>)
|
||||
override fun <E2> takeEList(l2: List<E2 & Any>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
package
|
||||
|
||||
public interface Q1</*0*/ X> : SLRUMap<X> {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public abstract override /*1*/ fun </*0*/ K2> id(/*0*/ k2: K2): K2
|
||||
public abstract override /*1*/ fun </*0*/ E1> takeE(/*0*/ e: E1): kotlin.Unit
|
||||
public abstract override /*1*/ fun </*0*/ E2> takeEList(/*0*/ l2: kotlin.collections.List<E2>): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeV(/*0*/ x: X): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeVList(/*0*/ l: kotlin.collections.List<X>): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public interface Q2</*0*/ X> : SLRUMap<X> {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public abstract override /*1*/ fun </*0*/ K2> id(/*0*/ k2: K2): K2
|
||||
public abstract override /*1*/ fun </*0*/ E1> takeE(/*0*/ e: E1 & Any): kotlin.Unit
|
||||
public abstract override /*1*/ fun </*0*/ E2> takeEList(/*0*/ l2: kotlin.collections.List<E2 & Any>): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeV(/*0*/ x: X & Any): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeVList(/*0*/ l: kotlin.collections.List<X & Any>): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public interface SLRUMap</*0*/ V : kotlin.Any!> {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public abstract fun </*0*/ K : kotlin.Any!> id(/*0*/ value: K!): K!
|
||||
public abstract fun </*0*/ E : kotlin.Any!> takeE(/*0*/ @org.jetbrains.annotations.NotNull value: E): kotlin.Unit
|
||||
public abstract fun </*0*/ E : kotlin.Any!> takeEList(/*0*/ @org.jetbrains.annotations.NotNull value: kotlin.collections.(Mutable)List<@org.jetbrains.annotations.NotNull E>): kotlin.Unit
|
||||
public abstract fun takeV(/*0*/ @org.jetbrains.annotations.NotNull value: V): kotlin.Unit
|
||||
public abstract fun takeVList(/*0*/ @org.jetbrains.annotations.NotNull value: kotlin.collections.(Mutable)List<@org.jetbrains.annotations.NotNull V>): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Vendored
+38
@@ -0,0 +1,38 @@
|
||||
// !SKIP_JAVAC
|
||||
// !LANGUAGE: -ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
|
||||
// FILE: SLRUMap.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
public interface SLRUMap<V> {
|
||||
void takeV(@NotNull V value);
|
||||
<E> void takeE(@NotNull E value);
|
||||
|
||||
void takeVList(@NotNull List<@NotNull V> value);
|
||||
<E> void takeEList(@NotNull List<@NotNull E> value);
|
||||
|
||||
public <K> K id(K value) { return null; }
|
||||
}
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
interface Q1<X> : SLRUMap<X> {
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> fun takeV(x: X)
|
||||
override fun <E1> takeE(e: E1)
|
||||
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> fun takeVList(l: List<X>)
|
||||
override fun <E2> takeEList(l2: List<E2>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
|
||||
interface Q2<X : Any> : SLRUMap<X> {
|
||||
override fun takeV(x: X)
|
||||
override fun <E1 : Any> takeE(e: E1)
|
||||
|
||||
override fun takeVList(l: List<X>)
|
||||
override fun <E2 : Any> takeEList(l2: List<E2>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
Vendored
+38
@@ -0,0 +1,38 @@
|
||||
// !SKIP_JAVAC
|
||||
// !LANGUAGE: -ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
|
||||
// FILE: SLRUMap.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
public interface SLRUMap<V> {
|
||||
void takeV(@NotNull V value);
|
||||
<E> void takeE(@NotNull E value);
|
||||
|
||||
void takeVList(@NotNull List<@NotNull V> value);
|
||||
<E> void takeEList(@NotNull List<@NotNull E> value);
|
||||
|
||||
public <K> K id(K value) { return null; }
|
||||
}
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
interface Q1<X> : SLRUMap<X> {
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun takeV(x: X)
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun <E1> takeE(e: E1)
|
||||
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun takeVList(l: List<X>)
|
||||
<!WRONG_NULLABILITY_FOR_JAVA_OVERRIDE!>override<!> fun <E2> takeEList(l2: List<E2>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
|
||||
interface Q2<X : Any> : SLRUMap<X> {
|
||||
override fun takeV(x: X)
|
||||
override fun <E1 : Any> takeE(e: E1)
|
||||
|
||||
override fun takeVList(l: List<X>)
|
||||
override fun <E2 : Any> takeEList(l2: List<E2>)
|
||||
|
||||
override fun <K2> id(k2: K2): K2
|
||||
}
|
||||
Vendored
+34
@@ -0,0 +1,34 @@
|
||||
package
|
||||
|
||||
public interface Q1</*0*/ X> : SLRUMap<X> {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public abstract override /*1*/ fun </*0*/ K2> id(/*0*/ k2: K2): K2
|
||||
public abstract override /*1*/ fun </*0*/ E1> takeE(/*0*/ e: E1): kotlin.Unit
|
||||
public abstract override /*1*/ fun </*0*/ E2> takeEList(/*0*/ l2: kotlin.collections.List<E2>): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeV(/*0*/ x: X): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeVList(/*0*/ l: kotlin.collections.List<X>): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public interface Q2</*0*/ X : kotlin.Any> : SLRUMap<X> {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public abstract override /*1*/ fun </*0*/ K2> id(/*0*/ k2: K2): K2
|
||||
public abstract override /*1*/ fun </*0*/ E1 : kotlin.Any> takeE(/*0*/ e: E1): kotlin.Unit
|
||||
public abstract override /*1*/ fun </*0*/ E2 : kotlin.Any> takeEList(/*0*/ l2: kotlin.collections.List<E2>): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeV(/*0*/ x: X): kotlin.Unit
|
||||
public abstract override /*1*/ fun takeVList(/*0*/ l: kotlin.collections.List<X>): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public interface SLRUMap</*0*/ V : kotlin.Any!> {
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public abstract fun </*0*/ K : kotlin.Any!> id(/*0*/ value: K!): K!
|
||||
public abstract fun </*0*/ E : kotlin.Any!> takeE(/*0*/ @org.jetbrains.annotations.NotNull value: E): kotlin.Unit
|
||||
public abstract fun </*0*/ E : kotlin.Any!> takeEList(/*0*/ @org.jetbrains.annotations.NotNull value: kotlin.collections.(Mutable)List<@org.jetbrains.annotations.NotNull E>): kotlin.Unit
|
||||
public abstract fun takeV(/*0*/ @org.jetbrains.annotations.NotNull value: V): kotlin.Unit
|
||||
public abstract fun takeVList(/*0*/ @org.jetbrains.annotations.NotNull value: kotlin.collections.(Mutable)List<@org.jetbrains.annotations.NotNull V>): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Reference in New Issue
Block a user