From 877fdfbcfaeadc46b969533755bc09c8df346bcb Mon Sep 17 00:00:00 2001 From: Jossi Wolf Date: Wed, 5 May 2021 19:09:02 +0200 Subject: [PATCH 1/2] Expose NamedNavArgument's `name`, `argument` and destructuring functions as public Test: N/A Fixes: b/181320559 Change-Id: I744feff9aca40e910c622f0c61a39a005e5f6f68 --- navigation/navigation-compose/api/current.txt | 6 ++++++ .../api/public_plus_experimental_current.txt | 6 ++++++ navigation/navigation-compose/api/restricted_current.txt | 6 ++++++ .../java/androidx/navigation/compose/NamedNavArgument.kt | 8 ++++---- 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/navigation/navigation-compose/api/current.txt b/navigation/navigation-compose/api/current.txt index 3e486ebe0a613..cacdf0924cd16 100644 --- a/navigation/navigation-compose/api/current.txt +++ b/navigation/navigation-compose/api/current.txt @@ -11,6 +11,12 @@ package androidx.navigation.compose { } public final class NamedNavArgument { + method public operator String component1(); + method public operator androidx.navigation.NavArgument component2(); + method public androidx.navigation.NavArgument getArgument(); + method public String getName(); + property public final androidx.navigation.NavArgument argument; + property public final String name; } public final class NamedNavArgumentKt { diff --git a/navigation/navigation-compose/api/public_plus_experimental_current.txt b/navigation/navigation-compose/api/public_plus_experimental_current.txt index 3e486ebe0a613..cacdf0924cd16 100644 --- a/navigation/navigation-compose/api/public_plus_experimental_current.txt +++ b/navigation/navigation-compose/api/public_plus_experimental_current.txt @@ -11,6 +11,12 @@ package androidx.navigation.compose { } public final class NamedNavArgument { + method public operator String component1(); + method public operator androidx.navigation.NavArgument component2(); + method public androidx.navigation.NavArgument getArgument(); + method public String getName(); + property public final androidx.navigation.NavArgument argument; + property public final String name; } public final class NamedNavArgumentKt { diff --git a/navigation/navigation-compose/api/restricted_current.txt b/navigation/navigation-compose/api/restricted_current.txt index 3e486ebe0a613..cacdf0924cd16 100644 --- a/navigation/navigation-compose/api/restricted_current.txt +++ b/navigation/navigation-compose/api/restricted_current.txt @@ -11,6 +11,12 @@ package androidx.navigation.compose { } public final class NamedNavArgument { + method public operator String component1(); + method public operator androidx.navigation.NavArgument component2(); + method public androidx.navigation.NavArgument getArgument(); + method public String getName(); + property public final androidx.navigation.NavArgument argument; + property public final String name; } public final class NamedNavArgumentKt { diff --git a/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt b/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt index 3589239d84e2b..5020ac4fee896 100644 --- a/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt +++ b/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt @@ -33,9 +33,9 @@ public fun navArgument( * Construct a named [NavArgument] by using the [navArgument] method. */ public class NamedNavArgument internal constructor( - private val name: String, - private val argument: NavArgument + public val name: String, + public val argument: NavArgument ) { - internal operator fun component1(): String = name - internal operator fun component2(): NavArgument = argument + public operator fun component1(): String = name + public operator fun component2(): NavArgument = argument } From 4343fabab030f5a754d104eacf8fc4f2b8e0087c Mon Sep 17 00:00:00 2001 From: Jossi Wolf Date: Wed, 5 May 2021 20:03:57 +0200 Subject: [PATCH 2/2] Add KDocs Change-Id: Ib39ef30c9053487aaa1ebee52733ffdc32a15588 --- .../navigation/compose/NamedNavArgument.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt b/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt index 5020ac4fee896..988c7c2dd5886 100644 --- a/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt +++ b/navigation/navigation-compose/src/main/java/androidx/navigation/compose/NamedNavArgument.kt @@ -33,9 +33,24 @@ public fun navArgument( * Construct a named [NavArgument] by using the [navArgument] method. */ public class NamedNavArgument internal constructor( + + /** + * The name the argument is associated with + */ public val name: String, + + /** + * The [NavArgument] associated with the name + */ public val argument: NavArgument ) { + /** + * Provides destructuring access to this [NamedNavArgument]'s [name] + */ public operator fun component1(): String = name + + /** + * Provides destructuring access to this [NamedNavArgument]'s [argument] + */ public operator fun component2(): NavArgument = argument }