Skip to content

Commit

Permalink
[J2KT] Update NullabilityConversion readable with lower-bound to simp…
Browse files Browse the repository at this point in the history
…le type conversion cases.

PiperOrigin-RevId: 681073968
  • Loading branch information
Googler authored and copybara-github committed Oct 1, 2024
1 parent 8676983 commit ac1e581
Show file tree
Hide file tree
Showing 3 changed files with 106 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -58,20 +58,40 @@ public static Parent nonNullToNonNull(Child it) {
}

public static class UpperWildcardToSimple {
public static @Nullable Parent nullableToNullable(Supplier<? extends @Nullable Child> it) {
return it.get();
public static @Nullable Parent nullableToNullable(
Supplier<? extends @Nullable Child> supplier) {
return supplier.get();
}

public static Parent nullableToNonNull(Supplier<? extends @Nullable Child> it) {
return it.get();
public static Parent nullableToNonNull(Supplier<? extends @Nullable Child> supplier) {
return supplier.get();
}

public static @Nullable Parent nonNullToNullable(Supplier<? extends Child> it) {
return it.get();
public static @Nullable Parent nonNullToNullable(Supplier<? extends Child> supplier) {
return supplier.get();
}

public static Parent nonNullToNonNull(Supplier<? extends Child> it) {
return it.get();
public static Parent nonNullToNonNull(Supplier<? extends Child> supplier) {
return supplier.get();
}
}

public static class LowerWildcardToSimple {
public static @Nullable Parent nullableToNullable(
Supplier<? super @Nullable Child> supplier) {
return supplier.get();
}

public static Parent nullableToNonNull(Supplier<? super @Nullable Child> supplier) {
return supplier.get();
}

public static @Nullable Parent nonNullToNullable(Supplier<? super Child> supplier) {
return supplier.get();
}

public static Parent nonNullToNonNull(Supplier<? super Child> supplier) {
return supplier.get();
}
}

Expand Down Expand Up @@ -316,7 +336,7 @@ public static Generic<? super Child> nonNullToNonNull(Generic<Parent> it) {

public static class SimpleUpperWildcardToUpperWildcard {
public static Generic<? extends @Nullable Parent> nullableToNullable(
Generic<? super @Nullable Child> it) {
Generic<? extends @Nullable Child> it) {
return it;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
@class J2ktJ2ktNullabilityConversion;
@class J2ktJ2ktNullabilityConversion_Tests;
@class J2ktJ2ktNullabilityConversion_Tests_Types;
@class J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple;
@class J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion;
@class J2ktJ2ktNullabilityConversion_Tests_Types_SimpleToLowerWildcard;
@class J2ktJ2ktNullabilityConversion_Tests_Types_SimpleToLowerWildcardCompanion;
@class J2ktJ2ktNullabilityConversion_Tests_Types_SimpleToSimple;
Expand Down Expand Up @@ -91,20 +93,40 @@ NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tes

@compatibility_alias J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion;

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> _Nullable J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nullableToNullableWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> it) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nullableToNullableWithJ2ktNullabilityConversion_Supplier:it];
NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> _Nullable J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nullableToNullableWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nullableToNullableWithJ2ktNullabilityConversion_Supplier:supplier];
}

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nullableToNonNullWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> it) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nullableToNonNullWithJ2ktNullabilityConversion_Supplier:it];
NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nullableToNonNullWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nullableToNonNullWithJ2ktNullabilityConversion_Supplier:supplier];
}

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> _Nullable J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nonNullToNullableWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> it) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nonNullToNullableWithJ2ktNullabilityConversion_Supplier:it];
NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> _Nullable J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nonNullToNullableWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nonNullToNullableWithJ2ktNullabilityConversion_Supplier:supplier];
}

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nonNullToNonNullWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> it) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nonNullToNonNullWithJ2ktNullabilityConversion_Supplier:it];
NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tests_Types_UpperWildcardToSimple_nonNullToNonNullWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_UpperWildcardToSimpleCompanion.shared nonNullToNonNullWithJ2ktNullabilityConversion_Supplier:supplier];
}

@compatibility_alias J2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple;

@compatibility_alias J2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion;

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> _Nullable J2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple_nullableToNullableWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion.shared nullableToNullableWithJ2ktNullabilityConversion_Supplier:supplier];
}

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple_nullableToNonNullWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion.shared nullableToNonNullWithJ2ktNullabilityConversion_Supplier:supplier];
}

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> _Nullable J2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple_nonNullToNullableWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion.shared nonNullToNullableWithJ2ktNullabilityConversion_Supplier:supplier];
}

NS_INLINE id<J2ktJ2ktNullabilityConversion_Parent> J2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple_nonNullToNonNullWithJ2ktNullabilityConversion_Supplier_(id<J2ktJ2ktNullabilityConversion_Supplier> supplier) {
return [J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion.shared nonNullToNonNullWithJ2ktNullabilityConversion_Supplier:supplier];
}

@compatibility_alias J2ktNullabilityConversion_Tests_Types_SimpleToLowerWildcard J2ktJ2ktNullabilityConversion_Tests_Types_SimpleToLowerWildcard;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,33 +99,71 @@ open class NullabilityConversion {
@JvmStatic
@ObjCName("nullableToNullable")
fun nullableToNullable(
@ObjCName("withJ2ktNullabilityConversion_Supplier") it: NullabilityConversion.Supplier<*>
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<*>
): NullabilityConversion.Parent? {
return supplier.get()
}

@JvmStatic
@ObjCName("nullableToNonNull")
fun nullableToNonNull(
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<*>
): NullabilityConversion.Parent {
return supplier.get()!!
}

@JvmStatic
@ObjCName("nonNullToNullable")
fun nonNullToNullable(
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<out NullabilityConversion.Child>
): NullabilityConversion.Parent? {
return supplier.get()
}

@JvmStatic
@ObjCName("nonNullToNonNull")
fun nonNullToNonNull(
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<out NullabilityConversion.Child>
): NullabilityConversion.Parent {
return supplier.get()
}
}
}

@ObjCName("J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimple", exact = true)
open class LowerWildcardToSimple {
@ObjCName("J2ktJ2ktNullabilityConversion_Tests_Types_LowerWildcardToSimpleCompanion", exact = true)
companion object {
@JvmStatic
@ObjCName("nullableToNullable")
fun nullableToNullable(
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<in NullabilityConversion.Child?>
): NullabilityConversion.Parent? {
return it.get()
return supplier.get() as NullabilityConversion.Parent?
}

@JvmStatic
@ObjCName("nullableToNonNull")
fun nullableToNonNull(
@ObjCName("withJ2ktNullabilityConversion_Supplier") it: NullabilityConversion.Supplier<*>
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<in NullabilityConversion.Child?>
): NullabilityConversion.Parent {
return it.get()!!
return supplier.get()!! as NullabilityConversion.Parent
}

@JvmStatic
@ObjCName("nonNullToNullable")
fun nonNullToNullable(
@ObjCName("withJ2ktNullabilityConversion_Supplier") it: NullabilityConversion.Supplier<out NullabilityConversion.Child>
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<in NullabilityConversion.Child>
): NullabilityConversion.Parent? {
return it.get()
return supplier.get() as NullabilityConversion.Parent?
}

@JvmStatic
@ObjCName("nonNullToNonNull")
fun nonNullToNonNull(
@ObjCName("withJ2ktNullabilityConversion_Supplier") it: NullabilityConversion.Supplier<out NullabilityConversion.Child>
@ObjCName("withJ2ktNullabilityConversion_Supplier") supplier: NullabilityConversion.Supplier<in NullabilityConversion.Child>
): NullabilityConversion.Parent {
return it.get()
return supplier.get()!! as NullabilityConversion.Parent
}
}
}
Expand Down Expand Up @@ -538,7 +576,7 @@ open class NullabilityConversion {
@JvmStatic
@ObjCName("nullableToNullable")
fun nullableToNullable(
@ObjCName("withJ2ktNullabilityConversion_Generic") it: NullabilityConversion.Generic<in NullabilityConversion.Child?>
@ObjCName("withJ2ktNullabilityConversion_Generic") it: NullabilityConversion.Generic<out NullabilityConversion.Child?>
): NullabilityConversion.Generic<*> {
return it
}
Expand Down

0 comments on commit ac1e581

Please sign in to comment.