From ffff805bb6f4b58b8f7a2f0460e3524705edfade Mon Sep 17 00:00:00 2001 From: Chris Date: Fri, 25 Nov 2022 16:57:15 -0600 Subject: [PATCH] Generated updated documentation --- docs/package-list | 59 ++++-- .../-compose-layout.md | 14 +- .../-layout/-content.md | 14 +- .../-layout/index.md | 39 ++-- .../-layout/is-bound.md | 2 +- .../-layout/render-state.md | 2 +- .../index.md | 10 +- .../layout.md | 7 +- .../unary-plus.md | 20 +- .../-compose-fragment/-content.md | 2 +- .../compose-view-initializer.md | 2 +- .../-compose-fragment/index.md | 196 +++++------------ .../-compose-layout-scope/index.md | 19 ++ .../-compose-layout-scope/intent.md | 6 + .../-compose-layout-scope/state-changes.md | 9 + .../-compose-layout.md | 9 + .../-local-view-model-provider.md | 6 + .../index.md | 6 - .../com.chrynan.presentation.compose/index.md | 13 +- .../remember-view-model.md | 9 + .../state-changes.md | 42 ++-- .../com.chrynan.presentation/-action/index.md | 6 +- .../-action/perform.md | 4 +- .../-basic-state-store/index.md | 8 +- .../com.chrynan.presentation/-change/index.md | 18 +- .../-delegating-view-model/index.md | 16 +- .../com.chrynan.presentation/-event/index.md | 2 +- .../-flat-map-strategy/-concat/index.md | 8 +- .../-flat-map-strategy/-latest/index.md | 8 +- .../-flat-map-strategy/-merge/index.md | 10 +- .../-flat-map-strategy/index.md | 2 +- .../com.chrynan.presentation/-intent/index.md | 18 +- .../-mutable-state-store/index.md | 34 +++ .../-mutable-state-store/reset.md | 6 + .../update-current-state.md | 6 + .../update-last-change.md | 6 + .../update-last-intent.md | 6 + .../-platform-view-model/index.md | 26 +++ .../-presentation-fragment/index.md | 200 +++++------------- .../-reducer/index.md | 2 +- .../-state-store/index.md | 13 +- .../com.chrynan.presentation/-state/index.md | 28 +-- .../-view-data/index.md | 2 +- .../-view-model-factory/create.md | 6 + .../-view-model-factory/index.md | 30 +-- .../-view-model-flow-scope/index.md | 23 ++ .../-view-model-flow-scope/perform-with.md | 9 + .../-view-model-flow-scope/perform.md | 9 + .../-view-model-flow-scope/reduce-with.md | 6 + .../-view-model-flow-scope/reduce.md | 6 + .../-view-model-flow-scope/render.md | 6 + .../start-with-initial-state.md | 6 + .../-view-model-provider.md | 8 + .../-view-model-provider/-companion/index.md | 6 + .../-view-model-provider/get.md | 6 + .../-view-model-provider/index.md | 25 +++ .../com.chrynan.presentation/-view-model.md | 24 ++- .../-view-model/-view-model.md | 2 +- .../-view-model/bind.md | 2 +- .../-view-model/index.md | 16 +- .../-view-model/perform-with.md | 8 + .../-view-model/perform.md | 8 + .../-view-model/reduce-with.md | 8 + .../-view-model/reduce.md | 8 + .../-view-model/render.md | 8 + .../-view-model/start-with-initial-state.md | 8 + .../-view-model/unbind.md | 2 +- .../create-or-null.md | 8 + .../com.chrynan.presentation/create.md | 16 ++ .../com.chrynan.presentation/flat-map.md | 16 +- .../com.chrynan.presentation/get-or-null.md | 8 + .../com.chrynan.presentation/get.md | 6 + .../com.chrynan.presentation/index.md | 26 ++- 73 files changed, 722 insertions(+), 513 deletions(-) create mode 100644 docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/index.md create mode 100644 docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/intent.md create mode 100644 docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/state-changes.md create mode 100644 docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout.md create mode 100644 docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-local-view-model-provider.md create mode 100644 docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/remember-view-model.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/index.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/reset.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-current-state.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-change.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-intent.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-platform-view-model/index.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/create.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/index.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform-with.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce-with.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/render.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/start-with-initial-state.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/-companion/index.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/get.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform-with.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce-with.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/render.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/start-with-initial-state.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/create-or-null.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/create.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/get-or-null.md create mode 100644 docs/presentation-core/presentation-core/com.chrynan.presentation/get.md diff --git a/docs/package-list b/docs/package-list index df61a43..139306e 100644 --- a/docs/package-list +++ b/docs/package-list @@ -2,7 +2,6 @@ $dokka.format:gfm-v1 $dokka.linkExtension:md $dokka.location:com.chrynan.presentation.compose.layout////PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/index.md $dokka.location:com.chrynan.presentation.compose.layout//ComposeLayout/#com.chrynan.presentation.compose.layout.Layout[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-compose-layout.md -$dokka.location:com.chrynan.presentation.compose.layout//layout/#kotlin.Any?#com.chrynan.presentation.ViewModelFactory[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#kotlin.Function0[kotlin.Unit]/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/layout.md $dokka.location:com.chrynan.presentation.compose.layout//layout/#kotlin.Any?#com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#kotlin.Function0[kotlin.Unit]/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/layout.md $dokka.location:com.chrynan.presentation.compose.layout//unaryPlus/com.chrynan.presentation.compose.layout.Layout[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/unary-plus.md $dokka.location:com.chrynan.presentation.compose.layout/Layout///PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/index.md @@ -18,29 +17,39 @@ $dokka.location:com.chrynan.presentation.compose.layout/Layout/toString/#/Pointi $dokka.location:com.chrynan.presentation.compose.layout/Layout/unbind/#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/unbind.md $dokka.location:com.chrynan.presentation.compose.layout/Layout/viewModel/#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/view-model.md $dokka.location:com.chrynan.presentation.compose////PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/index.md +$dokka.location:com.chrynan.presentation.compose//ComposeLayout/#com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#androidx.compose.ui.Modifier#kotlin.Function1[com.chrynan.presentation.compose.ComposeLayoutScope[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])],kotlin.Unit]#kotlin.Function1[com.chrynan.presentation.compose.ComposeLayoutScope[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])],kotlin.Unit]#kotlin.Function1[com.chrynan.presentation.compose.ComposeLayoutScope[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])],kotlin.Unit]/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout.md +$dokka.location:com.chrynan.presentation.compose//LocalViewModelProvider/#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-local-view-model-provider.md +$dokka.location:com.chrynan.presentation.compose//rememberViewModel/#kotlin.Any?/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/remember-view-model.md $dokka.location:com.chrynan.presentation.compose//stateChanges/com.chrynan.presentation.View[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#TypeParam(bounds=[com.chrynan.presentation.State])?#kotlin.coroutines.CoroutineContext/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md $dokka.location:com.chrynan.presentation.compose//stateChanges/com.chrynan.presentation.View[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#kotlin.coroutines.CoroutineContext/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md +$dokka.location:com.chrynan.presentation.compose//stateChanges/com.chrynan.presentation.compose.ComposeLayoutScope[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])]#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md $dokka.location:com.chrynan.presentation.compose/ComposeFragment///PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/index.md $dokka.location:com.chrynan.presentation.compose/ComposeFragment/ComposeFragment/#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/-compose-fragment.md $dokka.location:com.chrynan.presentation.compose/ComposeFragment/Content/#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/-content.md $dokka.location:com.chrynan.presentation.compose/ComposeFragment/composeViewInitializer/androidx.compose.ui.platform.ComposeView#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/compose-view-initializer.md $dokka.location:com.chrynan.presentation.compose/ComposeFragment/onCreateView/#android.view.LayoutInflater#android.view.ViewGroup?#android.os.Bundle?/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/on-create-view.md +$dokka.location:com.chrynan.presentation.compose/ComposeLayoutScope///PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/index.md +$dokka.location:com.chrynan.presentation.compose/ComposeLayoutScope/intent/#TypeParam(bounds=[com.chrynan.presentation.Intent])/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/intent.md +$dokka.location:com.chrynan.presentation.compose/ComposeLayoutScope/stateChanges/#kotlin.coroutines.CoroutineContext/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/state-changes.md $dokka.location:com.chrynan.presentation.compose/PresentationComposeExperimentalApi///PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-presentation-compose-experimental-api/index.md -$dokka.location:com.chrynan.presentation.compose/PresentationComposeExperimentalApi/PresentationComposeExperimentalApi/#/PointingToDeclaration/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-presentation-compose-experimental-api/-presentation-compose-experimental-api.md $dokka.location:com.chrynan.presentation////PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/index.md $dokka.location:com.chrynan.presentation//ViewModel/#TypeParam(bounds=[com.chrynan.presentation.State])?#com.chrynan.dispatchers.CoroutineDispatchers#kotlin.Function1[com.chrynan.presentation.DelegatingViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])],kotlin.Unit]?#kotlin.Function1[com.chrynan.presentation.DelegatingViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])],kotlin.Unit]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model.md $dokka.location:com.chrynan.presentation//ViewModel/#TypeParam(bounds=[com.chrynan.presentation.State])?#com.chrynan.dispatchers.CoroutineDispatchers#kotlin.Function1[com.chrynan.presentation.DelegatingViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])],kotlin.Unit]?#kotlin.Function1[com.chrynan.presentation.DelegatingViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])],kotlin.Unit]?#kotlin.Function0[kotlin.Unit]?#kotlin.Boolean#com.chrynan.presentation.FlatMapStrategy#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])?,kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]]#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.State])?,TypeParam(bounds=[com.chrynan.presentation.Change]),TypeParam(bounds=[com.chrynan.presentation.State])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model.md +$dokka.location:com.chrynan.presentation//ViewModelProvider/#com.chrynan.presentation.ViewModelFactory/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider.md $dokka.location:com.chrynan.presentation//asUniqueId/TypeParam(bounds=[kotlin.Any])#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/as-unique-id.md +$dokka.location:com.chrynan.presentation//create/com.chrynan.presentation.Action[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#TypeParam(bounds=[com.chrynan.presentation.Intent])#TypeParam(bounds=[com.chrynan.presentation.State])?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/create.md +$dokka.location:com.chrynan.presentation//create/com.chrynan.presentation.Reducer[TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#TypeParam(bounds=[com.chrynan.presentation.State])?#TypeParam(bounds=[com.chrynan.presentation.Change])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/create.md +$dokka.location:com.chrynan.presentation//create/com.chrynan.presentation.ViewModelFactory#kotlin.Array[kotlin.Any?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/create.md +$dokka.location:com.chrynan.presentation//createOrNull/com.chrynan.presentation.ViewModelFactory#kotlin.Array[kotlin.Any?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/create-or-null.md +$dokka.location:com.chrynan.presentation//createOrNull/com.chrynan.presentation.ViewModelFactory#kotlin.reflect.KClass[TypeParam(bounds=[com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]])]#kotlin.Array[kotlin.Any?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/create-or-null.md $dokka.location:com.chrynan.presentation//flatMap/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[kotlin.Any?])]#com.chrynan.presentation.FlatMapStrategy#kotlin.coroutines.SuspendFunction1[TypeParam(bounds=[kotlin.Any?]),kotlinx.coroutines.flow.Flow[TypeParam(bounds=[kotlin.Any?])]]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/flat-map.md +$dokka.location:com.chrynan.presentation//get/com.chrynan.presentation.ViewModelProvider#kotlin.String?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/get.md +$dokka.location:com.chrynan.presentation//getOrNull/com.chrynan.presentation.ViewModelProvider#kotlin.String?#kotlin.reflect.KClass[TypeParam(bounds=[com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/get-or-null.md +$dokka.location:com.chrynan.presentation//getOrNull/com.chrynan.presentation.ViewModelProvider#kotlin.String?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/get-or-null.md $dokka.location:com.chrynan.presentation//intent/com.chrynan.presentation.View[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#TypeParam(bounds=[com.chrynan.presentation.Intent])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/intent.md -$dokka.location:com.chrynan.presentation//invoke/com.chrynan.presentation.Action[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#TypeParam(bounds=[com.chrynan.presentation.Intent])#TypeParam(bounds=[com.chrynan.presentation.State])?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/invoke.md -$dokka.location:com.chrynan.presentation//invoke/com.chrynan.presentation.Reducer[TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]#TypeParam(bounds=[com.chrynan.presentation.State])?#TypeParam(bounds=[com.chrynan.presentation.Change])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/invoke.md -$dokka.location:com.chrynan.presentation//viewModelFactory/#kotlin.Boolean#com.chrynan.presentation.ViewModelFactory[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/view-model-factory.md -$dokka.location:com.chrynan.presentation//viewModelFactory/#kotlin.Boolean#kotlin.Function0[com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/view-model-factory.md $dokka.location:com.chrynan.presentation/Action.Companion///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-action/-companion/index.md $dokka.location:com.chrynan.presentation/Action///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-action/index.md $dokka.location:com.chrynan.presentation/Action/perform/#TypeParam(bounds=[com.chrynan.presentation.Intent])#TypeParam(bounds=[com.chrynan.presentation.State])?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-action/perform.md -$dokka.location:com.chrynan.presentation/BaseViewModel///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-base-view-model/index.md $dokka.location:com.chrynan.presentation/BasicStateStore///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/index.md $dokka.location:com.chrynan.presentation/BasicStateStore/BasicStateStore/#TypeParam(bounds=[com.chrynan.presentation.State])?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/-basic-state-store.md $dokka.location:com.chrynan.presentation/BasicStateStore/changes/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/changes.md @@ -60,12 +69,6 @@ $dokka.location:com.chrynan.presentation/Bindable/unbind/#/PointingToDeclaration $dokka.location:com.chrynan.presentation/Change.Companion///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-change/-companion/index.md $dokka.location:com.chrynan.presentation/Change///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-change/index.md $dokka.location:com.chrynan.presentation/DelegatingViewModel///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/index.md -$dokka.location:com.chrynan.presentation/DelegatingViewModel/perform/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Intent])]#com.chrynan.presentation.FlatMapStrategy#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])?,kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/perform.md -$dokka.location:com.chrynan.presentation/DelegatingViewModel/performWith/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Intent])]#com.chrynan.presentation.FlatMapStrategy#com.chrynan.presentation.Action[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/perform-with.md -$dokka.location:com.chrynan.presentation/DelegatingViewModel/reduce/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.State])?,TypeParam(bounds=[com.chrynan.presentation.Change]),TypeParam(bounds=[com.chrynan.presentation.State])?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/reduce.md -$dokka.location:com.chrynan.presentation/DelegatingViewModel/reduceWith/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]#com.chrynan.presentation.Reducer[TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/reduce-with.md -$dokka.location:com.chrynan.presentation/DelegatingViewModel/render/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.State])?]#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/render.md -$dokka.location:com.chrynan.presentation/DelegatingViewModel/startWithInitialState/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.State])?]#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/start-with-initial-state.md $dokka.location:com.chrynan.presentation/Event///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-event/index.md $dokka.location:com.chrynan.presentation/Event/Event/#TypeParam(bounds=[kotlin.Any?])#kotlin.time.Duration/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-event/-event.md $dokka.location:com.chrynan.presentation/Event/elapsedSystemTime/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-event/elapsed-system-time.md @@ -78,6 +81,12 @@ $dokka.location:com.chrynan.presentation/FlatMapStrategy.Merge/limit/#/PointingT $dokka.location:com.chrynan.presentation/FlatMapStrategy///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/index.md $dokka.location:com.chrynan.presentation/Intent.Companion///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-intent/-companion/index.md $dokka.location:com.chrynan.presentation/Intent///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md +$dokka.location:com.chrynan.presentation/MutableStateStore///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/index.md +$dokka.location:com.chrynan.presentation/MutableStateStore/reset/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/reset.md +$dokka.location:com.chrynan.presentation/MutableStateStore/updateCurrentState/#TypeParam(bounds=[com.chrynan.presentation.State])?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-current-state.md +$dokka.location:com.chrynan.presentation/MutableStateStore/updateLastChange/#TypeParam(bounds=[com.chrynan.presentation.Change])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-change.md +$dokka.location:com.chrynan.presentation/MutableStateStore/updateLastIntent/#TypeParam(bounds=[com.chrynan.presentation.Intent])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-intent.md +$dokka.location:com.chrynan.presentation/PlatformViewModel///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-platform-view-model/index.md $dokka.location:com.chrynan.presentation/PresentationFragment///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md $dokka.location:com.chrynan.presentation/PresentationFragment/PresentationFragment/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/-presentation-fragment.md $dokka.location:com.chrynan.presentation/PresentationFragment/onDestroyView/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/on-destroy-view.md @@ -107,11 +116,7 @@ $dokka.location:com.chrynan.presentation/StateStore/intents/#/PointingToDeclarat $dokka.location:com.chrynan.presentation/StateStore/isPendingStateUpdate/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/is-pending-state-update.md $dokka.location:com.chrynan.presentation/StateStore/lastChange/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/last-change.md $dokka.location:com.chrynan.presentation/StateStore/lastIntent/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/last-intent.md -$dokka.location:com.chrynan.presentation/StateStore/reset/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/reset.md $dokka.location:com.chrynan.presentation/StateStore/states/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/states.md -$dokka.location:com.chrynan.presentation/StateStore/updateCurrentState/#TypeParam(bounds=[com.chrynan.presentation.State])?/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/update-current-state.md -$dokka.location:com.chrynan.presentation/StateStore/updateLastChange/#TypeParam(bounds=[com.chrynan.presentation.Change])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/update-last-change.md -$dokka.location:com.chrynan.presentation/StateStore/updateLastIntent/#TypeParam(bounds=[com.chrynan.presentation.Intent])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-state-store/update-last-intent.md $dokka.location:com.chrynan.presentation/View.Companion///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view/-companion/index.md $dokka.location:com.chrynan.presentation/View///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view/index.md $dokka.location:com.chrynan.presentation/View/renderState/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view/render-state.md @@ -120,18 +125,34 @@ $dokka.location:com.chrynan.presentation/ViewData.Companion///PointingToDeclarat $dokka.location:com.chrynan.presentation/ViewData///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-data/index.md $dokka.location:com.chrynan.presentation/ViewData/uniqueId/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-data/unique-id.md $dokka.location:com.chrynan.presentation/ViewModel///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md -$dokka.location:com.chrynan.presentation/ViewModel/ViewModel/#TypeParam(bounds=[com.chrynan.presentation.State])?#com.chrynan.dispatchers.CoroutineDispatchers/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/-view-model.md +$dokka.location:com.chrynan.presentation/ViewModel/ViewModel/#TypeParam(bounds=[com.chrynan.presentation.State])?#com.chrynan.dispatchers.CoroutineDispatchers#kotlin.Boolean/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/-view-model.md $dokka.location:com.chrynan.presentation/ViewModel/bind/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/bind.md $dokka.location:com.chrynan.presentation/ViewModel/coroutineScope/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/coroutine-scope.md $dokka.location:com.chrynan.presentation/ViewModel/currentState/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/current-state.md $dokka.location:com.chrynan.presentation/ViewModel/intent/#TypeParam(bounds=[com.chrynan.presentation.Intent])/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/intent.md $dokka.location:com.chrynan.presentation/ViewModel/intents/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/intents.md $dokka.location:com.chrynan.presentation/ViewModel/isBound/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/is-bound.md +$dokka.location:com.chrynan.presentation/ViewModel/perform/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Intent])]#com.chrynan.presentation.FlatMapStrategy#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])?,kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform.md +$dokka.location:com.chrynan.presentation/ViewModel/performWith/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Intent])]#com.chrynan.presentation.FlatMapStrategy#com.chrynan.presentation.Action[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform-with.md +$dokka.location:com.chrynan.presentation/ViewModel/reduce/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.State])?,TypeParam(bounds=[com.chrynan.presentation.Change]),TypeParam(bounds=[com.chrynan.presentation.State])?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce.md +$dokka.location:com.chrynan.presentation/ViewModel/reduceWith/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]#com.chrynan.presentation.Reducer[TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce-with.md +$dokka.location:com.chrynan.presentation/ViewModel/render/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.State])?]#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/render.md $dokka.location:com.chrynan.presentation/ViewModel/renderStates/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/render-states.md +$dokka.location:com.chrynan.presentation/ViewModel/startWithInitialState/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.State])?]#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/start-with-initial-state.md $dokka.location:com.chrynan.presentation/ViewModel/unbind/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model/unbind.md $dokka.location:com.chrynan.presentation/ViewModelFactory.Companion///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/-companion/index.md $dokka.location:com.chrynan.presentation/ViewModelFactory///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md -$dokka.location:com.chrynan.presentation/ViewModelFactory/invoke/#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/invoke.md +$dokka.location:com.chrynan.presentation/ViewModelFactory/create/#kotlin.reflect.KClass[TypeParam(bounds=[com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]])]#kotlin.Array[kotlin.Any?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/create.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/index.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope/perform/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Intent])]#com.chrynan.presentation.FlatMapStrategy#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State])?,kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope/performWith/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Intent])]#com.chrynan.presentation.FlatMapStrategy#com.chrynan.presentation.Action[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform-with.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope/reduce/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]#kotlin.coroutines.SuspendFunction2[TypeParam(bounds=[com.chrynan.presentation.State])?,TypeParam(bounds=[com.chrynan.presentation.Change]),TypeParam(bounds=[com.chrynan.presentation.State])?]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope/reduceWith/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.Change])]#com.chrynan.presentation.Reducer[TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce-with.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope/render/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.State])?]#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/render.md +$dokka.location:com.chrynan.presentation/ViewModelFlowScope/startWithInitialState/kotlinx.coroutines.flow.Flow[TypeParam(bounds=[com.chrynan.presentation.State])?]#/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/start-with-initial-state.md +$dokka.location:com.chrynan.presentation/ViewModelProvider.Companion///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/-companion/index.md +$dokka.location:com.chrynan.presentation/ViewModelProvider///PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md +$dokka.location:com.chrynan.presentation/ViewModelProvider/get/#kotlin.String?#kotlin.reflect.KClass[TypeParam(bounds=[com.chrynan.presentation.ViewModel[TypeParam(bounds=[com.chrynan.presentation.Intent]),TypeParam(bounds=[com.chrynan.presentation.State]),TypeParam(bounds=[com.chrynan.presentation.Change])]])]/PointingToDeclaration/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/get.md module:presentation-compose com.chrynan.presentation.compose com.chrynan.presentation.compose.layout diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-compose-layout.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-compose-layout.md index 658497f..134d097 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-compose-layout.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-compose-layout.md @@ -4,17 +4,19 @@ [common]\ -@Composable +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) -@Stable +@[Stable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Stable.html) fun <[I](-compose-layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-compose-layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [ComposeLayout](-compose-layout.md)(layout: [Layout](-layout/index.md)<[I](-compose-layout.md), [S](-compose-layout.md), [C](-compose-layout.md)>) -Renders the provided [layout](-compose-layout.md) as a Composable. +Renders the provided [layout](-compose-layout.md) as a [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html). Example usage: -@Composable\ -fun Home {\ - ComposeLayout(homeLayout)\ +```kotlin +@Composable +fun Home { + ComposeLayout(homeLayout) } +``` diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/-content.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/-content.md index 0f198da..de1f9fb 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/-content.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/-content.md @@ -4,7 +4,7 @@ [common]\ -@Composable +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) abstract fun [Content](-content.md)() @@ -12,9 +12,11 @@ Renders the UI content for this Layout. Example usage: -@Composable\ -override fun Content() {\ - val state by stateChanges()\ -\ - Text("State = $state")\ +```kotlin +@Composable +override fun Content() { + val state by stateChanges() + + Text("State = $state") } +``` diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/index.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/index.md index 93a4d56..b8a06c2 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/index.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/index.md @@ -3,27 +3,29 @@ # Layout [common]\ -@Stable +@[Stable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Stable.html) abstract class [Layout](index.md)<[I](index.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](index.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](index.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> : [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](index.md), [S](index.md), [C](index.md)> , [Bindable](../../../../presentation-core/presentation-core/com.chrynan.presentation/-bindable/index.md) -A component that implements the [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) interface and serves as the binding between this presentation library and Jetpack Compose. Typically, [Layout](index.md)s are used to represent the "Screen" components in an application. +A component that implements the [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) interface and serves as the binding between this presentation library and Jetpack Compose. Typically, [Layout](index.md)s are used to represent the "Screen" components in an application. Example usage: -class HomeLayout : Layout<HomeIntent, HomeState, HomeChange>() {\ -\ - override val viewModel = ViewModel<I, S, C>(\ - perform = { intent, state -> ... },\ - reduce = { state, change -> ... })\ -\ - @Composable\ - override fun Content() {\ - val state by stateChanges()\ -\ - // Put Composable UI code here using the [state] value\ - }\ +```kotlin +class HomeLayout : Layout() { + + override val viewModel = ViewModel( + perform = { intent, state -> ... }, + reduce = { state, change -> ... }) + + @Composable + override fun Content() { + val state by stateChanges() + + // Put Composable UI code here using the [state] value + } } +``` ## Constructors @@ -36,7 +38,7 @@ class HomeLayout : Layout<HomeIntent, HomeState, HomeChange>() {\ | Name | Summary | |---|---| | [bind](bind.md) | [common]
override fun [bind](bind.md)() | -| [Content](-content.md) | [common]
@Composable
abstract fun [Content](-content.md)()
Renders the UI content for this Layout. | +| [Content](-content.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
abstract fun [Content](-content.md)()
Renders the UI content for this Layout. | | [equals](equals.md) | [common]
open operator override fun [equals](equals.md)(other: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [hashCode](hash-code.md) | [common]
open override fun [hashCode](hash-code.md)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [toString](to-string.md) | [common]
open override fun [toString](to-string.md)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | @@ -46,13 +48,14 @@ class HomeLayout : Layout<HomeIntent, HomeState, HomeChange>() {\ | Name | Summary | |---|---| -| [isBound](is-bound.md) | [common]
open override val [isBound](is-bound.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [isBound](is-bound.md) | [common]
override val [isBound](is-bound.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [key](key.md) | [common]
open val [key](key.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [renderState](render-state.md) | [common]
open override val [renderState](render-state.md): [S](index.md)? | +| [renderState](render-state.md) | [common]
override val [renderState](render-state.md): [S](index.md)? | | [viewModel](view-model.md) | [common]
abstract override val [viewModel](view-model.md): [ViewModel](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](index.md), [S](index.md), [C](index.md)> | ## Extensions | Name | Summary | |---|---| -| [unaryPlus](../unary-plus.md) | [common]
@Composable
inline operator fun <[I](../unary-plus.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../unary-plus.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](../unary-plus.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [Layout](index.md)<[I](../unary-plus.md), [S](../unary-plus.md), [C](../unary-plus.md)>.[unaryPlus](../unary-plus.md)()
Lays out the provided [layout](../layout.md) as a Composable. | +| [stateChanges](../../com.chrynan.presentation.compose/state-changes.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](../../com.chrynan.presentation.compose/state-changes.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../../com.chrynan.presentation.compose/state-changes.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](../../com.chrynan.presentation.compose/state-changes.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](../../com.chrynan.presentation.compose/state-changes.md), [S](../../com.chrynan.presentation.compose/state-changes.md), [C](../../com.chrynan.presentation.compose/state-changes.md)>.[stateChanges](../../com.chrynan.presentation.compose/state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](../../com.chrynan.presentation.compose/state-changes.md)?>
Obtains the changes to the underlying [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed.
[common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](../../com.chrynan.presentation.compose/state-changes.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../../com.chrynan.presentation.compose/state-changes.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](../../com.chrynan.presentation.compose/state-changes.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](../../com.chrynan.presentation.compose/state-changes.md), [S](../../com.chrynan.presentation.compose/state-changes.md), [C](../../com.chrynan.presentation.compose/state-changes.md)>.[stateChanges](../../com.chrynan.presentation.compose/state-changes.md)(initial: [S](../../com.chrynan.presentation.compose/state-changes.md)?, context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](../../com.chrynan.presentation.compose/state-changes.md)?>
Obtains the changes to the underlying [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), starting with the provided [initial](../../com.chrynan.presentation.compose/state-changes.md) value, as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed. | +| [unaryPlus](../unary-plus.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
inline operator fun <[I](../unary-plus.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../unary-plus.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](../unary-plus.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [Layout](index.md)<[I](../unary-plus.md), [S](../unary-plus.md), [C](../unary-plus.md)>.[unaryPlus](../unary-plus.md)()
Lays out the provided [layout](../layout.md) as a [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html). | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/is-bound.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/is-bound.md index ef7a355..2089bc7 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/is-bound.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/is-bound.md @@ -3,4 +3,4 @@ # isBound [common]\ -open override val [isBound](is-bound.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) +override val [isBound](is-bound.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/render-state.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/render-state.md index 5afa3a9..468de5b 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/render-state.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/-layout/render-state.md @@ -3,4 +3,4 @@ # renderState [common]\ -open override val [renderState](render-state.md): [S](index.md)? +override val [renderState](render-state.md): [S](index.md)? diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/index.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/index.md index f1afcf6..289f412 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/index.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/index.md @@ -1,17 +1,17 @@ //[presentation-compose](../../index.md)/[com.chrynan.presentation.compose.layout](index.md) -# Package com.chrynan.presentation.compose.layout +# Package-level declarations ## Types | Name | Summary | |---|---| -| [Layout](-layout/index.md) | [common]
@Stable
abstract class [Layout](-layout/index.md)<[I](-layout/index.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-layout/index.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-layout/index.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> : [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](-layout/index.md), [S](-layout/index.md), [C](-layout/index.md)> , [Bindable](../../../presentation-core/presentation-core/com.chrynan.presentation/-bindable/index.md)
A component that implements the [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) interface and serves as the binding between this presentation library and Jetpack Compose. Typically, [Layout](-layout/index.md)s are used to represent the "Screen" components in an application. | +| [Layout](-layout/index.md) | [common]
@[Stable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Stable.html)
abstract class [Layout](-layout/index.md)<[I](-layout/index.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-layout/index.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-layout/index.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> : [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](-layout/index.md), [S](-layout/index.md), [C](-layout/index.md)> , [Bindable](../../../presentation-core/presentation-core/com.chrynan.presentation/-bindable/index.md)
A component that implements the [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) interface and serves as the binding between this presentation library and Jetpack Compose. Typically, [Layout](-layout/index.md)s are used to represent the "Screen" components in an application. | ## Functions | Name | Summary | |---|---| -| [ComposeLayout](-compose-layout.md) | [common]
@Composable
@Stable
fun <[I](-compose-layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-compose-layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [ComposeLayout](-compose-layout.md)(layout: [Layout](-layout/index.md)<[I](-compose-layout.md), [S](-compose-layout.md), [C](-compose-layout.md)>)
Renders the provided [layout](-compose-layout.md) as a Composable. | -| [layout](layout.md) | [common]
inline fun <[I](layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [layout](layout.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, viewModelFactory: [ViewModelFactory](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>, noinline content: @Composable() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [Layout](-layout/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>
Creates a [Layout](-layout/index.md) with the provided [key](layout.md), [viewModelFactory](layout.md), and [content](layout.md) parameters.
[common]
inline fun <[I](layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [layout](layout.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, viewModel: [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>, noinline content: @Composable() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [Layout](-layout/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>
Creates a [Layout](-layout/index.md) with the provided [key](layout.md), [viewModel](layout.md), and [content](layout.md) parameters. | -| [unaryPlus](unary-plus.md) | [common]
@Composable
inline operator fun <[I](unary-plus.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](unary-plus.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](unary-plus.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [Layout](-layout/index.md)<[I](unary-plus.md), [S](unary-plus.md), [C](unary-plus.md)>.[unaryPlus](unary-plus.md)()
Lays out the provided [layout](layout.md) as a Composable. | +| [ComposeLayout](-compose-layout.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
@[Stable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Stable.html)
fun <[I](-compose-layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-compose-layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [ComposeLayout](-compose-layout.md)(layout: [Layout](-layout/index.md)<[I](-compose-layout.md), [S](-compose-layout.md), [C](-compose-layout.md)>)
Renders the provided [layout](-compose-layout.md) as a [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html). | +| [layout](layout.md) | [common]
inline fun <[I](layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [layout](layout.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, viewModel: [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>, noinline content: @[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [Layout](-layout/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>
Creates a [Layout](-layout/index.md) with the provided [key](layout.md), [viewModel](layout.md), and [content](layout.md) parameters. | +| [unaryPlus](unary-plus.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
inline operator fun <[I](unary-plus.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](unary-plus.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](unary-plus.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [Layout](-layout/index.md)<[I](unary-plus.md), [S](unary-plus.md), [C](unary-plus.md)>.[unaryPlus](unary-plus.md)()
Lays out the provided [layout](layout.md) as a [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html). | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/layout.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/layout.md index 9391022..1e60696 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/layout.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/layout.md @@ -3,11 +3,6 @@ # layout [common]\ -inline fun <[I](layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [layout](layout.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, viewModelFactory: [ViewModelFactory](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>, noinline content: @Composable() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [Layout](-layout/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)> - -Creates a [Layout](-layout/index.md) with the provided [key](layout.md), [viewModelFactory](layout.md), and [content](layout.md) parameters. - -[common]\ -inline fun <[I](layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [layout](layout.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, viewModel: [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>, noinline content: @Composable() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [Layout](-layout/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)> +inline fun <[I](layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [layout](layout.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, viewModel: [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)>, noinline content: @[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [Layout](-layout/index.md)<[I](layout.md), [S](layout.md), [C](layout.md)> Creates a [Layout](-layout/index.md) with the provided [key](layout.md), [viewModel](layout.md), and [content](layout.md) parameters. diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/unary-plus.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/unary-plus.md index 44db93e..d5dc63f 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/unary-plus.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose.layout/unary-plus.md @@ -4,25 +4,27 @@ [common]\ -@Composable +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) inline operator fun <[I](unary-plus.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](unary-plus.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](unary-plus.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [Layout](-layout/index.md)<[I](unary-plus.md), [S](unary-plus.md), [C](unary-plus.md)>.[unaryPlus](unary-plus.md)() -Lays out the provided [layout](layout.md) as a Composable. +Lays out the provided [layout](layout.md) as a [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html). This is a convenience function for calling [ComposeLayout](-compose-layout.md). Example usage: -@Composable\ -fun Home {\ - +HomeLayout()\ +```kotlin +@Composable +fun Home { + +HomeLayout() } +``` -## See also +#### See also common -| | | -|---|---| -| [ComposeLayout](-compose-layout.md) | | +| | +|---| +| [ComposeLayout](-compose-layout.md) | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/-content.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/-content.md index 2838ecc..f05b774 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/-content.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/-content.md @@ -4,6 +4,6 @@ [android]\ -@Composable +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) abstract fun [Content](-content.md)() diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/compose-view-initializer.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/compose-view-initializer.md index a2d93f9..935c44d 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/compose-view-initializer.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/compose-view-initializer.md @@ -3,4 +3,4 @@ # composeViewInitializer [android]\ -open fun ComposeView.[composeViewInitializer](compose-view-initializer.md)() +open fun [ComposeView](https://developer.android.com/reference/kotlin/androidx/compose/ui/platform/ComposeView.html).[composeViewInitializer](compose-view-initializer.md)() diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/index.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/index.md index 9b49895..238e765 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/index.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-fragment/index.md @@ -9,21 +9,23 @@ An implementation of a [PresentationFragment](../../../../presentation-core/pres Example Usage: -class HomeFragment : ComposeFragment<HomeIntent, HomeState, HomeChange>() {\ -\ - override val viewModel = ...\ -\ - override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\ - super.onViewCreated(view, savedInstanceState)\ -\ - intent(to HomeIntent.Load)\ - }\ -\ - @Composable\ - override fun Content(state: HomeState) {\ - when (state) { ... }\ - }\ +```kotlin +class HomeFragment : ComposeFragment() { + + override val viewModel = ... + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + + intent(to HomeIntent.Load) + } + + @Composable + override fun Content(state: HomeState) { + when (state) { ... } + } } +``` ## Constructors @@ -35,174 +37,121 @@ class HomeFragment : ComposeFragment<HomeIntent, HomeState, HomeChange>() | Name | Summary | |---|---| -| [callStartTransitionListener](index.md#-224120179%2FFunctions%2F1245079841) | [android]
open fun [callStartTransitionListener](index.md#-224120179%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [composeViewInitializer](compose-view-initializer.md) | [android]
open fun ComposeView.[composeViewInitializer](compose-view-initializer.md)() | -| [Content](-content.md) | [android]
@Composable
abstract fun [Content](-content.md)() | -| [createFragmentContainer](index.md#-1146440512%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [createFragmentContainer](index.md#-1146440512%2FFunctions%2F1245079841)(): [FragmentContainer](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentContainer.html) | +| [composeViewInitializer](compose-view-initializer.md) | [android]
open fun [ComposeView](https://developer.android.com/reference/kotlin/androidx/compose/ui/platform/ComposeView.html).[composeViewInitializer](compose-view-initializer.md)() | +| [Content](-content.md) | [android]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
abstract fun [Content](-content.md)() | | [dump](index.md#-554049583%2FFunctions%2F1245079841) | [android]
open fun [dump](index.md#-554049583%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [FileDescriptor](https://developer.android.com/reference/kotlin/java/io/FileDescriptor.html)?, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [PrintWriter](https://developer.android.com/reference/kotlin/java/io/PrintWriter.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p3: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?) | | [equals](index.md#62266428%2FFunctions%2F1245079841) | [android]
operator override fun [equals](index.md#62266428%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)other: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [findFragmentByWho](index.md#557652813%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [findFragmentByWho](index.md#557652813%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | -| [generateActivityResultKey](index.md#1452421015%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [generateActivityResultKey](index.md#1452421015%2FFunctions%2F1245079841)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [getActivity](index.md#1742329008%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getActivity](index.md#1742329008%2FFunctions%2F1245079841)(): [FragmentActivity](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentActivity.html)? | | [getAllowEnterTransitionOverlap](index.md#-1150553896%2FFunctions%2F1245079841) | [android]
open fun [getAllowEnterTransitionOverlap](index.md#-1150553896%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [getAllowReturnTransitionOverlap](index.md#2133211558%2FFunctions%2F1245079841) | [android]
open fun [getAllowReturnTransitionOverlap](index.md#2133211558%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [getAnimatingAway](index.md#-1187937809%2FFunctions%2F1245079841) | [android]
open fun [getAnimatingAway](index.md#-1187937809%2FFunctions%2F1245079841)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | | [getArguments](index.md#-234293691%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getArguments](index.md#-234293691%2FFunctions%2F1245079841)(): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)? | | [getChildFragmentManager](index.md#-1694755202%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getChildFragmentManager](index.md#-1694755202%2FFunctions%2F1245079841)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | | [getContext](index.md#1977143180%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getContext](index.md#1977143180%2FFunctions%2F1245079841)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)? | +| [getDefaultViewModelCreationExtras](index.md#1627322298%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [getDefaultViewModelCreationExtras](index.md#1627322298%2FFunctions%2F1245079841)(): [CreationExtras](https://developer.android.com/reference/kotlin/androidx/lifecycle/viewmodel/CreationExtras.html) | | [getDefaultViewModelProviderFactory](index.md#1905320965%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getDefaultViewModelProviderFactory](index.md#1905320965%2FFunctions%2F1245079841)(): [ViewModelProvider.Factory](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory.html) | -| [getEnterAnim](index.md#1033854450%2FFunctions%2F1245079841) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getEnterAnim](index.md#1033854450%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [getEnterTransition](index.md#1173992110%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getEnterTransition](index.md#1173992110%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getEnterTransitionCallback](index.md#-79955735%2FFunctions%2F1245079841) | [android]
open fun [getEnterTransitionCallback](index.md#-79955735%2FFunctions%2F1245079841)(): [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html) | -| [getExitAnim](index.md#1182269296%2FFunctions%2F1245079841) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getExitAnim](index.md#1182269296%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [getExitTransition](index.md#560381356%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getExitTransition](index.md#560381356%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getExitTransitionCallback](index.md#-505076249%2FFunctions%2F1245079841) | [android]
open fun [getExitTransitionCallback](index.md#-505076249%2FFunctions%2F1245079841)(): [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html) | -| [getFocusedView](index.md#722352159%2FFunctions%2F1245079841) | [android]
open fun [getFocusedView](index.md#722352159%2FFunctions%2F1245079841)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | -| [getFragmentManager](index.md#1969862590%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
~~fun~~ [~~getFragmentManager~~](index.md#1969862590%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html)? | +| [getFragmentManager](index.md#1969862590%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [~~getFragmentManager~~](index.md#1969862590%2FFunctions%2F1245079841)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html)? | | [getHost](index.md#-720264905%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getHost](index.md#-720264905%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | | [getId](index.md#1461313956%2FFunctions%2F1245079841) | [android]
fun [getId](index.md#1461313956%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [getLayoutInflater](index.md#-877329302%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getLayoutInflater](index.md#-877329302%2FFunctions%2F1245079841)(): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
~~open~~ ~~fun~~ [~~getLayoutInflater~~](index.md#2105493816%2FFunctions%2F1245079841)~~(~~@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p0~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~~~:~~ [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | +| [getLayoutInflater](index.md#-877329302%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getLayoutInflater](index.md#-877329302%2FFunctions%2F1245079841)(): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
open fun [~~getLayoutInflater~~](index.md#2105493816%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | | [getLifecycle](index.md#1160562353%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getLifecycle](index.md#1160562353%2FFunctions%2F1245079841)(): [Lifecycle](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.html) | -| [getLoaderManager](index.md#-1183069951%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
~~open~~ ~~fun~~ [~~getLoaderManager~~](index.md#-1183069951%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [LoaderManager](https://developer.android.com/reference/kotlin/androidx/loader/app/LoaderManager.html) | -| [getNextTransition](index.md#539177911%2FFunctions%2F1245079841) | [android]
open fun [getNextTransition](index.md#539177911%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | +| [getLoaderManager](index.md#-1183069951%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [~~getLoaderManager~~](index.md#-1183069951%2FFunctions%2F1245079841)(): [LoaderManager](https://developer.android.com/reference/kotlin/androidx/loader/app/LoaderManager.html) | | [getParentFragment](index.md#571913093%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getParentFragment](index.md#571913093%2FFunctions%2F1245079841)(): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | | [getParentFragmentManager](index.md#776979464%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getParentFragmentManager](index.md#776979464%2FFunctions%2F1245079841)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | -| [getPopDirection](index.md#-1305569423%2FFunctions%2F1245079841) | [android]
open fun [getPopDirection](index.md#-1305569423%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [getPopEnterAnim](index.md#-1636926169%2FFunctions%2F1245079841) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getPopEnterAnim](index.md#-1636926169%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [getPopExitAnim](index.md#1650304411%2FFunctions%2F1245079841) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getPopExitAnim](index.md#1650304411%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [getPostOnViewCreatedAlpha](index.md#-576959675%2FFunctions%2F1245079841) | [android]
open fun [getPostOnViewCreatedAlpha](index.md#-576959675%2FFunctions%2F1245079841)(): [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html) | | [getReenterTransition](index.md#1906483809%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getReenterTransition](index.md#1906483809%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | | [getResources](index.md#-340301738%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getResources](index.md#-340301738%2FFunctions%2F1245079841)(): [Resources](https://developer.android.com/reference/kotlin/android/content/res/Resources.html) | -| [getRetainInstance](index.md#-301500443%2FFunctions%2F1245079841) | [android]
~~fun~~ [~~getRetainInstance~~](index.md#-301500443%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [getRetainInstance](index.md#-301500443%2FFunctions%2F1245079841) | [android]
fun [~~getRetainInstance~~](index.md#-301500443%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [getReturnTransition](index.md#-564572198%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getReturnTransition](index.md#-564572198%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getSavedStateRegistry](index.md#1899869080%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun [getSavedStateRegistry](index.md#1899869080%2FFunctions%2F1245079841)(): [SavedStateRegistry](https://developer.android.com/reference/kotlin/androidx/savedstate/SavedStateRegistry.html) | | [getSharedElementEnterTransition](index.md#-95190487%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getSharedElementEnterTransition](index.md#-95190487%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | | [getSharedElementReturnTransition](index.md#-1254527041%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getSharedElementReturnTransition](index.md#-1254527041%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getSharedElementSourceNames](index.md#-2030676727%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getSharedElementSourceNames](index.md#-2030676727%2FFunctions%2F1245079841)(): [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> | -| [getSharedElementTargetNames](index.md#-2051347457%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getSharedElementTargetNames](index.md#-2051347457%2FFunctions%2F1245079841)(): [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> | | [getString](index.md#385078924%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getString](index.md#385078924%2FFunctions%2F1245079841)(@[StringRes](https://developer.android.com/reference/kotlin/androidx/annotation/StringRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getString](index.md#1504111588%2FFunctions%2F1245079841)(@[StringRes](https://developer.android.com/reference/kotlin/androidx/annotation/StringRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)vararg p1: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [getTag](index.md#-2141867263%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getTag](index.md#-2141867263%2FFunctions%2F1245079841)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? | -| [getTargetFragment](index.md#-1862646914%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
~~fun~~ [~~getTargetFragment~~](index.md#-1862646914%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | -| [getTargetRequestCode](index.md#97949808%2FFunctions%2F1245079841) | [android]
~~fun~~ [~~getTargetRequestCode~~](index.md#97949808%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | +| [getTargetFragment](index.md#-1862646914%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [~~getTargetFragment~~](index.md#-1862646914%2FFunctions%2F1245079841)(): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | +| [getTargetRequestCode](index.md#97949808%2FFunctions%2F1245079841) | [android]
fun [~~getTargetRequestCode~~](index.md#97949808%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [getText](index.md#94198896%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getText](index.md#94198896%2FFunctions%2F1245079841)(@[StringRes](https://developer.android.com/reference/kotlin/androidx/annotation/StringRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html) | -| [getUserVisibleHint](index.md#-1778397491%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~getUserVisibleHint~~](index.md#-1778397491%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [getUserVisibleHint](index.md#-1778397491%2FFunctions%2F1245079841) | [android]
open fun [~~getUserVisibleHint~~](index.md#-1778397491%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [getView](index.md#1437008602%2FFunctions%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getView](index.md#1437008602%2FFunctions%2F1245079841)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html)? | | [getViewLifecycleOwner](index.md#1042312881%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getViewLifecycleOwner](index.md#1042312881%2FFunctions%2F1245079841)(): [LifecycleOwner](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner.html) | | [getViewLifecycleOwnerLiveData](index.md#-894249829%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getViewLifecycleOwnerLiveData](index.md#-894249829%2FFunctions%2F1245079841)(): [LiveData](https://developer.android.com/reference/kotlin/androidx/lifecycle/LiveData.html)<[LifecycleOwner](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner.html)> | | [getViewModelStore](index.md#-1673004478%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getViewModelStore](index.md#-1673004478%2FFunctions%2F1245079841)(): [ViewModelStore](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelStore.html) | | [hashCode](index.md#-61990614%2FFunctions%2F1245079841) | [android]
override fun [hashCode](index.md#-61990614%2FFunctions%2F1245079841)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [hasOptionsMenu](index.md#1875754530%2FFunctions%2F1245079841) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
fun [hasOptionsMenu](index.md#1875754530%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [initState](index.md#2108682580%2FFunctions%2F1245079841) | [android]
open fun [initState](index.md#2108682580%2FFunctions%2F1245079841)() | | [isAdded](index.md#-746294177%2FFunctions%2F1245079841) | [android]
fun [isAdded](index.md#-746294177%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isDetached](index.md#781119401%2FFunctions%2F1245079841) | [android]
fun [isDetached](index.md#781119401%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isHidden](index.md#-815563791%2FFunctions%2F1245079841) | [android]
fun [isHidden](index.md#-815563791%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [isInBackStack](index.md#1373756707%2FFunctions%2F1245079841) | [android]
fun [isInBackStack](index.md#1373756707%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isInLayout](index.md#-28072692%2FFunctions%2F1245079841) | [android]
fun [isInLayout](index.md#-28072692%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isMenuVisible](index.md#320812%2FFunctions%2F1245079841) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
fun [isMenuVisible](index.md#320812%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [isPostponed](index.md#-1936867951%2FFunctions%2F1245079841) | [android]
open fun [isPostponed](index.md#-1936867951%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isRemoving](index.md#-1835815494%2FFunctions%2F1245079841) | [android]
fun [isRemoving](index.md#-1835815494%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isResumed](index.md#-1476032792%2FFunctions%2F1245079841) | [android]
fun [isResumed](index.md#-1476032792%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isStateSaved](index.md#-116937819%2FFunctions%2F1245079841) | [android]
fun [isStateSaved](index.md#-116937819%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isVisible](index.md#1723885741%2FFunctions%2F1245079841) | [android]
fun [isVisible](index.md#1723885741%2FFunctions%2F1245079841)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [noteStateNotSaved](index.md#-337516894%2FFunctions%2F1245079841) | [android]
open fun [noteStateNotSaved](index.md#-337516894%2FFunctions%2F1245079841)() | -| [onActivityCreated](index.md#-93866391%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
~~open~~ ~~fun~~ [~~onActivityCreated~~](index.md#-93866391%2FFunctions%2F1245079841)~~(~~@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p0~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~ | -| [onActivityResult](index.md#-632987463%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~onActivityResult~~](index.md#-632987463%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?~~)~~ | -| [onAttach](index.md#1801429126%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
~~open~~ ~~fun~~ [~~onAttach~~](index.md#1801429126%2FFunctions%2F1245079841)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html)~~)~~
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onAttach](index.md#-433541178%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)) | -| [onAttachFragment](index.md#584121595%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
~~open~~ ~~fun~~ [~~onAttachFragment~~](index.md#584121595%2FFunctions%2F1245079841)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)~~)~~ | +| [onActivityCreated](index.md#-93866391%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [~~onActivityCreated~~](index.md#-93866391%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | +| [onActivityResult](index.md#-632987463%2FFunctions%2F1245079841) | [android]
open fun [~~onActivityResult~~](index.md#-632987463%2FFunctions%2F1245079841)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?) | +| [onAttach](index.md#1801429126%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [~~onAttach~~](index.md#1801429126%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html))
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onAttach](index.md#-433541178%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)) | +| [onAttachFragment](index.md#584121595%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onAttachFragment~~](index.md#584121595%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)) | | [onConfigurationChanged](index.md#-1504446138%2FFunctions%2F1245079841) | [android]
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [onConfigurationChanged](index.md#-1504446138%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)) | | [onContextItemSelected](index.md#-374922321%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onContextItemSelected](index.md#-374922321%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [onCreate](index.md#1065934424%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onCreate](index.md#1065934424%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [onCreateAnimation](index.md#-285371613%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [onCreateAnimation](index.md#-285371613%2FFunctions%2F1245079841)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Animation](https://developer.android.com/reference/kotlin/android/view/animation/Animation.html)? | | [onCreateAnimator](index.md#-911678118%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [onCreateAnimator](index.md#-911678118%2FFunctions%2F1245079841)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Animator](https://developer.android.com/reference/kotlin/android/animation/Animator.html)? | | [onCreateContextMenu](index.md#-723660536%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open override fun [onCreateContextMenu](index.md#-723660536%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ContextMenu](https://developer.android.com/reference/kotlin/android/view/ContextMenu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [View](https://developer.android.com/reference/kotlin/android/view/View.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [ContextMenu.ContextMenuInfo](https://developer.android.com/reference/kotlin/android/view/ContextMenu.ContextMenuInfo.html)?) | -| [onCreateOptionsMenu](index.md#988498165%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onCreateOptionsMenu](index.md#988498165%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html)) | +| [onCreateOptionsMenu](index.md#988498165%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onCreateOptionsMenu~~](index.md#988498165%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html)) | | [onCreateView](on-create-view.md) | [android]
open override fun [onCreateView](on-create-view.md)(inflater: [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html), container: [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html)?, savedInstanceState: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [View](https://developer.android.com/reference/kotlin/android/view/View.html)? | | [onDestroy](index.md#497921754%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onDestroy](index.md#497921754%2FFunctions%2F1245079841)() | -| [onDestroyOptionsMenu](index.md#-220306909%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onDestroyOptionsMenu](index.md#-220306909%2FFunctions%2F1245079841)() | +| [onDestroyOptionsMenu](index.md#-220306909%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onDestroyOptionsMenu~~](index.md#-220306909%2FFunctions%2F1245079841)() | | [onDestroyView](index.md#896983449%2FFunctions%2F1245079841) | [android]
open override fun [onDestroyView](index.md#896983449%2FFunctions%2F1245079841)() | | [onDetach](index.md#133952211%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onDetach](index.md#133952211%2FFunctions%2F1245079841)() | | [onGetLayoutInflater](index.md#-1455414089%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [onGetLayoutInflater](index.md#-1455414089%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | | [onHiddenChanged](index.md#-847096913%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onHiddenChanged](index.md#-847096913%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onInflate](index.md#-2081977173%2FFunctions%2F1245079841) | [android]
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
~~open~~ ~~fun~~ [~~onInflate~~](index.md#-2081977173%2FFunctions%2F1245079841)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html)~~,~~ @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p1~~~~:~~ [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onInflate](index.md#1247156227%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | +| [onInflate](index.md#-2081977173%2FFunctions%2F1245079841) | [android]
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [~~onInflate~~](index.md#-2081977173%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onInflate](index.md#1247156227%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [onLowMemory](index.md#-414169089%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [onLowMemory](index.md#-414169089%2FFunctions%2F1245079841)() | | [onMultiWindowModeChanged](index.md#1696134019%2FFunctions%2F1245079841) | [android]
open fun [onMultiWindowModeChanged](index.md#1696134019%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onOptionsItemSelected](index.md#1600953310%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onOptionsItemSelected](index.md#1600953310%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [onOptionsMenuClosed](index.md#1628608206%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onOptionsMenuClosed](index.md#1628608206%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | +| [onOptionsItemSelected](index.md#1600953310%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onOptionsItemSelected~~](index.md#1600953310%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [onOptionsMenuClosed](index.md#1628608206%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onOptionsMenuClosed~~](index.md#1628608206%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | | [onPause](index.md#-48414334%2FFunctions%2F1245079841) | [android]
open override fun [onPause](index.md#-48414334%2FFunctions%2F1245079841)() | | [onPictureInPictureModeChanged](index.md#598686659%2FFunctions%2F1245079841) | [android]
open fun [onPictureInPictureModeChanged](index.md#598686659%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onPrepareOptionsMenu](index.md#665402569%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onPrepareOptionsMenu](index.md#665402569%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | +| [onPrepareOptionsMenu](index.md#665402569%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onPrepareOptionsMenu~~](index.md#665402569%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | | [onPrimaryNavigationFragmentChanged](index.md#-383842019%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onPrimaryNavigationFragmentChanged](index.md#-383842019%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onRequestPermissionsResult](index.md#-1097850413%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~onRequestPermissionsResult~~](index.md#-1097850413%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p1~~~~:~~ [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>~~,~~ @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p2~~~~:~~ [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)~~)~~ | +| [onRequestPermissionsResult](index.md#-1097850413%2FFunctions%2F1245079841) | [android]
open fun [~~onRequestPermissionsResult~~](index.md#-1097850413%2FFunctions%2F1245079841)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)) | | [onResume](index.md#1880265877%2FFunctions%2F1245079841) | [android]
open override fun [onResume](index.md#1880265877%2FFunctions%2F1245079841)() | | [onSaveInstanceState](index.md#-166507844%2FFunctions%2F1245079841) | [android]
open override fun [onSaveInstanceState](index.md#-166507844%2FFunctions%2F1245079841)(outState: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | | [onStart](index.md#1903974706%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onStart](index.md#1903974706%2FFunctions%2F1245079841)() | | [onStop](index.md#664095620%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onStop](index.md#664095620%2FFunctions%2F1245079841)() | | [onViewCreated](index.md#-1139751281%2FFunctions%2F1245079841) | [android]
open override fun [onViewCreated](index.md#-1139751281%2FFunctions%2F1245079841)(view: [View](https://developer.android.com/reference/kotlin/android/view/View.html), savedInstanceState: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [onViewStateRestored](index.md#-1001464512%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onViewStateRestored](index.md#-1001464512%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [performActivityCreated](index.md#-321741016%2FFunctions%2F1245079841) | [android]
open fun [performActivityCreated](index.md#-321741016%2FFunctions%2F1245079841)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | -| [performAttach](index.md#1570856271%2FFunctions%2F1245079841) | [android]
open fun [performAttach](index.md#1570856271%2FFunctions%2F1245079841)() | -| [performConfigurationChanged](index.md#707150488%2FFunctions%2F1245079841) | [android]
open fun [performConfigurationChanged](index.md#707150488%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)) | -| [performContextItemSelected](index.md#-1476518627%2FFunctions%2F1245079841) | [android]
open fun [performContextItemSelected](index.md#-1476518627%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performCreate](index.md#-1403258179%2FFunctions%2F1245079841) | [android]
open fun [performCreate](index.md#-1403258179%2FFunctions%2F1245079841)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | -| [performCreateOptionsMenu](index.md#-1564131485%2FFunctions%2F1245079841) | [android]
open fun [performCreateOptionsMenu](index.md#-1564131485%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performCreateView](index.md#1612944809%2FFunctions%2F1245079841) | [android]
open fun [performCreateView](index.md#1612944809%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html)?, @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [performDestroy](index.md#-610101332%2FFunctions%2F1245079841) | [android]
open fun [performDestroy](index.md#-610101332%2FFunctions%2F1245079841)() | -| [performDestroyView](index.md#1940721927%2FFunctions%2F1245079841) | [android]
open fun [performDestroyView](index.md#1940721927%2FFunctions%2F1245079841)() | -| [performDetach](index.md#-1841453119%2FFunctions%2F1245079841) | [android]
open fun [performDetach](index.md#-1841453119%2FFunctions%2F1245079841)() | -| [performGetLayoutInflater](index.md#-70091127%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [performGetLayoutInflater](index.md#-70091127%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | -| [performLowMemory](index.md#-72465327%2FFunctions%2F1245079841) | [android]
open fun [performLowMemory](index.md#-72465327%2FFunctions%2F1245079841)() | -| [performMultiWindowModeChanged](index.md#1691472881%2FFunctions%2F1245079841) | [android]
open fun [performMultiWindowModeChanged](index.md#1691472881%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [performOptionsItemSelected](index.md#499357004%2FFunctions%2F1245079841) | [android]
open fun [performOptionsItemSelected](index.md#499357004%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performOptionsMenuClosed](index.md#-2067481924%2FFunctions%2F1245079841) | [android]
open fun [performOptionsMenuClosed](index.md#-2067481924%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | -| [performPause](index.md#-305194128%2FFunctions%2F1245079841) | [android]
open fun [performPause](index.md#-305194128%2FFunctions%2F1245079841)() | -| [performPictureInPictureModeChanged](index.md#808939541%2FFunctions%2F1245079841) | [android]
open fun [performPictureInPictureModeChanged](index.md#808939541%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [performPrepareOptionsMenu](index.md#2050725531%2FFunctions%2F1245079841) | [android]
open fun [performPrepareOptionsMenu](index.md#2050725531%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performPrimaryNavigationFragmentChanged](index.md#-1667562682%2FFunctions%2F1245079841) | [android]
open fun [performPrimaryNavigationFragmentChanged](index.md#-1667562682%2FFunctions%2F1245079841)() | -| [performResume](index.md#-1784940441%2FFunctions%2F1245079841) | [android]
open fun [performResume](index.md#-1784940441%2FFunctions%2F1245079841)() | -| [performSaveInstanceState](index.md#-1392271474%2FFunctions%2F1245079841) | [android]
open fun [performSaveInstanceState](index.md#-1392271474%2FFunctions%2F1245079841)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | -| [performStart](index.md#316231300%2FFunctions%2F1245079841) | [android]
open fun [performStart](index.md#316231300%2FFunctions%2F1245079841)() | -| [performStop](index.md#-218405902%2FFunctions%2F1245079841) | [android]
open fun [performStop](index.md#-218405902%2FFunctions%2F1245079841)() | -| [performViewCreated](index.md#-1980322109%2FFunctions%2F1245079841) | [android]
open fun [performViewCreated](index.md#-1980322109%2FFunctions%2F1245079841)() | | [postponeEnterTransition](index.md#-65706338%2FFunctions%2F1245079841) | [android]
open fun [postponeEnterTransition](index.md#-65706338%2FFunctions%2F1245079841)()
fun [postponeEnterTransition](index.md#-718244554%2FFunctions%2F1245079841)(p0: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [TimeUnit](https://developer.android.com/reference/kotlin/java/util/concurrent/TimeUnit.html)) | | [registerForActivityResult](index.md#206779778%2FFunctions%2F1245079841) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun <[I](index.md#206779778%2FFunctions%2F1245079841) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html), [O](index.md#206779778%2FFunctions%2F1245079841) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [registerForActivityResult](index.md#206779778%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActivityResultContract](https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract.html)<[I](index.md#206779778%2FFunctions%2F1245079841), [O](index.md#206779778%2FFunctions%2F1245079841)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [ActivityResultCallback](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultCallback.html)<[O](index.md#206779778%2FFunctions%2F1245079841)>): [ActivityResultLauncher](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultLauncher.html)<[I](index.md#206779778%2FFunctions%2F1245079841)>
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun <[I](index.md#1704734437%2FFunctions%2F1245079841) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html), [O](index.md#1704734437%2FFunctions%2F1245079841) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [registerForActivityResult](index.md#1704734437%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActivityResultContract](https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract.html)<[I](index.md#1704734437%2FFunctions%2F1245079841), [O](index.md#1704734437%2FFunctions%2F1245079841)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [ActivityResultRegistry](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultRegistry.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [ActivityResultCallback](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultCallback.html)<[O](index.md#1704734437%2FFunctions%2F1245079841)>): [ActivityResultLauncher](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultLauncher.html)<[I](index.md#1704734437%2FFunctions%2F1245079841)> | | [registerForContextMenu](index.md#-1559274026%2FFunctions%2F1245079841) | [android]
open fun [registerForContextMenu](index.md#-1559274026%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) | -| [requestPermissions](index.md#-211209511%2FFunctions%2F1245079841) | [android]
~~fun~~ [~~requestPermissions~~](index.md#-211209511%2FFunctions%2F1245079841)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~)~~ | +| [requestPermissions](index.md#-211209511%2FFunctions%2F1245079841) | [android]
fun [~~requestPermissions~~](index.md#-211209511%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | | [requireActivity](index.md#935490689%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireActivity](index.md#935490689%2FFunctions%2F1245079841)(): [FragmentActivity](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentActivity.html) | | [requireArguments](index.md#523522196%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireArguments](index.md#523522196%2FFunctions%2F1245079841)(): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | | [requireContext](index.md#-681283173%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireContext](index.md#-681283173%2FFunctions%2F1245079841)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) | -| [requireFragmentManager](index.md#439737037%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
~~fun~~ [~~requireFragmentManager~~](index.md#439737037%2FFunctions%2F1245079841)~~(~~~~)~~~~:~~ [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | +| [requireFragmentManager](index.md#439737037%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [~~requireFragmentManager~~](index.md#439737037%2FFunctions%2F1245079841)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | | [requireHost](index.md#966578568%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireHost](index.md#966578568%2FFunctions%2F1245079841)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html) | | [requireParentFragment](index.md#-1832750442%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireParentFragment](index.md#-1832750442%2FFunctions%2F1245079841)(): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) | | [requireView](index.md#-1171115221%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireView](index.md#-1171115221%2FFunctions%2F1245079841)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | -| [restoreChildFragmentState](index.md#235649584%2FFunctions%2F1245079841) | [android]
open fun [restoreChildFragmentState](index.md#235649584%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [restoreViewState](index.md#184445038%2FFunctions%2F1245079841) | [android]
fun [restoreViewState](index.md#184445038%2FFunctions%2F1245079841)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | | [setAllowEnterTransitionOverlap](index.md#1554528297%2FFunctions%2F1245079841) | [android]
open fun [setAllowEnterTransitionOverlap](index.md#1554528297%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [setAllowReturnTransitionOverlap](index.md#1912983007%2FFunctions%2F1245079841) | [android]
open fun [setAllowReturnTransitionOverlap](index.md#1912983007%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [setAnimations](index.md#1959139291%2FFunctions%2F1245079841) | [android]
open fun [setAnimations](index.md#1959139291%2FFunctions%2F1245079841)(@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | | [setArguments](index.md#466524511%2FFunctions%2F1245079841) | [android]
open fun [setArguments](index.md#466524511%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [setEnterSharedElementCallback](index.md#-1725514475%2FFunctions%2F1245079841) | [android]
open fun [setEnterSharedElementCallback](index.md#-1725514475%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html)?) | | [setEnterTransition](index.md#-1695109112%2FFunctions%2F1245079841) | [android]
open fun [setEnterTransition](index.md#-1695109112%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | | [setExitSharedElementCallback](index.md#-1836021777%2FFunctions%2F1245079841) | [android]
open fun [setExitSharedElementCallback](index.md#-1836021777%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html)?) | | [setExitTransition](index.md#1100471522%2FFunctions%2F1245079841) | [android]
open fun [setExitTransition](index.md#1100471522%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setFocusedView](index.md#-1932088408%2FFunctions%2F1245079841) | [android]
open fun [setFocusedView](index.md#-1932088408%2FFunctions%2F1245079841)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) | -| [setHasOptionsMenu](index.md#872901461%2FFunctions%2F1245079841) | [android]
open fun [setHasOptionsMenu](index.md#872901461%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | +| [setHasOptionsMenu](index.md#872901461%2FFunctions%2F1245079841) | [android]
open fun [~~setHasOptionsMenu~~](index.md#872901461%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [setInitialSavedState](index.md#1756215292%2FFunctions%2F1245079841) | [android]
open fun [setInitialSavedState](index.md#1756215292%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Fragment.SavedState](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.SavedState.html)?) | | [setMenuVisibility](index.md#-1253786649%2FFunctions%2F1245079841) | [android]
open fun [setMenuVisibility](index.md#-1253786649%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [setNextTransition](index.md#1959293193%2FFunctions%2F1245079841) | [android]
open fun [setNextTransition](index.md#1959293193%2FFunctions%2F1245079841)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | -| [setPopDirection](index.md#1013585002%2FFunctions%2F1245079841) | [android]
open fun [setPopDirection](index.md#1013585002%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [setPostOnViewCreatedAlpha](index.md#-1646549814%2FFunctions%2F1245079841) | [android]
open fun [setPostOnViewCreatedAlpha](index.md#-1646549814%2FFunctions%2F1245079841)(p0: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html)) | | [setReenterTransition](index.md#640349557%2FFunctions%2F1245079841) | [android]
open fun [setReenterTransition](index.md#640349557%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setRetainInstance](index.md#1743326430%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~setRetainInstance~~](index.md#1743326430%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)~~)~~ | +| [setRetainInstance](index.md#1743326430%2FFunctions%2F1245079841) | [android]
open fun [~~setRetainInstance~~](index.md#1743326430%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [setReturnTransition](index.md#1557491444%2FFunctions%2F1245079841) | [android]
open fun [setReturnTransition](index.md#1557491444%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | | [setSharedElementEnterTransition](index.md#1339544389%2FFunctions%2F1245079841) | [android]
open fun [setSharedElementEnterTransition](index.md#1339544389%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setSharedElementNames](index.md#-1957782933%2FFunctions%2F1245079841) | [android]
open fun [setSharedElementNames](index.md#-1957782933%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?, @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?) | | [setSharedElementReturnTransition](index.md#1142469463%2FFunctions%2F1245079841) | [android]
open fun [setSharedElementReturnTransition](index.md#1142469463%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setTargetFragment](index.md#-294315306%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~setTargetFragment~~](index.md#-294315306%2FFunctions%2F1245079841)~~(~~@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p0~~~~:~~ [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)?~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~)~~ | -| [setUserVisibleHint](index.md#-1764772002%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~setUserVisibleHint~~](index.md#-1764772002%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)~~)~~ | +| [setTargetFragment](index.md#-294315306%2FFunctions%2F1245079841) | [android]
open fun [~~setTargetFragment~~](index.md#-294315306%2FFunctions%2F1245079841)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)?, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | +| [setUserVisibleHint](index.md#-1764772002%2FFunctions%2F1245079841) | [android]
open fun [~~setUserVisibleHint~~](index.md#-1764772002%2FFunctions%2F1245079841)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [shouldShowRequestPermissionRationale](index.md#87341512%2FFunctions%2F1245079841) | [android]
open fun [shouldShowRequestPermissionRationale](index.md#87341512%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [startActivity](index.md#-410860108%2FFunctions%2F1245079841) | [android]
open fun [startActivity](index.md#-410860108%2FFunctions%2F1245079841)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open fun [startActivity](index.md#11081177%2FFunctions%2F1245079841)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [startActivityForResult](index.md#-754761987%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~startActivityForResult~~](index.md#-754761987%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~)~~
~~open~~ ~~fun~~ [~~startActivityForResult~~](index.md#-257810960%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~ | -| [startIntentSenderForResult](index.md#1175406868%2FFunctions%2F1245079841) | [android]
~~open~~ ~~fun~~ [~~startIntentSenderForResult~~](index.md#1175406868%2FFunctions%2F1245079841)~~(~~~~p0~~~~:~~ [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?~~,~~ ~~p3~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ ~~p4~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ ~~p5~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p6~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~ | +| [startActivityForResult](index.md#-754761987%2FFunctions%2F1245079841) | [android]
open fun [~~startActivityForResult~~](index.md#-754761987%2FFunctions%2F1245079841)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [~~startActivityForResult~~](index.md#-257810960%2FFunctions%2F1245079841)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | +| [startIntentSenderForResult](index.md#1175406868%2FFunctions%2F1245079841) | [android]
open fun [~~startIntentSenderForResult~~](index.md#1175406868%2FFunctions%2F1245079841)(p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [startPostponedEnterTransition](index.md#-1311853996%2FFunctions%2F1245079841) | [android]
open fun [startPostponedEnterTransition](index.md#-1311853996%2FFunctions%2F1245079841)() | | [toString](index.md#-240156679%2FFunctions%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [toString](index.md#-240156679%2FFunctions%2F1245079841)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [unregisterForContextMenu](index.md#1294339695%2FFunctions%2F1245079841) | [android]
open fun [unregisterForContextMenu](index.md#1294339695%2FFunctions%2F1245079841)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) | @@ -211,52 +160,13 @@ class HomeFragment : ComposeFragment<HomeIntent, HomeState, HomeChange>() | Name | Summary | |---|---| -| [mAdded](index.md#1028438450%2FProperties%2F1245079841) | [android]
val [mAdded](index.md#1028438450%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mAnimationInfo](index.md#635700128%2FProperties%2F1245079841) | [android]
val [mAnimationInfo](index.md#635700128%2FProperties%2F1245079841): [Fragment.AnimationInfo](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.AnimationInfo.html) | -| [mArguments](index.md#316967836%2FProperties%2F1245079841) | [android]
val [mArguments](index.md#316967836%2FProperties%2F1245079841): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | -| [mBackStackNesting](index.md#-1385031585%2FProperties%2F1245079841) | [android]
val [mBackStackNesting](index.md#-1385031585%2FProperties%2F1245079841): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mBeingSaved](index.md#913406432%2FProperties%2F1245079841) | [android]
val [mBeingSaved](index.md#913406432%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mChildFragmentManager](index.md#-169831225%2FProperties%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
val [mChildFragmentManager](index.md#-169831225%2FProperties%2F1245079841): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | -| [mContainer](index.md#-141291823%2FProperties%2F1245079841) | [android]
val [mContainer](index.md#-141291823%2FProperties%2F1245079841): [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html) | -| [mContainerId](index.md#-1960322826%2FProperties%2F1245079841) | [android]
val [mContainerId](index.md#-1960322826%2FProperties%2F1245079841): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mDefaultFactory](index.md#362517759%2FProperties%2F1245079841) | [android]
val [mDefaultFactory](index.md#362517759%2FProperties%2F1245079841): [ViewModelProvider.Factory](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory.html) | -| [mDeferStart](index.md#-43677736%2FProperties%2F1245079841) | [android]
val [mDeferStart](index.md#-43677736%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mDetached](index.md#793396598%2FProperties%2F1245079841) | [android]
val [mDetached](index.md#793396598%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mFragmentId](index.md#-1064744771%2FProperties%2F1245079841) | [android]
val [mFragmentId](index.md#-1064744771%2FProperties%2F1245079841): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mFragmentManager](index.md#1086304213%2FProperties%2F1245079841) | [android]
val [mFragmentManager](index.md#1086304213%2FProperties%2F1245079841): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | -| [mFromLayout](index.md#681595124%2FProperties%2F1245079841) | [android]
val [mFromLayout](index.md#681595124%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHasMenu](index.md#1133531257%2FProperties%2F1245079841) | [android]
val [mHasMenu](index.md#1133531257%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHidden](index.md#-1633427202%2FProperties%2F1245079841) | [android]
val [mHidden](index.md#-1633427202%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHiddenChanged](index.md#-833192120%2FProperties%2F1245079841) | [android]
val [mHiddenChanged](index.md#-833192120%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHost](index.md#2112213376%2FProperties%2F1245079841) | [android]
val [mHost](index.md#2112213376%2FProperties%2F1245079841): [FragmentHostCallback](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentHostCallback.html)<*> | -| [mInLayout](index.md#-15795495%2FProperties%2F1245079841) | [android]
val [mInLayout](index.md#-15795495%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mIsCreated](index.md#-1761839212%2FProperties%2F1245079841) | [android]
val [mIsCreated](index.md#-1761839212%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mLayoutInflater](index.md#-767283853%2FProperties%2F1245079841) | [android]
val [mLayoutInflater](index.md#-767283853%2FProperties%2F1245079841): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | -| [mLifecycleRegistry](index.md#-1545076917%2FProperties%2F1245079841) | [android]
val [mLifecycleRegistry](index.md#-1545076917%2FProperties%2F1245079841): [LifecycleRegistry](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleRegistry.html) | -| [mMaxState](index.md#1266739131%2FProperties%2F1245079841) | [android]
val [mMaxState](index.md#1266739131%2FProperties%2F1245079841): [Lifecycle.State](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State.html) | -| [mMenuVisible](index.md#678076479%2FProperties%2F1245079841) | [android]
val [mMenuVisible](index.md#678076479%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mParentFragment](index.md#681958542%2FProperties%2F1245079841) | [android]
val [mParentFragment](index.md#681958542%2FProperties%2F1245079841): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) | -| [mPerformedCreateView](index.md#-339389583%2FProperties%2F1245079841) | [android]
val [mPerformedCreateView](index.md#-339389583%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mPostponedDurationRunnable](index.md#1553907603%2FProperties%2F1245079841) | [android]
val [mPostponedDurationRunnable](index.md#1553907603%2FProperties%2F1245079841): [Runnable](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | -| [mPreviousWho](index.md#564345739%2FProperties%2F1245079841) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY.html)])
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
val [mPreviousWho](index.md#564345739%2FProperties%2F1245079841): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? | -| [mRemoving](index.md#-1823538297%2FProperties%2F1245079841) | [android]
val [mRemoving](index.md#-1823538297%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mRestored](index.md#1625784786%2FProperties%2F1245079841) | [android]
val [mRestored](index.md#1625784786%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mRetainInstance](index.md#-191454994%2FProperties%2F1245079841) | [android]
val [mRetainInstance](index.md#-191454994%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mRetainInstanceChangedWhileDetached](index.md#782003647%2FProperties%2F1245079841) | [android]
val [mRetainInstanceChangedWhileDetached](index.md#782003647%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mSavedFragmentState](index.md#724472654%2FProperties%2F1245079841) | [android]
val [mSavedFragmentState](index.md#724472654%2FProperties%2F1245079841): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | -| [mSavedStateRegistryController](index.md#555986661%2FProperties%2F1245079841) | [android]
val [mSavedStateRegistryController](index.md#555986661%2FProperties%2F1245079841): [SavedStateRegistryController](https://developer.android.com/reference/kotlin/androidx/savedstate/SavedStateRegistryController.html) | -| [mSavedUserVisibleHint](index.md#-593879487%2FProperties%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
val [mSavedUserVisibleHint](index.md#-593879487%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? | -| [mSavedViewRegistryState](index.md#185036416%2FProperties%2F1245079841) | [android]
val [mSavedViewRegistryState](index.md#185036416%2FProperties%2F1245079841): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | -| [mSavedViewState](index.md#1186759139%2FProperties%2F1245079841) | [android]
val [mSavedViewState](index.md#1186759139%2FProperties%2F1245079841): [SparseArray](https://developer.android.com/reference/kotlin/android/util/SparseArray.html)<[Parcelable](https://developer.android.com/reference/kotlin/android/os/Parcelable.html)> | -| [mState](index.md#1771391809%2FProperties%2F1245079841) | [android]
val [mState](index.md#1771391809%2FProperties%2F1245079841): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mTag](index.md#2105922968%2FProperties%2F1245079841) | [android]
val [mTag](index.md#2105922968%2FProperties%2F1245079841): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | -| [mTarget](index.md#-1273925897%2FProperties%2F1245079841) | [android]
val [mTarget](index.md#-1273925897%2FProperties%2F1245079841): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) | -| [mTargetRequestCode](index.md#1401874119%2FProperties%2F1245079841) | [android]
val [mTargetRequestCode](index.md#1401874119%2FProperties%2F1245079841): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mTargetWho](index.md#43233381%2FProperties%2F1245079841) | [android]
val [mTargetWho](index.md#43233381%2FProperties%2F1245079841): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | -| [mUserVisibleHint](index.md#1633011428%2FProperties%2F1245079841) | [android]
val [mUserVisibleHint](index.md#1633011428%2FProperties%2F1245079841): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mView](index.md#-25480413%2FProperties%2F1245079841) | [android]
val [mView](index.md#-25480413%2FProperties%2F1245079841): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | -| [mViewLifecycleOwner](index.md#-1485706438%2FProperties%2F1245079841) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
val [mViewLifecycleOwner](index.md#-1485706438%2FProperties%2F1245079841): [FragmentViewLifecycleOwner](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentViewLifecycleOwner.html)? | -| [mViewLifecycleOwnerLiveData](index.md#-781731804%2FProperties%2F1245079841) | [android]
val [mViewLifecycleOwnerLiveData](index.md#-781731804%2FProperties%2F1245079841): [MutableLiveData](https://developer.android.com/reference/kotlin/androidx/lifecycle/MutableLiveData.html)<[LifecycleOwner](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner.html)> | -| [mWho](index.md#-268764684%2FProperties%2F1245079841) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
val [mWho](index.md#-268764684%2FProperties%2F1245079841): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | +| [mPreviousWho](index.md#564345739%2FProperties%2F1245079841) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY.html)])
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
var [mPreviousWho](index.md#564345739%2FProperties%2F1245079841): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? | | [renderState](index.md#-351415618%2FProperties%2F1245079841) | [android]
open override val [renderState](index.md#-351415618%2FProperties%2F1245079841): [S](index.md)? | +| [savedStateRegistry](index.md#2039995422%2FProperties%2F1245079841) | [android]
@get:[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override val [savedStateRegistry](index.md#2039995422%2FProperties%2F1245079841): [SavedStateRegistry](https://developer.android.com/reference/kotlin/androidx/savedstate/SavedStateRegistry.html) | | [viewModel](index.md#610945781%2FProperties%2F1245079841) | [android]
abstract override val [viewModel](index.md#610945781%2FProperties%2F1245079841): [ViewModel](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](index.md), [S](index.md), [C](index.md)> | + +## Extensions + +| Name | Summary | +|---|---| +| [stateChanges](../state-changes.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](../state-changes.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../state-changes.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](../state-changes.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](../state-changes.md), [S](../state-changes.md), [C](../state-changes.md)>.[stateChanges](../state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](../state-changes.md)?>
Obtains the changes to the underlying [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed.
[common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](../state-changes.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../state-changes.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](../state-changes.md) : [Change](../../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](../state-changes.md), [S](../state-changes.md), [C](../state-changes.md)>.[stateChanges](../state-changes.md)(initial: [S](../state-changes.md)?, context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](../state-changes.md)?>
Obtains the changes to the underlying [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), starting with the provided [initial](../state-changes.md) value, as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed. | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/index.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/index.md new file mode 100644 index 0000000..947b742 --- /dev/null +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/index.md @@ -0,0 +1,19 @@ +//[presentation-compose](../../../index.md)/[com.chrynan.presentation.compose](../index.md)/[ComposeLayoutScope](index.md) + +# ComposeLayoutScope + +[common]\ +interface [ComposeLayoutScope](index.md)<[I](index.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](index.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md)> + +## Functions + +| Name | Summary | +|---|---| +| [intent](intent.md) | [common]
abstract fun [intent](intent.md)(to: [I](index.md)) | +| [stateChanges](state-changes.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
abstract fun [stateChanges](state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html)): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](index.md)?> | + +## Extensions + +| Name | Summary | +|---|---| +| [stateChanges](../state-changes.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](../state-changes.md) : [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](../state-changes.md) : [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md)> [ComposeLayoutScope](index.md)<[I](../state-changes.md), [S](../state-changes.md)>.[stateChanges](../state-changes.md)(): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](../state-changes.md)?> | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/intent.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/intent.md new file mode 100644 index 0000000..3056c13 --- /dev/null +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/intent.md @@ -0,0 +1,6 @@ +//[presentation-compose](../../../index.md)/[com.chrynan.presentation.compose](../index.md)/[ComposeLayoutScope](index.md)/[intent](intent.md) + +# intent + +[common]\ +abstract fun [intent](intent.md)(to: [I](index.md)) diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/state-changes.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/state-changes.md new file mode 100644 index 0000000..efd7ffe --- /dev/null +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout-scope/state-changes.md @@ -0,0 +1,9 @@ +//[presentation-compose](../../../index.md)/[com.chrynan.presentation.compose](../index.md)/[ComposeLayoutScope](index.md)/[stateChanges](state-changes.md) + +# stateChanges + +[common]\ + +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) + +abstract fun [stateChanges](state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html)): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](index.md)?> diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout.md new file mode 100644 index 0000000..ee24a3a --- /dev/null +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-compose-layout.md @@ -0,0 +1,9 @@ +//[presentation-compose](../../index.md)/[com.chrynan.presentation.compose](index.md)/[ComposeLayout](-compose-layout.md) + +# ComposeLayout + +[common]\ + +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) + +fun <[I](-compose-layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-compose-layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [ComposeLayout](-compose-layout.md)(viewModel: [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](-compose-layout.md), [S](-compose-layout.md), [C](-compose-layout.md)>, modifier: [Modifier](https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier.html) = Modifier, onBind: [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout.md), [S](-compose-layout.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) = {}, onUnbind: [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout.md), [S](-compose-layout.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) = {}, content: @[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)[ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout.md), [S](-compose-layout.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)) diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-local-view-model-provider.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-local-view-model-provider.md new file mode 100644 index 0000000..53b30c3 --- /dev/null +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-local-view-model-provider.md @@ -0,0 +1,6 @@ +//[presentation-compose](../../index.md)/[com.chrynan.presentation.compose](index.md)/[LocalViewModelProvider](-local-view-model-provider.md) + +# LocalViewModelProvider + +[common]\ +val [LocalViewModelProvider](-local-view-model-provider.md): [ProvidableCompositionLocal](https://developer.android.com/reference/kotlin/androidx/compose/runtime/ProvidableCompositionLocal.html)<[ViewModelProvider](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md)> diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-presentation-compose-experimental-api/index.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-presentation-compose-experimental-api/index.md index 84b0ff7..de6f402 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-presentation-compose-experimental-api/index.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/-presentation-compose-experimental-api/index.md @@ -8,9 +8,3 @@ annotation class [PresentationComposeExperimentalApi](index.md) Indicates that the component annotated with this annotation is experimental and could change or be removed in the future. - -## Constructors - -| | | -|---|---| -| [PresentationComposeExperimentalApi](-presentation-compose-experimental-api.md) | [common]
fun [PresentationComposeExperimentalApi](-presentation-compose-experimental-api.md)() | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/index.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/index.md index 595b7b5..449e90b 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/index.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/index.md @@ -1,16 +1,25 @@ //[presentation-compose](../../index.md)/[com.chrynan.presentation.compose](index.md) -# Package com.chrynan.presentation.compose +# Package-level declarations ## Types | Name | Summary | |---|---| | [ComposeFragment](-compose-fragment/index.md) | [android]
abstract class [ComposeFragment](-compose-fragment/index.md)<[I](-compose-fragment/index.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-fragment/index.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-compose-fragment/index.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> : [PresentationFragment](../../../presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md)<[I](-compose-fragment/index.md), [S](-compose-fragment/index.md), [C](-compose-fragment/index.md)> , [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](-compose-fragment/index.md), [S](-compose-fragment/index.md), [C](-compose-fragment/index.md)>
An implementation of a [PresentationFragment](../../../presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md) that supports Jetpack Compose. | +| [ComposeLayoutScope](-compose-layout-scope/index.md) | [common]
interface [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout-scope/index.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-layout-scope/index.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md)> | | [PresentationComposeExperimentalApi](-presentation-compose-experimental-api/index.md) | [common]
@[Target](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.annotation/-target/index.html)(allowedTargets = [[AnnotationTarget.CLASS](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.annotation/-annotation-target/-c-l-a-s-s/index.html), [AnnotationTarget.FUNCTION](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.annotation/-annotation-target/-f-u-n-c-t-i-o-n/index.html), [AnnotationTarget.FIELD](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.annotation/-annotation-target/-f-i-e-l-d/index.html), [AnnotationTarget.PROPERTY](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y/index.html)])
annotation class [PresentationComposeExperimentalApi](-presentation-compose-experimental-api/index.md)
Indicates that the component annotated with this annotation is experimental and could change or be removed in the future. | ## Functions | Name | Summary | |---|---| -| [stateChanges](state-changes.md) | [common]
@Composable
fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): State<[S](state-changes.md)?>
Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) as a Jetpack Compose androidx.compose.runtime.State value, so that the changes can cause the Composable function to be re-composed.
[common]
@Composable
fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(initial: [S](state-changes.md)?, context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): State<[S](state-changes.md)?>
Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), starting with the provided [initial](state-changes.md) value, as a Jetpack Compose androidx.compose.runtime.State value, so that the changes can cause the Composable function to be re-composed. | +| [ComposeLayout](-compose-layout.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](-compose-layout.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-compose-layout.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-compose-layout.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [ComposeLayout](-compose-layout.md)(viewModel: [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](-compose-layout.md), [S](-compose-layout.md), [C](-compose-layout.md)>, modifier: [Modifier](https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier.html) = Modifier, onBind: [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout.md), [S](-compose-layout.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) = {}, onUnbind: [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout.md), [S](-compose-layout.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) = {}, content: @[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)[ComposeLayoutScope](-compose-layout-scope/index.md)<[I](-compose-layout.md), [S](-compose-layout.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)) | +| [rememberViewModel](remember-view-model.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
inline fun <[I](remember-view-model.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](remember-view-model.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](remember-view-model.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md), [V](remember-view-model.md) : [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](remember-view-model.md), [S](remember-view-model.md), [C](remember-view-model.md)>> [rememberViewModel](remember-view-model.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null): [V](remember-view-model.md) | +| [stateChanges](state-changes.md) | [common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md)> [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](state-changes.md), [S](state-changes.md)>.[stateChanges](state-changes.md)(): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](state-changes.md)?>
[common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](state-changes.md)?>
Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed.
[common]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(initial: [S](state-changes.md)?, context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](state-changes.md)?>
Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), starting with the provided [initial](state-changes.md) value, as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed. | + +## Properties + +| Name | Summary | +|---|---| +| [LocalViewModelProvider](-local-view-model-provider.md) | [common]
val [LocalViewModelProvider](-local-view-model-provider.md): [ProvidableCompositionLocal](https://developer.android.com/reference/kotlin/androidx/compose/runtime/ProvidableCompositionLocal.html)<[ViewModelProvider](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md)> | diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/remember-view-model.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/remember-view-model.md new file mode 100644 index 0000000..dd25e83 --- /dev/null +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/remember-view-model.md @@ -0,0 +1,9 @@ +//[presentation-compose](../../index.md)/[com.chrynan.presentation.compose](index.md)/[rememberViewModel](remember-view-model.md) + +# rememberViewModel + +[common]\ + +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) + +inline fun <[I](remember-view-model.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](remember-view-model.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](remember-view-model.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md), [V](remember-view-model.md) : [ViewModel](../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](remember-view-model.md), [S](remember-view-model.md), [C](remember-view-model.md)>> [rememberViewModel](remember-view-model.md)(key: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null): [V](remember-view-model.md) diff --git a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md index 2d439f9..4903bd3 100644 --- a/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md +++ b/docs/presentation-compose/presentation-compose/com.chrynan.presentation.compose/state-changes.md @@ -4,34 +4,44 @@ [common]\ -@Composable +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) + +fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md)> [ComposeLayoutScope](-compose-layout-scope/index.md)<[I](state-changes.md), [S](state-changes.md)>.[stateChanges](state-changes.md)(): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](state-changes.md)?> + +[common]\ + +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) -fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): State<[S](state-changes.md)?> +fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](state-changes.md)?> -Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) as a Jetpack Compose androidx.compose.runtime.State value, so that the changes can cause the Composable function to be re-composed. +Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed. Example usage: -@Composable\ -override fun Content() {\ - val state by stateChanges()\ -\ - // Create the UI using the 'state' variable\ +```kotlin +@Composable +override fun Content() { + val state by stateChanges() + + // Create the UI using the 'state' variable } +``` [common]\ -@Composable +@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) -fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(initial: [S](state-changes.md)?, context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): State<[S](state-changes.md)?> +fun <[I](state-changes.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](state-changes.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](state-changes.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](state-changes.md), [S](state-changes.md), [C](state-changes.md)>.[stateChanges](state-changes.md)(initial: [S](state-changes.md)?, context: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html)<[S](state-changes.md)?> -Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), starting with the provided [initial](state-changes.md) value, as a Jetpack Compose androidx.compose.runtime.State value, so that the changes can cause the Composable function to be re-composed. +Obtains the changes to the underlying [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), starting with the provided [initial](state-changes.md) value, as a Jetpack Compose [androidx.compose.runtime.State](https://developer.android.com/reference/kotlin/androidx/compose/runtime/State.html) value, so that the changes can cause the [Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html) function to be re-composed. Example usage: -@Composable\ -override fun Content() {\ - val state by stateChanges(initial = null)\ -\ - // Create the UI using the 'state' variable\ +```kotlin +@Composable +override fun Content() { + val state by stateChanges(initial = null) + + // Create the UI using the 'state' variable } +``` diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/index.md index 4042fc1..f92cf52 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/index.md @@ -9,7 +9,7 @@ An [Action](index.md) performs the function of converting an [Intent](../-intent Note, however, that [Action](index.md)s shouldn't perform business logic themselves as they are still application logic components. Instead, the business logic should be handled in UseCases and Repositories and the like. The [Action](index.md) is what connects the business and application logic. It has reference to the business logic classes and invokes the appropriate functions and performs application logic on top of that to coerce the returned values into application layer components ([ViewData](../-view-data/index.md)s, [Change](../-change/index.md)s, etc). -It's common, though not required, to have [Action](index.md)s be single focused and perform a single task. For instance, if there are [Intent](../-intent/index.md)s to "Load" and "Refresh", those should be handled in separate [Action](index.md)s. Then there could either be a wrapper [Action](index.md) that properly delegates to the correct one depending on the [Intent](../-intent/index.md), or that logic could simply be handled with a Kotlin "when" condition inside the [perform](perform.md) function. +It's common, though not required, to have [Action](index.md)s be single focused and perform a single task. For instance, if there are [Intent](../-intent/index.md)s to "Load" and "Refresh", those should be handled in separate [Action](index.md)s. Then there could either be a wrapper [Action](index.md) that properly delegates to the correct one depending on the [Intent](../-intent/index.md), or that logic could simply be handled with a Kotlin "when" condition inside the [perform](perform.md) function. ## Types @@ -21,10 +21,10 @@ It's common, though not required, to have [Action](index.md)s be single focused | Name | Summary | |---|---| -| [perform](perform.md) | [common]
abstract suspend fun [perform](perform.md)(intent: [I](index.md), state: [S](index.md)?): Flow<[C](index.md)>
Converts the provided [intent](perform.md) of type [I](index.md) into a Flow of type [C](index.md). This means an [Intent](../-intent/index.md) can cause multiple [Change](../-change/index.md)s to be emitted ("StartedLoading", "FinishedLoading", etc). | +| [perform](perform.md) | [common]
abstract suspend fun [perform](perform.md)(intent: [I](index.md), state: [S](index.md)?): Flow<[C](index.md)>
Converts the provided [intent](perform.md) of type [I](index.md) into a Flow of type [C](index.md). This means an [Intent](../-intent/index.md) can cause multiple [Change](../-change/index.md)s to be emitted ("StartedLoading", "FinishedLoading", etc). | ## Extensions | Name | Summary | |---|---| -| [invoke](../invoke.md) | [common]
suspend operator fun <[I](../invoke.md) : [Intent](../-intent/index.md), [S](../invoke.md) : [State](../-state/index.md), [C](../invoke.md) : [Change](../-change/index.md)> [Action](index.md)<[I](../invoke.md), [S](../invoke.md), [C](../invoke.md)>.[invoke](../invoke.md)(intent: [I](../invoke.md), state: [S](../invoke.md)?): Flow<[C](../invoke.md)>
A convenience function that delegates to [Action.perform](perform.md) allowing the [Action](index.md) to be invoked like a function. | +| [create](../create.md) | [common]
suspend fun <[I](../create.md) : [Intent](../-intent/index.md), [S](../create.md) : [State](../-state/index.md), [C](../create.md) : [Change](../-change/index.md)> [Action](index.md)<[I](../create.md), [S](../create.md), [C](../create.md)>.[create](../create.md)(intent: [I](../create.md), state: [S](../create.md)?): Flow<[C](../create.md)>
A convenience function that delegates to [Action.perform](perform.md) allowing the [Action](index.md) to be invoked like a function. | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/perform.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/perform.md index a020cde..988d0e9 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/perform.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-action/perform.md @@ -5,9 +5,9 @@ [common]\ abstract suspend fun [perform](perform.md)(intent: [I](index.md), state: [S](index.md)?): Flow<[C](index.md)> -Converts the provided [intent](perform.md) of type [I](index.md) into a Flow of type [C](index.md). This means an [Intent](../-intent/index.md) can cause multiple [Change](../-change/index.md)s to be emitted ("StartedLoading", "FinishedLoading", etc). +Converts the provided [intent](perform.md) of type [I](index.md) into a Flow of type [C](index.md). This means an [Intent](../-intent/index.md) can cause multiple [Change](../-change/index.md)s to be emitted ("StartedLoading", "FinishedLoading", etc). -## Parameters +#### Parameters common diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/index.md index 56089f3..4b0549d 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-basic-state-store/index.md @@ -3,7 +3,13 @@ # BasicStateStore [common]\ -class [BasicStateStore](index.md)<[I](index.md) : [Intent](../-intent/index.md), [C](index.md) : [Change](../-change/index.md), [S](index.md) : [State](../-state/index.md)>(initialState: [S](index.md)?) : [StateStore](../-state-store/index.md)<[I](index.md), [C](index.md), [S](index.md)> +class [BasicStateStore](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)>(val initialState: [S](index.md)? = null) : [MutableStateStore](../-mutable-state-store/index.md)<[I](index.md), [S](index.md), [C](index.md)> + +## Constructors + +| | | +|---|---| +| [BasicStateStore](-basic-state-store.md) | [common]
fun <[S](index.md) : [State](../-state/index.md)> [BasicStateStore](-basic-state-store.md)(initialState: [S](index.md)? = null) | ## Functions diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-change/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-change/index.md index 979b8e0..64d1492 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-change/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-change/index.md @@ -11,16 +11,18 @@ Represents the result of performing an [Action](../-action/index.md) and is used For example: -sealed class FeedChange : Change {\ -\ - data class Loaded(val items: List<Item>) : FeedChange()\ -\ - data class StartedLoading(val currentItems: List<Item>) : FeedChange()\ -\ - data class StartedRefreshing(val currentItems: List<Item>): FeedChange()\ +```kotlin +sealed class FeedChange : Change { + + data class Loaded(val items: List) : FeedChange() + + data class StartedLoading(val currentItems: List) : FeedChange() + + data class StartedRefreshing(val currentItems: List): FeedChange() } +``` -It's common to name the sealed class after the name of the screen that the [Change](index.md) represents ("FeedChange" -> "FeedScreen"). Also, it's common to name the descendants of the sealed class in a past tense verb manner since, at this point, the [Action](../-action/index.md) has already been performed ("StartedLoading", "Loaded", etc). +It's common to name the sealed class after the name of the screen that the [Change](index.md) represents ("FeedChange" -> "FeedScreen"). Also, it's common to name the descendants of the sealed class in a past tense verb manner since, at this point, the [Action](../-action/index.md) has already been performed ("StartedLoading", "Loaded", etc). ## Types diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/index.md index de78724..b5b5683 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-delegating-view-model/index.md @@ -11,15 +11,15 @@ An implementation of [ViewModel](../-view-model/index.md) that delegates the pro | Name | Summary | |---|---| -| [bind](../-view-model/bind.md) | [common]
open override fun [bind](../-view-model/bind.md)()
Binds this [ViewModel](../-view-model/index.md). | +| [bind](../-view-model/bind.md) | [common]
override fun [bind](../-view-model/bind.md)()
Binds this [ViewModel](../-view-model/index.md). | | [intent](../-view-model/intent.md) | [common]
open override fun [intent](../-view-model/intent.md)(to: [I](index.md))
Emits the provided [to](../-intent/index.md) value to trigger an action, that may eventually result in a new [State](../-state/index.md) being rendered. These can be caused by user input events (clicks, scrolls, etc.) or by other means. | -| [perform](perform.md) | [common]
open override fun Flow<[I](index.md)>.[perform](perform.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: suspend ([I](index.md), [S](index.md)?) -> Flow<[C](index.md)>): Flow<[C](index.md)>
Converts this Flow of [Intent](../-intent/index.md)s of type [I](index.md) into a Flow of [Change](../-change/index.md)s of type [C](index.md) using the provided [action](perform.md) function. | -| [performWith](perform-with.md) | [common]
open override fun Flow<[I](index.md)>.[performWith](perform-with.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: [Action](../-action/index.md)<[I](index.md), [S](index.md), [C](index.md)>): Flow<[C](index.md)>
Converts this Flow of [Intent](../-intent/index.md)s of type [I](index.md) into a Flow of [Change](../-change/index.md)s of type [C](index.md) using the provided [action](perform-with.md). | -| [reduce](reduce.md) | [common]
open override fun Flow<[C](index.md)>.[reduce](reduce.md)(reducer: suspend ([S](index.md)?, [C](index.md)) -> [S](index.md)?): Flow<[S](index.md)?>
Converts this Flow of [Change](../-change/index.md)s of type [C](index.md) into a Flow of type [S](index.md) using this [ViewModel](../-view-model/index.md)s [Reducer](../-reducer/index.md). | -| [reduceWith](reduce-with.md) | [common]
open override fun Flow<[C](index.md)>.[reduceWith](reduce-with.md)(reducer: [Reducer](../-reducer/index.md)<[S](index.md), [C](index.md)>): Flow<[S](index.md)?>
Converts this Flow of [Change](../-change/index.md)s of type [C](index.md) into a Flow of type [S](index.md) using this [ViewModel](../-view-model/index.md)s [Reducer](../-reducer/index.md). | -| [render](render.md) | [common]
open override fun Flow<[S](index.md)?>.[render](render.md)(): Flow<[S](index.md)?>
Renders the [State](../-state/index.md)s of type [S](index.md) from this Flow with this [ViewModel](../-view-model/index.md)s [View](../-view/index.md). | -| [startWithInitialState](start-with-initial-state.md) | [common]
open override fun Flow<[S](index.md)?>.[startWithInitialState](start-with-initial-state.md)(): Flow<[S](index.md)?>
Emits the [initialState](../../../../presentation-core/com.chrynan.presentation/-delegating-view-model/initial-state.md) value in onStart if it is not null. | -| [unbind](../-view-model/unbind.md) | [common]
open override fun [unbind](../-view-model/unbind.md)()
Unbinds this [ViewModel](../-view-model/index.md). | +| [perform](../-view-model/perform.md) | [common]
open override fun Flow<[I](index.md)>.[perform](../-view-model/perform.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: suspend ([I](index.md), [S](index.md)?) -> Flow<[C](index.md)>): Flow<[C](index.md)>
Converts this Flow of [Intent](../-intent/index.md)s of type [I](../-view-model/index.md) into a Flow of [Change](../-change/index.md)s of type [C](../-view-model/index.md) using the provided [action](../-view-model/perform.md) function. | +| [performWith](../-view-model/perform-with.md) | [common]
open override fun Flow<[I](index.md)>.[performWith](../-view-model/perform-with.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: [Action](../-action/index.md)<[I](index.md), [S](index.md), [C](index.md)>): Flow<[C](index.md)>
Converts this Flow of [Intent](../-intent/index.md)s of type [I](../-view-model/index.md) into a Flow of [Change](../-change/index.md)s of type [C](../-view-model/index.md) using the provided [action](../-view-model/perform-with.md). | +| [reduce](../-view-model/reduce.md) | [common]
open override fun Flow<[C](index.md)>.[reduce](../-view-model/reduce.md)(reducer: suspend ([S](index.md)?, [C](index.md)) -> [S](index.md)?): Flow<[S](index.md)?>
Converts this Flow of [Change](../-change/index.md)s of type [C](../-view-model/index.md) into a Flow of type [S](../-view-model/index.md) using this [ViewModel](../-view-model/index.md)s [Reducer](../-reducer/index.md). | +| [reduceWith](../-view-model/reduce-with.md) | [common]
open override fun Flow<[C](index.md)>.[reduceWith](../-view-model/reduce-with.md)(reducer: [Reducer](../-reducer/index.md)<[S](index.md), [C](index.md)>): Flow<[S](index.md)?>
Converts this Flow of [Change](../-change/index.md)s of type [C](../-view-model/index.md) into a Flow of type [S](../-view-model/index.md) using this [ViewModel](../-view-model/index.md)s [Reducer](../-reducer/index.md). | +| [render](../-view-model/render.md) | [common]
open override fun Flow<[S](index.md)?>.[render](../-view-model/render.md)(): Flow<[S](index.md)?>
Renders the [State](../-state/index.md)s of type [S](../-view-model/index.md) from this Flow with this [ViewModel](../-view-model/index.md)s [View](../-view/index.md). | +| [startWithInitialState](../-view-model/start-with-initial-state.md) | [common]
open override fun Flow<[S](index.md)?>.[startWithInitialState](../-view-model/start-with-initial-state.md)(): Flow<[S](index.md)?>
Emits the [initialState](../../../../presentation-core/com.chrynan.presentation/-view-model/initial-state.md) value in onStart if it is not null. | +| [unbind](../-view-model/unbind.md) | [common]
override fun [unbind](../-view-model/unbind.md)()
Unbinds this [ViewModel](../-view-model/index.md). | ## Properties diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-event/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-event/index.md index d8b73a3..4f89fe5 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-event/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-event/index.md @@ -3,7 +3,7 @@ # Event [common]\ -data class [Event](index.md)<[T](index.md)>(value: [T](index.md), elapsedSystemTime: [Duration](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html)) +data class [Event](index.md)<[T](index.md)>(val value: [T](index.md), val elapsedSystemTime: [Duration](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html) = currentElapsedSystemTime) An event wrapper class around an [Intent](../-intent/index.md) of type [T](index.md). This class represents the event of an [Intent](../-intent/index.md) being emitted. It contains additional event related properties, such as the [elapsedSystemTime](elapsed-system-time.md) when this event was created. diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-concat/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-concat/index.md index 18f724c..0d943ee 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-concat/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-concat/index.md @@ -7,10 +7,10 @@ object [Concat](index.md) : [FlatMapStrategy](../index.md) Equivalent to the Flow.flatMapConcat function. -## See also +#### See also common -| | | -|---|---| -| flatMapConcat | | +| | +|---| +| flatMapConcat | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-latest/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-latest/index.md index 47732c1..ffe6a4f 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-latest/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-latest/index.md @@ -7,10 +7,10 @@ object [Latest](index.md) : [FlatMapStrategy](../index.md) Equivalent to the Flow.flatMapLatest function. -## See also +#### See also common -| | | -|---|---| -| flatMapLatest | | +| | +|---| +| flatMapLatest | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-merge/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-merge/index.md index 1bbea34..9b08aac 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-merge/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/-merge/index.md @@ -3,17 +3,17 @@ # Merge [common]\ -data class [Merge](index.md)(limit: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) : [FlatMapStrategy](../index.md) +data class [Merge](index.md)(val limit: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) = DEFAULT_CONCURRENCY) : [FlatMapStrategy](../index.md) Equivalent to the Flow.flatMapMerge function. -## See also +#### See also common -| | | -|---|---| -| flatMapMerge | | +| | +|---| +| flatMapMerge | ## Constructors diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/index.md index 97674ba..69895d2 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-flat-map-strategy/index.md @@ -15,7 +15,7 @@ A sealed class that indicates an approach to polling. Each approach determines h |---|---| | [Concat](-concat/index.md) | [common]
object [Concat](-concat/index.md) : [FlatMapStrategy](index.md)
Equivalent to the Flow.flatMapConcat function. | | [Latest](-latest/index.md) | [common]
object [Latest](-latest/index.md) : [FlatMapStrategy](index.md)
Equivalent to the Flow.flatMapLatest function. | -| [Merge](-merge/index.md) | [common]
data class [Merge](-merge/index.md)(limit: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) : [FlatMapStrategy](index.md)
Equivalent to the Flow.flatMapMerge function. | +| [Merge](-merge/index.md) | [common]
data class [Merge](-merge/index.md)(val limit: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) = DEFAULT_CONCURRENCY) : [FlatMapStrategy](index.md)
Equivalent to the Flow.flatMapMerge function. | ## Inheritors diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md index 2d9a88f..8df1183 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md @@ -11,16 +11,18 @@ Represents the desire to perform an action. A [View](../-view/index.md) emits [I For example: -sealed class FeedIntent : Intent {\ -\ - object LoadInitial : FeedIntent()\ -\ - data class LoadMore(val currentItems: List<Item>) : FeedIntent()\ -\ - data class Refresh(val currentItems: List<Item>) : FeedIntent()\ +```kotlin +sealed class FeedIntent : Intent { + + object LoadInitial : FeedIntent() + + data class LoadMore(val currentItems: List) : FeedIntent() + + data class Refresh(val currentItems: List) : FeedIntent() } +``` -It's common to name the sealed class after the name of the screen that the [Intent](index.md) represents ("FeedIntent" -> "FeedScreen"). Also, it's common to name the descendants of the sealed class in a declarative manner ("load", "refresh", etc). +It's common to name the sealed class after the name of the screen that the [Intent](index.md) represents ("FeedIntent" -> "FeedScreen"). Also, it's common to name the descendants of the sealed class in a declarative manner ("load", "refresh", etc). ## Types diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/index.md new file mode 100644 index 0000000..f78082d --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/index.md @@ -0,0 +1,34 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[MutableStateStore](index.md) + +# MutableStateStore + +[common]\ +interface [MutableStateStore](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)> : [StateStore](../-state-store/index.md)<[I](index.md), [S](index.md), [C](index.md)> + +## Functions + +| Name | Summary | +|---|---| +| [reset](reset.md) | [common]
abstract fun [reset](reset.md)() | +| [updateCurrentState](update-current-state.md) | [common]
abstract fun [updateCurrentState](update-current-state.md)(state: [S](index.md)?) | +| [updateLastChange](update-last-change.md) | [common]
abstract fun [updateLastChange](update-last-change.md)(change: [C](index.md)) | +| [updateLastIntent](update-last-intent.md) | [common]
abstract fun [updateLastIntent](update-last-intent.md)(intent: [I](index.md)) | + +## Properties + +| Name | Summary | +|---|---| +| [changes](../-state-store/changes.md) | [common]
abstract val [changes](../-state-store/changes.md): StateFlow<[Event](../-event/index.md)<[C](index.md)>?> | +| [currentState](../-state-store/current-state.md) | [common]
open val [currentState](../-state-store/current-state.md): [S](index.md)? | +| [initialState](../-state-store/initial-state.md) | [common]
abstract val [initialState](../-state-store/initial-state.md): [S](index.md)? | +| [intents](../-state-store/intents.md) | [common]
abstract val [intents](../-state-store/intents.md): StateFlow<[Event](../-event/index.md)<[I](index.md)>?> | +| [isPendingStateUpdate](../-state-store/is-pending-state-update.md) | [common]
abstract val [isPendingStateUpdate](../-state-store/is-pending-state-update.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [lastChange](../-state-store/last-change.md) | [common]
open val [lastChange](../-state-store/last-change.md): [C](index.md)? | +| [lastIntent](../-state-store/last-intent.md) | [common]
open val [lastIntent](../-state-store/last-intent.md): [I](index.md)? | +| [states](../-state-store/states.md) | [common]
abstract val [states](../-state-store/states.md): StateFlow<[Event](../-event/index.md)<[S](index.md)?>> | + +## Inheritors + +| Name | +|---| +| [BasicStateStore](../-basic-state-store/index.md) | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/reset.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/reset.md new file mode 100644 index 0000000..bffda43 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/reset.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[MutableStateStore](index.md)/[reset](reset.md) + +# reset + +[common]\ +abstract fun [reset](reset.md)() diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-current-state.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-current-state.md new file mode 100644 index 0000000..4e6c29f --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-current-state.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[MutableStateStore](index.md)/[updateCurrentState](update-current-state.md) + +# updateCurrentState + +[common]\ +abstract fun [updateCurrentState](update-current-state.md)(state: [S](index.md)?) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-change.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-change.md new file mode 100644 index 0000000..bdc5a97 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-change.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[MutableStateStore](index.md)/[updateLastChange](update-last-change.md) + +# updateLastChange + +[common]\ +abstract fun [updateLastChange](update-last-change.md)(change: [C](index.md)) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-intent.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-intent.md new file mode 100644 index 0000000..11ee1bb --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-mutable-state-store/update-last-intent.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[MutableStateStore](index.md)/[updateLastIntent](update-last-intent.md) + +# updateLastIntent + +[common]\ +abstract fun [updateLastIntent](update-last-intent.md)(intent: [I](index.md)) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-platform-view-model/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-platform-view-model/index.md new file mode 100644 index 0000000..8e09a43 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-platform-view-model/index.md @@ -0,0 +1,26 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[PlatformViewModel](index.md) + +# PlatformViewModel + +[common]\ +expect abstract class [PlatformViewModel](index.md) + +The base class that a [ViewModel](../-view-model/index.md) inherits from. This allows each supported platform to have a platform-specific base ViewModel component implementation. For instance, on Android this class can extend from the `androidx.lifecycle.ViewModel` component so that it can be used with the Android lifecycle. + +[android]\ +actual abstract class [PlatformViewModel](index.md) : [ViewModel](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModel.html) + +[ios, js, jvm]\ +actual abstract class [PlatformViewModel](index.md) + +## Functions + +| Name | Summary | +|---|---| +| [addCloseable](index.md#264516373%2FFunctions%2F174188672) | [android]
open fun [addCloseable](index.md#264516373%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Closeable](https://developer.android.com/reference/kotlin/java/io/Closeable.html)) | + +## Inheritors + +| Name | +|---| +| [ViewModel](../-view-model/index.md) | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md index b1787ae..0420035 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-presentation-fragment/index.md @@ -9,25 +9,27 @@ An Android [Fragment](https://developer.android.com/reference/kotlin/androidx/fr Example usage: -class HomeFragment : PresentationFragment<HomeIntent, HomeState, HomeChange>() {\ -\ - override val viewModel = ...\ -\ - override fun onCreateView(\ - inflater: LayoutInflater,\ - container: ViewGroup?,\ - savedInstanceState: Bundle?) = ...\ -\ - override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\ - super.onViewCreated(view, savedInstanceState)\ -\ - intent(to HomeIntent.Load)\ - }\ -\ - override fun render(state: HomeState) {\ - when (state) { ... }\ - }\ +```kotlin +class HomeFragment : PresentationFragment() { + + override val viewModel = ... + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle?) = ... + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + + intent(to HomeIntent.Load) + } + + override fun render(state: HomeState) { + when (state) { ... } + } } +``` ## Constructors @@ -39,172 +41,119 @@ class HomeFragment : PresentationFragment<HomeIntent, HomeState, HomeChange&g | Name | Summary | |---|---| -| [callStartTransitionListener](index.md#-224120179%2FFunctions%2F174188672) | [android]
open fun [callStartTransitionListener](index.md#-224120179%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [createFragmentContainer](index.md#-1146440512%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [createFragmentContainer](index.md#-1146440512%2FFunctions%2F174188672)(): [FragmentContainer](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentContainer.html) | | [dump](index.md#-554049583%2FFunctions%2F174188672) | [android]
open fun [dump](index.md#-554049583%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [FileDescriptor](https://developer.android.com/reference/kotlin/java/io/FileDescriptor.html)?, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [PrintWriter](https://developer.android.com/reference/kotlin/java/io/PrintWriter.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p3: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?) | | [equals](index.md#62266428%2FFunctions%2F174188672) | [android]
operator override fun [equals](index.md#62266428%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)other: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [findFragmentByWho](index.md#557652813%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [findFragmentByWho](index.md#557652813%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | -| [generateActivityResultKey](index.md#1452421015%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [generateActivityResultKey](index.md#1452421015%2FFunctions%2F174188672)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [getActivity](index.md#1742329008%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getActivity](index.md#1742329008%2FFunctions%2F174188672)(): [FragmentActivity](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentActivity.html)? | | [getAllowEnterTransitionOverlap](index.md#-1150553896%2FFunctions%2F174188672) | [android]
open fun [getAllowEnterTransitionOverlap](index.md#-1150553896%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [getAllowReturnTransitionOverlap](index.md#2133211558%2FFunctions%2F174188672) | [android]
open fun [getAllowReturnTransitionOverlap](index.md#2133211558%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [getAnimatingAway](index.md#-1187937809%2FFunctions%2F174188672) | [android]
open fun [getAnimatingAway](index.md#-1187937809%2FFunctions%2F174188672)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | | [getArguments](index.md#-234293691%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getArguments](index.md#-234293691%2FFunctions%2F174188672)(): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)? | | [getChildFragmentManager](index.md#-1694755202%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getChildFragmentManager](index.md#-1694755202%2FFunctions%2F174188672)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | | [getContext](index.md#1977143180%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getContext](index.md#1977143180%2FFunctions%2F174188672)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)? | +| [getDefaultViewModelCreationExtras](index.md#1627322298%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [getDefaultViewModelCreationExtras](index.md#1627322298%2FFunctions%2F174188672)(): [CreationExtras](https://developer.android.com/reference/kotlin/androidx/lifecycle/viewmodel/CreationExtras.html) | | [getDefaultViewModelProviderFactory](index.md#1905320965%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getDefaultViewModelProviderFactory](index.md#1905320965%2FFunctions%2F174188672)(): [ViewModelProvider.Factory](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory.html) | -| [getEnterAnim](index.md#1033854450%2FFunctions%2F174188672) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getEnterAnim](index.md#1033854450%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [getEnterTransition](index.md#1173992110%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getEnterTransition](index.md#1173992110%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getEnterTransitionCallback](index.md#-79955735%2FFunctions%2F174188672) | [android]
open fun [getEnterTransitionCallback](index.md#-79955735%2FFunctions%2F174188672)(): [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html) | -| [getExitAnim](index.md#1182269296%2FFunctions%2F174188672) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getExitAnim](index.md#1182269296%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [getExitTransition](index.md#560381356%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getExitTransition](index.md#560381356%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getExitTransitionCallback](index.md#-505076249%2FFunctions%2F174188672) | [android]
open fun [getExitTransitionCallback](index.md#-505076249%2FFunctions%2F174188672)(): [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html) | -| [getFocusedView](index.md#722352159%2FFunctions%2F174188672) | [android]
open fun [getFocusedView](index.md#722352159%2FFunctions%2F174188672)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | -| [getFragmentManager](index.md#1969862590%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
~~fun~~ [~~getFragmentManager~~](index.md#1969862590%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html)? | +| [getFragmentManager](index.md#1969862590%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [~~getFragmentManager~~](index.md#1969862590%2FFunctions%2F174188672)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html)? | | [getHost](index.md#-720264905%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getHost](index.md#-720264905%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | | [getId](index.md#1461313956%2FFunctions%2F174188672) | [android]
fun [getId](index.md#1461313956%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [getLayoutInflater](index.md#-877329302%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getLayoutInflater](index.md#-877329302%2FFunctions%2F174188672)(): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
~~open~~ ~~fun~~ [~~getLayoutInflater~~](index.md#2105493816%2FFunctions%2F174188672)~~(~~@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p0~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~~~:~~ [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | +| [getLayoutInflater](index.md#-877329302%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getLayoutInflater](index.md#-877329302%2FFunctions%2F174188672)(): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
open fun [~~getLayoutInflater~~](index.md#2105493816%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | | [getLifecycle](index.md#1160562353%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getLifecycle](index.md#1160562353%2FFunctions%2F174188672)(): [Lifecycle](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.html) | -| [getLoaderManager](index.md#-1183069951%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
~~open~~ ~~fun~~ [~~getLoaderManager~~](index.md#-1183069951%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [LoaderManager](https://developer.android.com/reference/kotlin/androidx/loader/app/LoaderManager.html) | -| [getNextTransition](index.md#539177911%2FFunctions%2F174188672) | [android]
open fun [getNextTransition](index.md#539177911%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | +| [getLoaderManager](index.md#-1183069951%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [~~getLoaderManager~~](index.md#-1183069951%2FFunctions%2F174188672)(): [LoaderManager](https://developer.android.com/reference/kotlin/androidx/loader/app/LoaderManager.html) | | [getParentFragment](index.md#571913093%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getParentFragment](index.md#571913093%2FFunctions%2F174188672)(): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | | [getParentFragmentManager](index.md#776979464%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getParentFragmentManager](index.md#776979464%2FFunctions%2F174188672)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | -| [getPopDirection](index.md#-1305569423%2FFunctions%2F174188672) | [android]
open fun [getPopDirection](index.md#-1305569423%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [getPopEnterAnim](index.md#-1636926169%2FFunctions%2F174188672) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getPopEnterAnim](index.md#-1636926169%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [getPopExitAnim](index.md#1650304411%2FFunctions%2F174188672) | [android]
@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)
open fun [getPopExitAnim](index.md#1650304411%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [getPostOnViewCreatedAlpha](index.md#-576959675%2FFunctions%2F174188672) | [android]
open fun [getPostOnViewCreatedAlpha](index.md#-576959675%2FFunctions%2F174188672)(): [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html) | | [getReenterTransition](index.md#1906483809%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getReenterTransition](index.md#1906483809%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | | [getResources](index.md#-340301738%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getResources](index.md#-340301738%2FFunctions%2F174188672)(): [Resources](https://developer.android.com/reference/kotlin/android/content/res/Resources.html) | -| [getRetainInstance](index.md#-301500443%2FFunctions%2F174188672) | [android]
~~fun~~ [~~getRetainInstance~~](index.md#-301500443%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [getRetainInstance](index.md#-301500443%2FFunctions%2F174188672) | [android]
fun [~~getRetainInstance~~](index.md#-301500443%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [getReturnTransition](index.md#-564572198%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getReturnTransition](index.md#-564572198%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getSavedStateRegistry](index.md#1899869080%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun [getSavedStateRegistry](index.md#1899869080%2FFunctions%2F174188672)(): [SavedStateRegistry](https://developer.android.com/reference/kotlin/androidx/savedstate/SavedStateRegistry.html) | | [getSharedElementEnterTransition](index.md#-95190487%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getSharedElementEnterTransition](index.md#-95190487%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | | [getSharedElementReturnTransition](index.md#-1254527041%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getSharedElementReturnTransition](index.md#-1254527041%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? | -| [getSharedElementSourceNames](index.md#-2030676727%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getSharedElementSourceNames](index.md#-2030676727%2FFunctions%2F174188672)(): [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> | -| [getSharedElementTargetNames](index.md#-2051347457%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getSharedElementTargetNames](index.md#-2051347457%2FFunctions%2F174188672)(): [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> | | [getString](index.md#385078924%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getString](index.md#385078924%2FFunctions%2F174188672)(@[StringRes](https://developer.android.com/reference/kotlin/androidx/annotation/StringRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getString](index.md#1504111588%2FFunctions%2F174188672)(@[StringRes](https://developer.android.com/reference/kotlin/androidx/annotation/StringRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)vararg p1: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [getTag](index.md#-2141867263%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [getTag](index.md#-2141867263%2FFunctions%2F174188672)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? | -| [getTargetFragment](index.md#-1862646914%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
~~fun~~ [~~getTargetFragment~~](index.md#-1862646914%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | -| [getTargetRequestCode](index.md#97949808%2FFunctions%2F174188672) | [android]
~~fun~~ [~~getTargetRequestCode~~](index.md#97949808%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | +| [getTargetFragment](index.md#-1862646914%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
fun [~~getTargetFragment~~](index.md#-1862646914%2FFunctions%2F174188672)(): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)? | +| [getTargetRequestCode](index.md#97949808%2FFunctions%2F174188672) | [android]
fun [~~getTargetRequestCode~~](index.md#97949808%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [getText](index.md#94198896%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [getText](index.md#94198896%2FFunctions%2F174188672)(@[StringRes](https://developer.android.com/reference/kotlin/androidx/annotation/StringRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html) | -| [getUserVisibleHint](index.md#-1778397491%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~getUserVisibleHint~~](index.md#-1778397491%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [getUserVisibleHint](index.md#-1778397491%2FFunctions%2F174188672) | [android]
open fun [~~getUserVisibleHint~~](index.md#-1778397491%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [getView](index.md#1437008602%2FFunctions%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getView](index.md#1437008602%2FFunctions%2F174188672)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html)? | | [getViewLifecycleOwner](index.md#1042312881%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getViewLifecycleOwner](index.md#1042312881%2FFunctions%2F174188672)(): [LifecycleOwner](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner.html) | | [getViewLifecycleOwnerLiveData](index.md#-894249829%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getViewLifecycleOwnerLiveData](index.md#-894249829%2FFunctions%2F174188672)(): [LiveData](https://developer.android.com/reference/kotlin/androidx/lifecycle/LiveData.html)<[LifecycleOwner](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner.html)> | | [getViewModelStore](index.md#-1673004478%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getViewModelStore](index.md#-1673004478%2FFunctions%2F174188672)(): [ViewModelStore](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelStore.html) | | [hashCode](index.md#-61990614%2FFunctions%2F174188672) | [android]
override fun [hashCode](index.md#-61990614%2FFunctions%2F174188672)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | | [hasOptionsMenu](index.md#1875754530%2FFunctions%2F174188672) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
fun [hasOptionsMenu](index.md#1875754530%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [initState](index.md#2108682580%2FFunctions%2F174188672) | [android]
open fun [initState](index.md#2108682580%2FFunctions%2F174188672)() | | [isAdded](index.md#-746294177%2FFunctions%2F174188672) | [android]
fun [isAdded](index.md#-746294177%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isDetached](index.md#781119401%2FFunctions%2F174188672) | [android]
fun [isDetached](index.md#781119401%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isHidden](index.md#-815563791%2FFunctions%2F174188672) | [android]
fun [isHidden](index.md#-815563791%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [isInBackStack](index.md#1373756707%2FFunctions%2F174188672) | [android]
fun [isInBackStack](index.md#1373756707%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isInLayout](index.md#-28072692%2FFunctions%2F174188672) | [android]
fun [isInLayout](index.md#-28072692%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isMenuVisible](index.md#320812%2FFunctions%2F174188672) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
fun [isMenuVisible](index.md#320812%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [isPostponed](index.md#-1936867951%2FFunctions%2F174188672) | [android]
open fun [isPostponed](index.md#-1936867951%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isRemoving](index.md#-1835815494%2FFunctions%2F174188672) | [android]
fun [isRemoving](index.md#-1835815494%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isResumed](index.md#-1476032792%2FFunctions%2F174188672) | [android]
fun [isResumed](index.md#-1476032792%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isStateSaved](index.md#-116937819%2FFunctions%2F174188672) | [android]
fun [isStateSaved](index.md#-116937819%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [isVisible](index.md#1723885741%2FFunctions%2F174188672) | [android]
fun [isVisible](index.md#1723885741%2FFunctions%2F174188672)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [noteStateNotSaved](index.md#-337516894%2FFunctions%2F174188672) | [android]
open fun [noteStateNotSaved](index.md#-337516894%2FFunctions%2F174188672)() | -| [onActivityCreated](index.md#-93866391%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
~~open~~ ~~fun~~ [~~onActivityCreated~~](index.md#-93866391%2FFunctions%2F174188672)~~(~~@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p0~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~ | -| [onActivityResult](index.md#-632987463%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~onActivityResult~~](index.md#-632987463%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?~~)~~ | -| [onAttach](index.md#1801429126%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
~~open~~ ~~fun~~ [~~onAttach~~](index.md#1801429126%2FFunctions%2F174188672)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html)~~)~~
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onAttach](index.md#-433541178%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)) | -| [onAttachFragment](index.md#584121595%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
~~open~~ ~~fun~~ [~~onAttachFragment~~](index.md#584121595%2FFunctions%2F174188672)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)~~)~~ | +| [onActivityCreated](index.md#-93866391%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [~~onActivityCreated~~](index.md#-93866391%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | +| [onActivityResult](index.md#-632987463%2FFunctions%2F174188672) | [android]
open fun [~~onActivityResult~~](index.md#-632987463%2FFunctions%2F174188672)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?) | +| [onAttach](index.md#1801429126%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [~~onAttach~~](index.md#1801429126%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html))
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onAttach](index.md#-433541178%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)) | +| [onAttachFragment](index.md#584121595%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onAttachFragment~~](index.md#584121595%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)) | | [onConfigurationChanged](index.md#-1504446138%2FFunctions%2F174188672) | [android]
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [onConfigurationChanged](index.md#-1504446138%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)) | | [onContextItemSelected](index.md#-374922321%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onContextItemSelected](index.md#-374922321%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [onCreate](index.md#1065934424%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onCreate](index.md#1065934424%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [onCreateAnimation](index.md#-285371613%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [onCreateAnimation](index.md#-285371613%2FFunctions%2F174188672)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Animation](https://developer.android.com/reference/kotlin/android/view/animation/Animation.html)? | | [onCreateAnimator](index.md#-911678118%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [onCreateAnimator](index.md#-911678118%2FFunctions%2F174188672)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Animator](https://developer.android.com/reference/kotlin/android/animation/Animator.html)? | | [onCreateContextMenu](index.md#-723660536%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open override fun [onCreateContextMenu](index.md#-723660536%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ContextMenu](https://developer.android.com/reference/kotlin/android/view/ContextMenu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [View](https://developer.android.com/reference/kotlin/android/view/View.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [ContextMenu.ContextMenuInfo](https://developer.android.com/reference/kotlin/android/view/ContextMenu.ContextMenuInfo.html)?) | -| [onCreateOptionsMenu](index.md#988498165%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onCreateOptionsMenu](index.md#988498165%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html)) | +| [onCreateOptionsMenu](index.md#988498165%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onCreateOptionsMenu~~](index.md#988498165%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html)) | | [onCreateView](index.md#-114875845%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [onCreateView](index.md#-114875845%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html)?, @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [View](https://developer.android.com/reference/kotlin/android/view/View.html)? | | [onDestroy](index.md#497921754%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onDestroy](index.md#497921754%2FFunctions%2F174188672)() | -| [onDestroyOptionsMenu](index.md#-220306909%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onDestroyOptionsMenu](index.md#-220306909%2FFunctions%2F174188672)() | +| [onDestroyOptionsMenu](index.md#-220306909%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onDestroyOptionsMenu~~](index.md#-220306909%2FFunctions%2F174188672)() | | [onDestroyView](on-destroy-view.md) | [android]
open override fun [onDestroyView](on-destroy-view.md)() | | [onDetach](index.md#133952211%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onDetach](index.md#133952211%2FFunctions%2F174188672)() | | [onGetLayoutInflater](index.md#-1455414089%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [onGetLayoutInflater](index.md#-1455414089%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | | [onHiddenChanged](index.md#-847096913%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onHiddenChanged](index.md#-847096913%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onInflate](index.md#-2081977173%2FFunctions%2F174188672) | [android]
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
~~open~~ ~~fun~~ [~~onInflate~~](index.md#-2081977173%2FFunctions%2F174188672)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html)~~,~~ @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p1~~~~:~~ [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onInflate](index.md#1247156227%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | +| [onInflate](index.md#-2081977173%2FFunctions%2F174188672) | [android]
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [~~onInflate~~](index.md#-2081977173%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
@[UiThread](https://developer.android.com/reference/kotlin/androidx/annotation/UiThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onInflate](index.md#1247156227%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [onLowMemory](index.md#-414169089%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [onLowMemory](index.md#-414169089%2FFunctions%2F174188672)() | | [onMultiWindowModeChanged](index.md#1696134019%2FFunctions%2F174188672) | [android]
open fun [onMultiWindowModeChanged](index.md#1696134019%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onOptionsItemSelected](index.md#1600953310%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onOptionsItemSelected](index.md#1600953310%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [onOptionsMenuClosed](index.md#1628608206%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onOptionsMenuClosed](index.md#1628608206%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | +| [onOptionsItemSelected](index.md#1600953310%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onOptionsItemSelected~~](index.md#1600953310%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | +| [onOptionsMenuClosed](index.md#1628608206%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onOptionsMenuClosed~~](index.md#1628608206%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | | [onPause](on-pause.md) | [android]
open override fun [onPause](on-pause.md)() | | [onPictureInPictureModeChanged](index.md#598686659%2FFunctions%2F174188672) | [android]
open fun [onPictureInPictureModeChanged](index.md#598686659%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onPrepareOptionsMenu](index.md#665402569%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onPrepareOptionsMenu](index.md#665402569%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | +| [onPrepareOptionsMenu](index.md#665402569%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [~~onPrepareOptionsMenu~~](index.md#665402569%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | | [onPrimaryNavigationFragmentChanged](index.md#-383842019%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
open fun [onPrimaryNavigationFragmentChanged](index.md#-383842019%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [onRequestPermissionsResult](index.md#-1097850413%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~onRequestPermissionsResult~~](index.md#-1097850413%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p1~~~~:~~ [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>~~,~~ @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p2~~~~:~~ [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)~~)~~ | +| [onRequestPermissionsResult](index.md#-1097850413%2FFunctions%2F174188672) | [android]
open fun [~~onRequestPermissionsResult~~](index.md#-1097850413%2FFunctions%2F174188672)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)) | | [onResume](on-resume.md) | [android]
open override fun [onResume](on-resume.md)() | | [onSaveInstanceState](on-save-instance-state.md) | [android]
open override fun [onSaveInstanceState](on-save-instance-state.md)(outState: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | | [onStart](index.md#1903974706%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onStart](index.md#1903974706%2FFunctions%2F174188672)() | | [onStop](index.md#664095620%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onStop](index.md#664095620%2FFunctions%2F174188672)() | | [onViewCreated](on-view-created.md) | [android]
open override fun [onViewCreated](on-view-created.md)(view: [View](https://developer.android.com/reference/kotlin/android/view/View.html), savedInstanceState: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [onViewStateRestored](index.md#-1001464512%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open fun [onViewStateRestored](index.md#-1001464512%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [performActivityCreated](index.md#-321741016%2FFunctions%2F174188672) | [android]
open fun [performActivityCreated](index.md#-321741016%2FFunctions%2F174188672)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | -| [performAttach](index.md#1570856271%2FFunctions%2F174188672) | [android]
open fun [performAttach](index.md#1570856271%2FFunctions%2F174188672)() | -| [performConfigurationChanged](index.md#707150488%2FFunctions%2F174188672) | [android]
open fun [performConfigurationChanged](index.md#707150488%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)) | -| [performContextItemSelected](index.md#-1476518627%2FFunctions%2F174188672) | [android]
open fun [performContextItemSelected](index.md#-1476518627%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performCreate](index.md#-1403258179%2FFunctions%2F174188672) | [android]
open fun [performCreate](index.md#-1403258179%2FFunctions%2F174188672)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | -| [performCreateOptionsMenu](index.md#-1564131485%2FFunctions%2F174188672) | [android]
open fun [performCreateOptionsMenu](index.md#-1564131485%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performCreateView](index.md#1612944809%2FFunctions%2F174188672) | [android]
open fun [performCreateView](index.md#1612944809%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html)?, @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [performDestroy](index.md#-610101332%2FFunctions%2F174188672) | [android]
open fun [performDestroy](index.md#-610101332%2FFunctions%2F174188672)() | -| [performDestroyView](index.md#1940721927%2FFunctions%2F174188672) | [android]
open fun [performDestroyView](index.md#1940721927%2FFunctions%2F174188672)() | -| [performDetach](index.md#-1841453119%2FFunctions%2F174188672) | [android]
open fun [performDetach](index.md#-1841453119%2FFunctions%2F174188672)() | -| [performGetLayoutInflater](index.md#-70091127%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [performGetLayoutInflater](index.md#-70091127%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | -| [performLowMemory](index.md#-72465327%2FFunctions%2F174188672) | [android]
open fun [performLowMemory](index.md#-72465327%2FFunctions%2F174188672)() | -| [performMultiWindowModeChanged](index.md#1691472881%2FFunctions%2F174188672) | [android]
open fun [performMultiWindowModeChanged](index.md#1691472881%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [performOptionsItemSelected](index.md#499357004%2FFunctions%2F174188672) | [android]
open fun [performOptionsItemSelected](index.md#499357004%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuItem](https://developer.android.com/reference/kotlin/android/view/MenuItem.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performOptionsMenuClosed](index.md#-2067481924%2FFunctions%2F174188672) | [android]
open fun [performOptionsMenuClosed](index.md#-2067481924%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)) | -| [performPause](index.md#-305194128%2FFunctions%2F174188672) | [android]
open fun [performPause](index.md#-305194128%2FFunctions%2F174188672)() | -| [performPictureInPictureModeChanged](index.md#808939541%2FFunctions%2F174188672) | [android]
open fun [performPictureInPictureModeChanged](index.md#808939541%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [performPrepareOptionsMenu](index.md#2050725531%2FFunctions%2F174188672) | [android]
open fun [performPrepareOptionsMenu](index.md#2050725531%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Menu](https://developer.android.com/reference/kotlin/android/view/Menu.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [performPrimaryNavigationFragmentChanged](index.md#-1667562682%2FFunctions%2F174188672) | [android]
open fun [performPrimaryNavigationFragmentChanged](index.md#-1667562682%2FFunctions%2F174188672)() | -| [performResume](index.md#-1784940441%2FFunctions%2F174188672) | [android]
open fun [performResume](index.md#-1784940441%2FFunctions%2F174188672)() | -| [performSaveInstanceState](index.md#-1392271474%2FFunctions%2F174188672) | [android]
open fun [performSaveInstanceState](index.md#-1392271474%2FFunctions%2F174188672)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | -| [performStart](index.md#316231300%2FFunctions%2F174188672) | [android]
open fun [performStart](index.md#316231300%2FFunctions%2F174188672)() | -| [performStop](index.md#-218405902%2FFunctions%2F174188672) | [android]
open fun [performStop](index.md#-218405902%2FFunctions%2F174188672)() | -| [performViewCreated](index.md#-1980322109%2FFunctions%2F174188672) | [android]
open fun [performViewCreated](index.md#-1980322109%2FFunctions%2F174188672)() | | [postponeEnterTransition](index.md#-65706338%2FFunctions%2F174188672) | [android]
open fun [postponeEnterTransition](index.md#-65706338%2FFunctions%2F174188672)()
fun [postponeEnterTransition](index.md#-718244554%2FFunctions%2F174188672)(p0: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [TimeUnit](https://developer.android.com/reference/kotlin/java/util/concurrent/TimeUnit.html)) | | [registerForActivityResult](index.md#206779778%2FFunctions%2F174188672) | [android]
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun <[I](index.md#206779778%2FFunctions%2F174188672) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html), [O](index.md#206779778%2FFunctions%2F174188672) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [registerForActivityResult](index.md#206779778%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActivityResultContract](https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract.html)<[I](index.md#206779778%2FFunctions%2F174188672), [O](index.md#206779778%2FFunctions%2F174188672)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [ActivityResultCallback](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultCallback.html)<[O](index.md#206779778%2FFunctions%2F174188672)>): [ActivityResultLauncher](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultLauncher.html)<[I](index.md#206779778%2FFunctions%2F174188672)>
@[MainThread](https://developer.android.com/reference/kotlin/androidx/annotation/MainThread.html)
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun <[I](index.md#1704734437%2FFunctions%2F174188672) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html), [O](index.md#1704734437%2FFunctions%2F174188672) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [registerForActivityResult](index.md#1704734437%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActivityResultContract](https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract.html)<[I](index.md#1704734437%2FFunctions%2F174188672), [O](index.md#1704734437%2FFunctions%2F174188672)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [ActivityResultRegistry](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultRegistry.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [ActivityResultCallback](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultCallback.html)<[O](index.md#1704734437%2FFunctions%2F174188672)>): [ActivityResultLauncher](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultLauncher.html)<[I](index.md#1704734437%2FFunctions%2F174188672)> | | [registerForContextMenu](index.md#-1559274026%2FFunctions%2F174188672) | [android]
open fun [registerForContextMenu](index.md#-1559274026%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) | -| [requestPermissions](index.md#-211209511%2FFunctions%2F174188672) | [android]
~~fun~~ [~~requestPermissions~~](index.md#-211209511%2FFunctions%2F174188672)~~(~~@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)~~p0~~~~:~~ [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~)~~ | +| [requestPermissions](index.md#-211209511%2FFunctions%2F174188672) | [android]
fun [~~requestPermissions~~](index.md#-211209511%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | | [requireActivity](index.md#935490689%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireActivity](index.md#935490689%2FFunctions%2F174188672)(): [FragmentActivity](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentActivity.html) | | [requireArguments](index.md#523522196%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireArguments](index.md#523522196%2FFunctions%2F174188672)(): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | | [requireContext](index.md#-681283173%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireContext](index.md#-681283173%2FFunctions%2F174188672)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) | -| [requireFragmentManager](index.md#439737037%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
~~fun~~ [~~requireFragmentManager~~](index.md#439737037%2FFunctions%2F174188672)~~(~~~~)~~~~:~~ [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | +| [requireFragmentManager](index.md#439737037%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [~~requireFragmentManager~~](index.md#439737037%2FFunctions%2F174188672)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | | [requireHost](index.md#966578568%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireHost](index.md#966578568%2FFunctions%2F174188672)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html) | | [requireParentFragment](index.md#-1832750442%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireParentFragment](index.md#-1832750442%2FFunctions%2F174188672)(): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) | | [requireView](index.md#-1171115221%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
fun [requireView](index.md#-1171115221%2FFunctions%2F174188672)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | -| [restoreChildFragmentState](index.md#235649584%2FFunctions%2F174188672) | [android]
open fun [restoreChildFragmentState](index.md#235649584%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [restoreViewState](index.md#184445038%2FFunctions%2F174188672) | [android]
fun [restoreViewState](index.md#184445038%2FFunctions%2F174188672)(p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)) | | [setAllowEnterTransitionOverlap](index.md#1554528297%2FFunctions%2F174188672) | [android]
open fun [setAllowEnterTransitionOverlap](index.md#1554528297%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [setAllowReturnTransitionOverlap](index.md#1912983007%2FFunctions%2F174188672) | [android]
open fun [setAllowReturnTransitionOverlap](index.md#1912983007%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [setAnimations](index.md#1959139291%2FFunctions%2F174188672) | [android]
open fun [setAnimations](index.md#1959139291%2FFunctions%2F174188672)(@[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[AnimRes](https://developer.android.com/reference/kotlin/androidx/annotation/AnimRes.html)p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | | [setArguments](index.md#466524511%2FFunctions%2F174188672) | [android]
open fun [setArguments](index.md#466524511%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [setEnterSharedElementCallback](index.md#-1725514475%2FFunctions%2F174188672) | [android]
open fun [setEnterSharedElementCallback](index.md#-1725514475%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html)?) | | [setEnterTransition](index.md#-1695109112%2FFunctions%2F174188672) | [android]
open fun [setEnterTransition](index.md#-1695109112%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | | [setExitSharedElementCallback](index.md#-1836021777%2FFunctions%2F174188672) | [android]
open fun [setExitSharedElementCallback](index.md#-1836021777%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [SharedElementCallback](https://developer.android.com/reference/kotlin/androidx/core/app/SharedElementCallback.html)?) | | [setExitTransition](index.md#1100471522%2FFunctions%2F174188672) | [android]
open fun [setExitTransition](index.md#1100471522%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setFocusedView](index.md#-1932088408%2FFunctions%2F174188672) | [android]
open fun [setFocusedView](index.md#-1932088408%2FFunctions%2F174188672)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) | -| [setHasOptionsMenu](index.md#872901461%2FFunctions%2F174188672) | [android]
open fun [setHasOptionsMenu](index.md#872901461%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | +| [setHasOptionsMenu](index.md#872901461%2FFunctions%2F174188672) | [android]
open fun [~~setHasOptionsMenu~~](index.md#872901461%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [setInitialSavedState](index.md#1756215292%2FFunctions%2F174188672) | [android]
open fun [setInitialSavedState](index.md#1756215292%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Fragment.SavedState](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.SavedState.html)?) | | [setMenuVisibility](index.md#-1253786649%2FFunctions%2F174188672) | [android]
open fun [setMenuVisibility](index.md#-1253786649%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [setNextTransition](index.md#1959293193%2FFunctions%2F174188672) | [android]
open fun [setNextTransition](index.md#1959293193%2FFunctions%2F174188672)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | -| [setPopDirection](index.md#1013585002%2FFunctions%2F174188672) | [android]
open fun [setPopDirection](index.md#1013585002%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | -| [setPostOnViewCreatedAlpha](index.md#-1646549814%2FFunctions%2F174188672) | [android]
open fun [setPostOnViewCreatedAlpha](index.md#-1646549814%2FFunctions%2F174188672)(p0: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html)) | | [setReenterTransition](index.md#640349557%2FFunctions%2F174188672) | [android]
open fun [setReenterTransition](index.md#640349557%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setRetainInstance](index.md#1743326430%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~setRetainInstance~~](index.md#1743326430%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)~~)~~ | +| [setRetainInstance](index.md#1743326430%2FFunctions%2F174188672) | [android]
open fun [~~setRetainInstance~~](index.md#1743326430%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [setReturnTransition](index.md#1557491444%2FFunctions%2F174188672) | [android]
open fun [setReturnTransition](index.md#1557491444%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | | [setSharedElementEnterTransition](index.md#1339544389%2FFunctions%2F174188672) | [android]
open fun [setSharedElementEnterTransition](index.md#1339544389%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setSharedElementNames](index.md#-1957782933%2FFunctions%2F174188672) | [android]
open fun [setSharedElementNames](index.md#-1957782933%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?, @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [ArrayList](https://developer.android.com/reference/kotlin/java/util/ArrayList.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?) | | [setSharedElementReturnTransition](index.md#1142469463%2FFunctions%2F174188672) | [android]
open fun [setSharedElementReturnTransition](index.md#1142469463%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) | -| [setTargetFragment](index.md#-294315306%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~setTargetFragment~~](index.md#-294315306%2FFunctions%2F174188672)~~(~~@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p0~~~~:~~ [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)?~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~)~~ | -| [setUserVisibleHint](index.md#-1764772002%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~setUserVisibleHint~~](index.md#-1764772002%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)~~)~~ | +| [setTargetFragment](index.md#-294315306%2FFunctions%2F174188672) | [android]
open fun [~~setTargetFragment~~](index.md#-294315306%2FFunctions%2F174188672)(@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p0: [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html)?, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) | +| [setUserVisibleHint](index.md#-1764772002%2FFunctions%2F174188672) | [android]
open fun [~~setUserVisibleHint~~](index.md#-1764772002%2FFunctions%2F174188672)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | | [shouldShowRequestPermissionRationale](index.md#87341512%2FFunctions%2F174188672) | [android]
open fun [shouldShowRequestPermissionRationale](index.md#87341512%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | | [startActivity](index.md#-410860108%2FFunctions%2F174188672) | [android]
open fun [startActivity](index.md#-410860108%2FFunctions%2F174188672)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open fun [startActivity](index.md#11081177%2FFunctions%2F174188672)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | -| [startActivityForResult](index.md#-754761987%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~startActivityForResult~~](index.md#-754761987%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~)~~
~~open~~ ~~fun~~ [~~startActivityForResult~~](index.md#-257810960%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~ | -| [startIntentSenderForResult](index.md#1175406868%2FFunctions%2F174188672) | [android]
~~open~~ ~~fun~~ [~~startIntentSenderForResult~~](index.md#1175406868%2FFunctions%2F174188672)~~(~~~~p0~~~~:~~ [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html)~~,~~ ~~p1~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p2~~~~:~~ [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?~~,~~ ~~p3~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ ~~p4~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ ~~p5~~~~:~~ [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)~~,~~ @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)~~p6~~~~:~~ [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?~~)~~ | +| [startActivityForResult](index.md#-754761987%2FFunctions%2F174188672) | [android]
open fun [~~startActivityForResult~~](index.md#-754761987%2FFunctions%2F174188672)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [~~startActivityForResult~~](index.md#-257810960%2FFunctions%2F174188672)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | +| [startIntentSenderForResult](index.md#1175406868%2FFunctions%2F174188672) | [android]
open fun [~~startIntentSenderForResult~~](index.md#1175406868%2FFunctions%2F174188672)(p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) | | [startPostponedEnterTransition](index.md#-1311853996%2FFunctions%2F174188672) | [android]
open fun [startPostponedEnterTransition](index.md#-1311853996%2FFunctions%2F174188672)() | | [toString](index.md#-240156679%2FFunctions%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [toString](index.md#-240156679%2FFunctions%2F174188672)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [unregisterForContextMenu](index.md#1294339695%2FFunctions%2F174188672) | [android]
open fun [unregisterForContextMenu](index.md#1294339695%2FFunctions%2F174188672)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) | @@ -213,52 +162,13 @@ class HomeFragment : PresentationFragment<HomeIntent, HomeState, HomeChange&g | Name | Summary | |---|---| -| [mAdded](index.md#1028438450%2FProperties%2F174188672) | [android]
val [mAdded](index.md#1028438450%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mAnimationInfo](index.md#635700128%2FProperties%2F174188672) | [android]
val [mAnimationInfo](index.md#635700128%2FProperties%2F174188672): [Fragment.AnimationInfo](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.AnimationInfo.html) | -| [mArguments](index.md#316967836%2FProperties%2F174188672) | [android]
val [mArguments](index.md#316967836%2FProperties%2F174188672): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | -| [mBackStackNesting](index.md#-1385031585%2FProperties%2F174188672) | [android]
val [mBackStackNesting](index.md#-1385031585%2FProperties%2F174188672): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mBeingSaved](index.md#913406432%2FProperties%2F174188672) | [android]
val [mBeingSaved](index.md#913406432%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mChildFragmentManager](index.md#-169831225%2FProperties%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
val [mChildFragmentManager](index.md#-169831225%2FProperties%2F174188672): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | -| [mContainer](index.md#-141291823%2FProperties%2F174188672) | [android]
val [mContainer](index.md#-141291823%2FProperties%2F174188672): [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html) | -| [mContainerId](index.md#-1960322826%2FProperties%2F174188672) | [android]
val [mContainerId](index.md#-1960322826%2FProperties%2F174188672): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mDefaultFactory](index.md#362517759%2FProperties%2F174188672) | [android]
val [mDefaultFactory](index.md#362517759%2FProperties%2F174188672): [ViewModelProvider.Factory](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory.html) | -| [mDeferStart](index.md#-43677736%2FProperties%2F174188672) | [android]
val [mDeferStart](index.md#-43677736%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mDetached](index.md#793396598%2FProperties%2F174188672) | [android]
val [mDetached](index.md#793396598%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mFragmentId](index.md#-1064744771%2FProperties%2F174188672) | [android]
val [mFragmentId](index.md#-1064744771%2FProperties%2F174188672): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mFragmentManager](index.md#1086304213%2FProperties%2F174188672) | [android]
val [mFragmentManager](index.md#1086304213%2FProperties%2F174188672): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) | -| [mFromLayout](index.md#681595124%2FProperties%2F174188672) | [android]
val [mFromLayout](index.md#681595124%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHasMenu](index.md#1133531257%2FProperties%2F174188672) | [android]
val [mHasMenu](index.md#1133531257%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHidden](index.md#-1633427202%2FProperties%2F174188672) | [android]
val [mHidden](index.md#-1633427202%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHiddenChanged](index.md#-833192120%2FProperties%2F174188672) | [android]
val [mHiddenChanged](index.md#-833192120%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mHost](index.md#2112213376%2FProperties%2F174188672) | [android]
val [mHost](index.md#2112213376%2FProperties%2F174188672): [FragmentHostCallback](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentHostCallback.html)<*> | -| [mInLayout](index.md#-15795495%2FProperties%2F174188672) | [android]
val [mInLayout](index.md#-15795495%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mIsCreated](index.md#-1761839212%2FProperties%2F174188672) | [android]
val [mIsCreated](index.md#-1761839212%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mLayoutInflater](index.md#-767283853%2FProperties%2F174188672) | [android]
val [mLayoutInflater](index.md#-767283853%2FProperties%2F174188672): [LayoutInflater](https://developer.android.com/reference/kotlin/android/view/LayoutInflater.html) | -| [mLifecycleRegistry](index.md#-1545076917%2FProperties%2F174188672) | [android]
val [mLifecycleRegistry](index.md#-1545076917%2FProperties%2F174188672): [LifecycleRegistry](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleRegistry.html) | -| [mMaxState](index.md#1266739131%2FProperties%2F174188672) | [android]
val [mMaxState](index.md#1266739131%2FProperties%2F174188672): [Lifecycle.State](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State.html) | -| [mMenuVisible](index.md#678076479%2FProperties%2F174188672) | [android]
val [mMenuVisible](index.md#678076479%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mParentFragment](index.md#681958542%2FProperties%2F174188672) | [android]
val [mParentFragment](index.md#681958542%2FProperties%2F174188672): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) | -| [mPerformedCreateView](index.md#-339389583%2FProperties%2F174188672) | [android]
val [mPerformedCreateView](index.md#-339389583%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mPostponedDurationRunnable](index.md#1553907603%2FProperties%2F174188672) | [android]
val [mPostponedDurationRunnable](index.md#1553907603%2FProperties%2F174188672): [Runnable](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | -| [mPreviousWho](index.md#564345739%2FProperties%2F174188672) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY.html)])
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
val [mPreviousWho](index.md#564345739%2FProperties%2F174188672): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? | -| [mRemoving](index.md#-1823538297%2FProperties%2F174188672) | [android]
val [mRemoving](index.md#-1823538297%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mRestored](index.md#1625784786%2FProperties%2F174188672) | [android]
val [mRestored](index.md#1625784786%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mRetainInstance](index.md#-191454994%2FProperties%2F174188672) | [android]
val [mRetainInstance](index.md#-191454994%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mRetainInstanceChangedWhileDetached](index.md#782003647%2FProperties%2F174188672) | [android]
val [mRetainInstanceChangedWhileDetached](index.md#782003647%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mSavedFragmentState](index.md#724472654%2FProperties%2F174188672) | [android]
val [mSavedFragmentState](index.md#724472654%2FProperties%2F174188672): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | -| [mSavedStateRegistryController](index.md#555986661%2FProperties%2F174188672) | [android]
val [mSavedStateRegistryController](index.md#555986661%2FProperties%2F174188672): [SavedStateRegistryController](https://developer.android.com/reference/kotlin/androidx/savedstate/SavedStateRegistryController.html) | -| [mSavedUserVisibleHint](index.md#-593879487%2FProperties%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
val [mSavedUserVisibleHint](index.md#-593879487%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? | -| [mSavedViewRegistryState](index.md#185036416%2FProperties%2F174188672) | [android]
val [mSavedViewRegistryState](index.md#185036416%2FProperties%2F174188672): [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html) | -| [mSavedViewState](index.md#1186759139%2FProperties%2F174188672) | [android]
val [mSavedViewState](index.md#1186759139%2FProperties%2F174188672): [SparseArray](https://developer.android.com/reference/kotlin/android/util/SparseArray.html)<[Parcelable](https://developer.android.com/reference/kotlin/android/os/Parcelable.html)> | -| [mState](index.md#1771391809%2FProperties%2F174188672) | [android]
val [mState](index.md#1771391809%2FProperties%2F174188672): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mTag](index.md#2105922968%2FProperties%2F174188672) | [android]
val [mTag](index.md#2105922968%2FProperties%2F174188672): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | -| [mTarget](index.md#-1273925897%2FProperties%2F174188672) | [android]
val [mTarget](index.md#-1273925897%2FProperties%2F174188672): [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) | -| [mTargetRequestCode](index.md#1401874119%2FProperties%2F174188672) | [android]
val [mTargetRequestCode](index.md#1401874119%2FProperties%2F174188672): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | -| [mTargetWho](index.md#43233381%2FProperties%2F174188672) | [android]
val [mTargetWho](index.md#43233381%2FProperties%2F174188672): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | -| [mUserVisibleHint](index.md#1633011428%2FProperties%2F174188672) | [android]
val [mUserVisibleHint](index.md#1633011428%2FProperties%2F174188672): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) | -| [mView](index.md#-25480413%2FProperties%2F174188672) | [android]
val [mView](index.md#-25480413%2FProperties%2F174188672): [View](https://developer.android.com/reference/kotlin/android/view/View.html) | -| [mViewLifecycleOwner](index.md#-1485706438%2FProperties%2F174188672) | [android]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
val [mViewLifecycleOwner](index.md#-1485706438%2FProperties%2F174188672): [FragmentViewLifecycleOwner](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentViewLifecycleOwner.html)? | -| [mViewLifecycleOwnerLiveData](index.md#-781731804%2FProperties%2F174188672) | [android]
val [mViewLifecycleOwnerLiveData](index.md#-781731804%2FProperties%2F174188672): [MutableLiveData](https://developer.android.com/reference/kotlin/androidx/lifecycle/MutableLiveData.html)<[LifecycleOwner](https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner.html)> | -| [mWho](index.md#-268764684%2FProperties%2F174188672) | [android]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
val [mWho](index.md#-268764684%2FProperties%2F174188672): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | +| [mPreviousWho](index.md#564345739%2FProperties%2F174188672) | [android]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY.html)])
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
var [mPreviousWho](index.md#564345739%2FProperties%2F174188672): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? | | [renderState](render-state.md) | [android]
open override val [renderState](render-state.md): [S](index.md)?
The currently rendered [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md). This property could briefly differ from the [ViewModel.currentState](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/current-state.md) until that state is observed by this [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) and is rendered to display. | +| [savedStateRegistry](index.md#2039995422%2FProperties%2F174188672) | [android]
@get:[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override val [savedStateRegistry](index.md#2039995422%2FProperties%2F174188672): [SavedStateRegistry](https://developer.android.com/reference/kotlin/androidx/savedstate/SavedStateRegistry.html) | | [viewModel](view-model.md) | [android]
abstract override val [viewModel](view-model.md): [ViewModel](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md)<[I](index.md), [S](index.md), [C](index.md)>
The [ViewModel](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md) this [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) uses to subscribe to [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) changes and emit [Intent](../../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md)s. The [ViewModel](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md) is the binding piece of this design pattern, between the [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) and itself, that handles coordinating the flow of logic to derive a new [State](../../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md) that this [View](../../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) will then observe and render to the UI. | + +## Extensions + +| Name | Summary | +|---|---| +| [intent](../intent.md) | [common]
fun <[I](../intent.md) : [Intent](../-intent/index.md), [S](../intent.md) : [State](../-state/index.md), [C](../intent.md) : [Change](../-change/index.md)> [View](../-view/index.md)<[I](../intent.md), [S](../intent.md), [C](../intent.md)>.[intent](../intent.md)(to: [I](../intent.md))
Emits the provided [to](../-intent/index.md) value to trigger an action, that may eventually result in a new [State](../-state/index.md) being rendered. | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-reducer/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-reducer/index.md index 0b992eb..4921049 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-reducer/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-reducer/index.md @@ -23,4 +23,4 @@ A [Reducer](index.md) is responsible for determining the [State](../-state/index | Name | Summary | |---|---| -| [invoke](../invoke.md) | [common]
suspend operator fun <[S](../invoke.md) : [State](../-state/index.md), [C](../invoke.md) : [Change](../-change/index.md)> [Reducer](index.md)<[S](../invoke.md), [C](../invoke.md)>.[invoke](../invoke.md)(previous: [S](../invoke.md)?, change: [C](../invoke.md)): [S](../invoke.md)?
A convenience operator function that delegates to the [reduce](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/index.html) function, so that the [Reducer](index.md) class can be invoked like a function. | +| [create](../create.md) | [common]
suspend fun <[S](../create.md) : [State](../-state/index.md), [C](../create.md) : [Change](../-change/index.md)> [Reducer](index.md)<[S](../create.md), [C](../create.md)>.[create](../create.md)(previous: [S](../create.md)?, change: [C](../create.md)): [S](../create.md)?
A convenience operator function that delegates to the [reduce](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/index.html) function, so that the [Reducer](index.md) class can be invoked like a function. | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-state-store/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-state-store/index.md index 51c689c..99df99f 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-state-store/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-state-store/index.md @@ -3,7 +3,7 @@ # StateStore [common]\ -interface [StateStore](index.md)<[I](index.md) : [Intent](../-intent/index.md), [C](index.md) : [Change](../-change/index.md), [S](index.md) : [State](../-state/index.md)> +interface [StateStore](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)> A component that retains the information about the current [State](../-state/index.md) for a [ViewModel](../-view-model/index.md). @@ -13,15 +13,6 @@ A component that retains the information about the current [State](../-state/ind |---|---| | [Companion](-companion/index.md) | [common]
object [Companion](-companion/index.md) | -## Functions - -| Name | Summary | -|---|---| -| [reset](reset.md) | [common]
abstract fun [reset](reset.md)() | -| [updateCurrentState](update-current-state.md) | [common]
abstract fun [updateCurrentState](update-current-state.md)(state: [S](index.md)?) | -| [updateLastChange](update-last-change.md) | [common]
abstract fun [updateLastChange](update-last-change.md)(change: [C](index.md)) | -| [updateLastIntent](update-last-intent.md) | [common]
abstract fun [updateLastIntent](update-last-intent.md)(intent: [I](index.md)) | - ## Properties | Name | Summary | @@ -39,4 +30,4 @@ A component that retains the information about the current [State](../-state/ind | Name | |---| -| [BasicStateStore](../-basic-state-store/index.md) | +| [MutableStateStore](../-mutable-state-store/index.md) | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-state/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-state/index.md index bd91230..d5b99f1 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-state/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-state/index.md @@ -7,24 +7,26 @@ interface [State](index.md) : [ViewData](../-view-data/index.md) A [State](index.md) is a special [ViewData](../-view-data/index.md) that contains all necessary information to represent a UI. A [State](index.md) can be derived from another [State](index.md) and a [Change](../-change/index.md). Also, a [State](index.md) can be stored in a stateful component and retrieved for later usage. -A common pattern is to have a [State](index.md) represent the UI for a particular screen. So a typical approach would be to have the screen's [State](index.md) be a sealed class inheriting from this [State](index.md) interface and have descendants representing every possible UI state the screen could be in ("loading", "showing results", etc). +A common pattern is to have a [State](index.md) represent the UI for a particular screen. So a typical approach would be to have the screen's [State](index.md) be a sealed class inheriting from this [State](index.md) interface and have descendants representing every possible UI state the screen could be in ("loading", "showing results", etc). For example: -sealed class FeedState : State {\ -\ - object LoadingInitial : FeedState()\ -\ - data class LoadingMore(val currentItems: List<Item>) : FeedState()\ -\ - data class Refreshing(val currentItems: List<Item>) : FeedState()\ -\ - object DisplayingEmpty : FeedState()\ -\ - data class DisplayingLoaded(val items: List<Item>) : FeedState()\ +```kotlin +sealed class FeedState : State { + + object LoadingInitial : FeedState() + + data class LoadingMore(val currentItems: List) : FeedState() + + data class Refreshing(val currentItems: List) : FeedState() + + object DisplayingEmpty : FeedState() + + data class DisplayingLoaded(val items: List) : FeedState() } +``` -It's common to name the sealed class after the name of the screen that the [State](index.md) represents ("FeedState" -> "FeedScreen"). Also, it's common to name the descendants of the sealed class in a present tense verb manner since, at this point, the screen is "performing" this [State](index.md) ("Loading", "Refreshing", etc). +It's common to name the sealed class after the name of the screen that the [State](index.md) represents ("FeedState" -> "FeedScreen"). Also, it's common to name the descendants of the sealed class in a present tense verb manner since, at this point, the screen is "performing" this [State](index.md) ("Loading", "Refreshing", etc). ## Types diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-data/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-data/index.md index 79502f2..c4cc66c 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-data/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-data/index.md @@ -9,7 +9,7 @@ Represents a model that contains the data required for a UI. Note a [State](../- Note that a [ViewData](index.md) should not contain any logic. A [ViewData](index.md) is typically an immutable data class containing necessary information for displaying a UI. Typically, fields shouldn't be updated or altered on a [ViewData](index.md) but instead new updated [ViewData](index.md) objects should be created and the whole [State](../-state/index.md) should be updated with these new objects. This way it conforms to the uni-directional paradigm. -Note that there is some terminology conflation between this class "ViewData" and the [ViewModel](../-view-model/index.md) class. Here a [ViewData](index.md) should perform no logic, and just be a model representation of a UI. +Note that there is some terminology conflation between this class "ViewData" and the [ViewModel](../-view-model/index.md) class. Here a [ViewData](index.md) should perform no logic, and just be a model representation of a UI. ## Types diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/create.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/create.md new file mode 100644 index 0000000..02965b1 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/create.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFactory](index.md)/[create](create.md) + +# create + +[common]\ +abstract fun <[I](create.md) : [Intent](../-intent/index.md), [S](create.md) : [State](../-state/index.md), [C](create.md) : [Change](../-change/index.md), [V](create.md) : [ViewModel](../-view-model/index.md)<[I](create.md), [S](create.md), [C](create.md)>> [create](create.md)(kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](create.md)>, vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create.md) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md index 324087b..26dac8a 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-factory/index.md @@ -3,26 +3,7 @@ # ViewModelFactory [common]\ -fun interface [ViewModelFactory](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)> - -A component that can create a [ViewModel](../-view-model/index.md). This allows lazy instantiation of a [ViewModel](../-view-model/index.md) which may be required to wait for the [View](../-view/index.md) to be created first, then passing that into the [invoke](invoke.md) function to create the [ViewModel](../-view-model/index.md) that will be bound to that [View](../-view/index.md). - -Note that this interface is a functional interface, so an instance can be created like so: - -ViewModelFactory { ... } - -Example usage: - -ViewModelFactory {\ - ViewModel {\ - this.view.intents()\ - .perform { intent, state -> ... }\ - .reduce { state, change -> ... }\ - .startWithInitialState()\ - .render()\ - .launchIn(coroutineScope)\ - }\ -} +interface [ViewModelFactory](index.md) ## Types @@ -34,4 +15,11 @@ ViewModelFactory {\ | Name | Summary | |---|---| -| [invoke](invoke.md) | [common]
abstract operator fun [invoke](invoke.md)(): [ViewModel](../-view-model/index.md)<[I](index.md), [S](index.md), [C](index.md)> | +| [create](create.md) | [common]
abstract fun <[I](create.md) : [Intent](../-intent/index.md), [S](create.md) : [State](../-state/index.md), [C](create.md) : [Change](../-change/index.md), [V](create.md) : [ViewModel](../-view-model/index.md)<[I](create.md), [S](create.md), [C](create.md)>> [create](create.md)(kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](create.md)>, vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create.md) | + +## Extensions + +| Name | Summary | +|---|---| +| [create](../create.md) | [common]
inline fun <[I](../create.md) : [Intent](../-intent/index.md), [S](../create.md) : [State](../-state/index.md), [C](../create.md) : [Change](../-change/index.md), [V](../create.md) : [ViewModel](../-view-model/index.md)<[I](../create.md), [S](../create.md), [C](../create.md)>> [ViewModelFactory](index.md).[create](../create.md)(vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](../create.md) | +| [createOrNull](../create-or-null.md) | [common]
fun <[I](../create-or-null.md) : [Intent](../-intent/index.md), [S](../create-or-null.md) : [State](../-state/index.md), [C](../create-or-null.md) : [Change](../-change/index.md), [V](../create-or-null.md) : [ViewModel](../-view-model/index.md)<[I](../create-or-null.md), [S](../create-or-null.md), [C](../create-or-null.md)>> [ViewModelFactory](index.md).[createOrNull](../create-or-null.md)(kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](../create-or-null.md)>, vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](../create-or-null.md)?
inline fun <[I](../create-or-null.md) : [Intent](../-intent/index.md), [S](../create-or-null.md) : [State](../-state/index.md), [C](../create-or-null.md) : [Change](../-change/index.md), [V](../create-or-null.md) : [ViewModel](../-view-model/index.md)<[I](../create-or-null.md), [S](../create-or-null.md), [C](../create-or-null.md)>> [ViewModelFactory](index.md).[createOrNull](../create-or-null.md)(vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](../create-or-null.md)? | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/index.md new file mode 100644 index 0000000..91033a0 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/index.md @@ -0,0 +1,23 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md) + +# ViewModelFlowScope + +[common]\ +interface [ViewModelFlowScope](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)> + +## Functions + +| Name | Summary | +|---|---| +| [perform](perform.md) | [common]
@FlowPreview
abstract fun Flow<[I](index.md)>.[perform](perform.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md) = FlatMapStrategy.Latest, action: suspend ([I](index.md), [S](index.md)?) -> Flow<[C](index.md)>): Flow<[C](index.md)> | +| [performWith](perform-with.md) | [common]
@FlowPreview
abstract fun Flow<[I](index.md)>.[performWith](perform-with.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md) = FlatMapStrategy.Latest, action: [Action](../-action/index.md)<[I](index.md), [S](index.md), [C](index.md)>): Flow<[C](index.md)> | +| [reduce](reduce.md) | [common]
abstract fun Flow<[C](index.md)>.[reduce](reduce.md)(reducer: suspend ([S](index.md)?, [C](index.md)) -> [S](index.md)?): Flow<[S](index.md)?> | +| [reduceWith](reduce-with.md) | [common]
abstract fun Flow<[C](index.md)>.[reduceWith](reduce-with.md)(reducer: [Reducer](../-reducer/index.md)<[S](index.md), [C](index.md)>): Flow<[S](index.md)?> | +| [render](render.md) | [common]
abstract fun Flow<[S](index.md)?>.[render](render.md)(): Flow<[S](index.md)?> | +| [startWithInitialState](start-with-initial-state.md) | [common]
abstract fun Flow<[S](index.md)?>.[startWithInitialState](start-with-initial-state.md)(): Flow<[S](index.md)?> | + +## Inheritors + +| Name | +|---| +| [ViewModel](../-view-model/index.md) | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform-with.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform-with.md new file mode 100644 index 0000000..82dcf00 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform-with.md @@ -0,0 +1,9 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md)/[performWith](perform-with.md) + +# performWith + +[common]\ + +@FlowPreview + +abstract fun Flow<[I](index.md)>.[performWith](perform-with.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md) = FlatMapStrategy.Latest, action: [Action](../-action/index.md)<[I](index.md), [S](index.md), [C](index.md)>): Flow<[C](index.md)> diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform.md new file mode 100644 index 0000000..c51f2e7 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/perform.md @@ -0,0 +1,9 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md)/[perform](perform.md) + +# perform + +[common]\ + +@FlowPreview + +abstract fun Flow<[I](index.md)>.[perform](perform.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md) = FlatMapStrategy.Latest, action: suspend ([I](index.md), [S](index.md)?) -> Flow<[C](index.md)>): Flow<[C](index.md)> diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce-with.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce-with.md new file mode 100644 index 0000000..90797ad --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce-with.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md)/[reduceWith](reduce-with.md) + +# reduceWith + +[common]\ +abstract fun Flow<[C](index.md)>.[reduceWith](reduce-with.md)(reducer: [Reducer](../-reducer/index.md)<[S](index.md), [C](index.md)>): Flow<[S](index.md)?> diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce.md new file mode 100644 index 0000000..dbb4a6d --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/reduce.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md)/[reduce](reduce.md) + +# reduce + +[common]\ +abstract fun Flow<[C](index.md)>.[reduce](reduce.md)(reducer: suspend ([S](index.md)?, [C](index.md)) -> [S](index.md)?): Flow<[S](index.md)?> diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/render.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/render.md new file mode 100644 index 0000000..d177a7b --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/render.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md)/[render](render.md) + +# render + +[common]\ +abstract fun Flow<[S](index.md)?>.[render](render.md)(): Flow<[S](index.md)?> diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/start-with-initial-state.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/start-with-initial-state.md new file mode 100644 index 0000000..a7f1637 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-flow-scope/start-with-initial-state.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelFlowScope](index.md)/[startWithInitialState](start-with-initial-state.md) + +# startWithInitialState + +[common]\ +abstract fun Flow<[S](index.md)?>.[startWithInitialState](start-with-initial-state.md)(): Flow<[S](index.md)?> diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider.md new file mode 100644 index 0000000..62f67e4 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider.md @@ -0,0 +1,8 @@ +//[presentation-core](../../index.md)/[com.chrynan.presentation](index.md)/[ViewModelProvider](-view-model-provider.md) + +# ViewModelProvider + +[common]\ +fun [ViewModelProvider](-view-model-provider.md)(factory: [ViewModelFactory](-view-model-factory/index.md)): [ViewModelProvider](-view-model-provider/index.md) + +Constructs a [ViewModelProvider](-view-model-provider/index.md) using the provided [ViewModelFactory](-view-model-factory/index.md) to create instances of the ViewModels and caching the values in a [MutableMap](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html) by their associated keys for faster subsequent access. diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/-companion/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/-companion/index.md new file mode 100644 index 0000000..b47eb44 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/-companion/index.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../../index.md)/[com.chrynan.presentation](../../index.md)/[ViewModelProvider](../index.md)/[Companion](index.md) + +# Companion + +[common]\ +object [Companion](index.md) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/get.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/get.md new file mode 100644 index 0000000..51c7433 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/get.md @@ -0,0 +1,6 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelProvider](index.md)/[get](get.md) + +# get + +[common]\ +abstract operator fun <[I](get.md) : [Intent](../-intent/index.md), [S](get.md) : [State](../-state/index.md), [C](get.md) : [Change](../-change/index.md), [V](get.md) : [ViewModel](../-view-model/index.md)<[I](get.md), [S](get.md), [C](get.md)>> [get](get.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](get.md)>): [V](get.md) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md new file mode 100644 index 0000000..547e23b --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model-provider/index.md @@ -0,0 +1,25 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModelProvider](index.md) + +# ViewModelProvider + +[common]\ +interface [ViewModelProvider](index.md) + +## Types + +| Name | Summary | +|---|---| +| [Companion](-companion/index.md) | [common]
object [Companion](-companion/index.md) | + +## Functions + +| Name | Summary | +|---|---| +| [get](get.md) | [common]
abstract operator fun <[I](get.md) : [Intent](../-intent/index.md), [S](get.md) : [State](../-state/index.md), [C](get.md) : [Change](../-change/index.md), [V](get.md) : [ViewModel](../-view-model/index.md)<[I](get.md), [S](get.md), [C](get.md)>> [get](get.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](get.md)>): [V](get.md) | + +## Extensions + +| Name | Summary | +|---|---| +| [get](../get.md) | [common]
inline fun <[I](../get.md) : [Intent](../-intent/index.md), [S](../get.md) : [State](../-state/index.md), [C](../get.md) : [Change](../-change/index.md), [V](../get.md) : [ViewModel](../-view-model/index.md)<[I](../get.md), [S](../get.md), [C](../get.md)>> [ViewModelProvider](index.md).[get](../get.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null): [V](../get.md) | +| [getOrNull](../get-or-null.md) | [common]
fun <[I](../get-or-null.md) : [Intent](../-intent/index.md), [S](../get-or-null.md) : [State](../-state/index.md), [C](../get-or-null.md) : [Change](../-change/index.md), [V](../get-or-null.md) : [ViewModel](../-view-model/index.md)<[I](../get-or-null.md), [S](../get-or-null.md), [C](../get-or-null.md)>> [ViewModelProvider](index.md).[getOrNull](../get-or-null.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](../get-or-null.md)>): [V](../get-or-null.md)?
inline fun <[I](../get-or-null.md) : [Intent](../-intent/index.md), [S](../get-or-null.md) : [State](../-state/index.md), [C](../get-or-null.md) : [Change](../-change/index.md), [V](../get-or-null.md) : [ViewModel](../-view-model/index.md)<[I](../get-or-null.md), [S](../get-or-null.md), [C](../get-or-null.md)>> [ViewModelProvider](index.md).[getOrNull](../get-or-null.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null): [V](../get-or-null.md)? | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model.md index 8fec974..87692d5 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model.md @@ -9,14 +9,16 @@ A convenience function to create a [ViewModel](-view-model/index.md) without hav Example usage: -ViewModel<I, S, C> {\ - this.intents\ - .perform { intent, state -> ... }\ - .reduce { state, change -> ... }\ - .startWithInitialState()\ - .render()\ - .launchIn(coroutineScope)\ +```kotlin +ViewModel { + this.intents + .perform { intent, state -> ... } + .reduce { state, change -> ... } + .startWithInitialState() + .render() + .launchIn(coroutineScope) } +``` [common]\ fun <[I](-view-model.md) : [Intent](-intent/index.md), [S](-view-model.md) : [State](-state/index.md), [C](-view-model.md) : [Change](-change/index.md)> [ViewModel](-view-model.md)(initialState: [S](-view-model.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, onUnbind: [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onBind: [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onError: () -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, startWithInitialState: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = true, flatMapStrategy: [FlatMapStrategy](-flat-map-strategy/index.md) = FlatMapStrategy.Latest, perform: suspend ([I](-view-model.md), [S](-view-model.md)?) -> Flow<[C](-view-model.md)>, reduce: suspend ([S](-view-model.md)?, [C](-view-model.md)) -> [S](-view-model.md)): [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)> @@ -25,6 +27,8 @@ A convenience function to create a [ViewModel](-view-model/index.md) without hav Example usage: -ViewModel<I, S, C>(\ - perform = { intent, state -> ... },\ - reduce = { state, change -> ... }) +```kotlin +ViewModel( + perform = { intent, state -> ... }, + reduce = { state, change -> ... }) +``` diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/-view-model.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/-view-model.md index 804cf7b..ac4faf9 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/-view-model.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/-view-model.md @@ -3,4 +3,4 @@ # ViewModel [common]\ -fun <[S](index.md) : [State](../-state/index.md)> [ViewModel](-view-model.md)(initialState: [S](index.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers) +fun <[S](index.md) : [State](../-state/index.md)> [ViewModel](-view-model.md)(initialState: [S](index.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, resetOnUnbind: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = false) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/bind.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/bind.md index 86b6b46..e45f99e 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/bind.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/bind.md @@ -3,7 +3,7 @@ # bind [common]\ -open override fun [bind](bind.md)() +override fun [bind](bind.md)() Binds this [ViewModel](index.md). diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md index 5f122f8..be238f8 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/index.md @@ -3,25 +3,31 @@ # ViewModel [common]\ -abstract class [ViewModel](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)>(initialState: [S](index.md)?, dispatchers: CoroutineDispatchers) : [BaseViewModel](../-base-view-model/index.md), [Presenter](../-presenter/index.md)<[I](index.md), [S](index.md), [C](index.md)> +abstract class [ViewModel](index.md)<[I](index.md) : [Intent](../-intent/index.md), [S](index.md) : [State](../-state/index.md), [C](index.md) : [Change](../-change/index.md)>(initialState: [S](index.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, resetOnUnbind: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = false) : [PlatformViewModel](../-platform-view-model/index.md), [Presenter](../-presenter/index.md)<[I](index.md), [S](index.md), [C](index.md)> , [ViewModelFlowScope](../-view-model-flow-scope/index.md)<[I](index.md), [S](index.md), [C](index.md)> A [ViewModel](index.md) is a design pattern component that acts as a bridge between the [View](../-view/index.md) and the application logic. It is responsible for coordinating the application logic, in the uni-directional flow established by this design pattern, to ultimately derive a new [State](../-state/index.md) that is to be rendered by the [View](../-view/index.md). This [ViewModel](index.md) component does not have a reference to the [View](../-view/index.md), instead the [View](../-view/index.md) has a reference to a [ViewModel](index.md), and calls the [ViewModel.renderStates](render-states.md) property to obtain a Flow of [State](../-state/index.md) changes that it subscribes to, so that it can update whenever the [ViewModel](index.md) derives a new [State](../-state/index.md). This simplifies the communication between the two components, by removing the cyclic dependency between the two (as is common in a traditional MVP design pattern). -This is a base implementation of the [Presenter](../-presenter/index.md) interface that provides functions for handling common functionality, such as, the [performWith](../../../../presentation-core/com.chrynan.presentation/-view-model/perform-with.md), [reduceWith](../../../../presentation-core/com.chrynan.presentation/-view-model/reduce-with.md), and [render](../../../../presentation-core/com.chrynan.presentation/-view-model/render.md) functions. +This is a base implementation of the [Presenter](../-presenter/index.md) interface that provides functions for handling common functionality, such as, the [performWith](perform-with.md), [reduceWith](reduce-with.md), and [render](render.md) functions. ## Constructors | | | |---|---| -| [ViewModel](-view-model.md) | [common]
fun <[S](index.md) : [State](../-state/index.md)> [ViewModel](-view-model.md)(initialState: [S](index.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers) | +| [ViewModel](-view-model.md) | [common]
fun <[S](index.md) : [State](../-state/index.md)> [ViewModel](-view-model.md)(initialState: [S](index.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, resetOnUnbind: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = false) | ## Functions | Name | Summary | |---|---| -| [bind](bind.md) | [common]
open override fun [bind](bind.md)()
Binds this [ViewModel](index.md). | +| [bind](bind.md) | [common]
override fun [bind](bind.md)()
Binds this [ViewModel](index.md). | | [intent](intent.md) | [common]
open override fun [intent](intent.md)(to: [I](index.md))
Emits the provided [to](../-intent/index.md) value to trigger an action, that may eventually result in a new [State](../-state/index.md) being rendered. These can be caused by user input events (clicks, scrolls, etc.) or by other means. | -| [unbind](unbind.md) | [common]
open override fun [unbind](unbind.md)()
Unbinds this [ViewModel](index.md). | +| [perform](perform.md) | [common]
open override fun Flow<[I](index.md)>.[perform](perform.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: suspend ([I](index.md), [S](index.md)?) -> Flow<[C](index.md)>): Flow<[C](index.md)>
Converts this Flow of [Intent](../-intent/index.md)s of type [I](index.md) into a Flow of [Change](../-change/index.md)s of type [C](index.md) using the provided [action](perform.md) function. | +| [performWith](perform-with.md) | [common]
open override fun Flow<[I](index.md)>.[performWith](perform-with.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: [Action](../-action/index.md)<[I](index.md), [S](index.md), [C](index.md)>): Flow<[C](index.md)>
Converts this Flow of [Intent](../-intent/index.md)s of type [I](index.md) into a Flow of [Change](../-change/index.md)s of type [C](index.md) using the provided [action](perform-with.md). | +| [reduce](reduce.md) | [common]
open override fun Flow<[C](index.md)>.[reduce](reduce.md)(reducer: suspend ([S](index.md)?, [C](index.md)) -> [S](index.md)?): Flow<[S](index.md)?>
Converts this Flow of [Change](../-change/index.md)s of type [C](index.md) into a Flow of type [S](index.md) using this [ViewModel](index.md)s [Reducer](../-reducer/index.md). | +| [reduceWith](reduce-with.md) | [common]
open override fun Flow<[C](index.md)>.[reduceWith](reduce-with.md)(reducer: [Reducer](../-reducer/index.md)<[S](index.md), [C](index.md)>): Flow<[S](index.md)?>
Converts this Flow of [Change](../-change/index.md)s of type [C](index.md) into a Flow of type [S](index.md) using this [ViewModel](index.md)s [Reducer](../-reducer/index.md). | +| [render](render.md) | [common]
open override fun Flow<[S](index.md)?>.[render](render.md)(): Flow<[S](index.md)?>
Renders the [State](../-state/index.md)s of type [S](index.md) from this Flow with this [ViewModel](index.md)s [View](../-view/index.md). | +| [startWithInitialState](start-with-initial-state.md) | [common]
open override fun Flow<[S](index.md)?>.[startWithInitialState](start-with-initial-state.md)(): Flow<[S](index.md)?>
Emits the [initialState](../../../../presentation-core/com.chrynan.presentation/-view-model/initial-state.md) value in onStart if it is not null. | +| [unbind](unbind.md) | [common]
override fun [unbind](unbind.md)()
Unbinds this [ViewModel](index.md). | ## Properties diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform-with.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform-with.md new file mode 100644 index 0000000..fa801a3 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform-with.md @@ -0,0 +1,8 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModel](index.md)/[performWith](perform-with.md) + +# performWith + +[common]\ +open override fun Flow<[I](index.md)>.[performWith](perform-with.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: [Action](../-action/index.md)<[I](index.md), [S](index.md), [C](index.md)>): Flow<[C](index.md)> + +Converts this Flow of [Intent](../-intent/index.md)s of type [I](index.md) into a Flow of [Change](../-change/index.md)s of type [C](index.md) using the provided [action](perform-with.md). diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform.md new file mode 100644 index 0000000..97efc9f --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/perform.md @@ -0,0 +1,8 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModel](index.md)/[perform](perform.md) + +# perform + +[common]\ +open override fun Flow<[I](index.md)>.[perform](perform.md)(strategy: [FlatMapStrategy](../-flat-map-strategy/index.md), action: suspend ([I](index.md), [S](index.md)?) -> Flow<[C](index.md)>): Flow<[C](index.md)> + +Converts this Flow of [Intent](../-intent/index.md)s of type [I](index.md) into a Flow of [Change](../-change/index.md)s of type [C](index.md) using the provided [action](perform.md) function. diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce-with.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce-with.md new file mode 100644 index 0000000..f235dee --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce-with.md @@ -0,0 +1,8 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModel](index.md)/[reduceWith](reduce-with.md) + +# reduceWith + +[common]\ +open override fun Flow<[C](index.md)>.[reduceWith](reduce-with.md)(reducer: [Reducer](../-reducer/index.md)<[S](index.md), [C](index.md)>): Flow<[S](index.md)?> + +Converts this Flow of [Change](../-change/index.md)s of type [C](index.md) into a Flow of type [S](index.md) using this [ViewModel](index.md)s [Reducer](../-reducer/index.md). diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce.md new file mode 100644 index 0000000..431ce94 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/reduce.md @@ -0,0 +1,8 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModel](index.md)/[reduce](reduce.md) + +# reduce + +[common]\ +open override fun Flow<[C](index.md)>.[reduce](reduce.md)(reducer: suspend ([S](index.md)?, [C](index.md)) -> [S](index.md)?): Flow<[S](index.md)?> + +Converts this Flow of [Change](../-change/index.md)s of type [C](index.md) into a Flow of type [S](index.md) using this [ViewModel](index.md)s [Reducer](../-reducer/index.md). diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/render.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/render.md new file mode 100644 index 0000000..f61f8b5 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/render.md @@ -0,0 +1,8 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModel](index.md)/[render](render.md) + +# render + +[common]\ +open override fun Flow<[S](index.md)?>.[render](render.md)(): Flow<[S](index.md)?> + +Renders the [State](../-state/index.md)s of type [S](index.md) from this Flow with this [ViewModel](index.md)s [View](../-view/index.md). diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/start-with-initial-state.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/start-with-initial-state.md new file mode 100644 index 0000000..f91f0bc --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/start-with-initial-state.md @@ -0,0 +1,8 @@ +//[presentation-core](../../../index.md)/[com.chrynan.presentation](../index.md)/[ViewModel](index.md)/[startWithInitialState](start-with-initial-state.md) + +# startWithInitialState + +[common]\ +open override fun Flow<[S](index.md)?>.[startWithInitialState](start-with-initial-state.md)(): Flow<[S](index.md)?> + +Emits the [initialState](../../../../presentation-core/com.chrynan.presentation/-view-model/initial-state.md) value in onStart if it is not null. diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/unbind.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/unbind.md index 60d9b30..64013c3 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/unbind.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/-view-model/unbind.md @@ -3,7 +3,7 @@ # unbind [common]\ -open override fun [unbind](unbind.md)() +override fun [unbind](unbind.md)() Unbinds this [ViewModel](index.md). diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/create-or-null.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/create-or-null.md new file mode 100644 index 0000000..d2904cc --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/create-or-null.md @@ -0,0 +1,8 @@ +//[presentation-core](../../index.md)/[com.chrynan.presentation](index.md)/[createOrNull](create-or-null.md) + +# createOrNull + +[common]\ +fun <[I](create-or-null.md) : [Intent](-intent/index.md), [S](create-or-null.md) : [State](-state/index.md), [C](create-or-null.md) : [Change](-change/index.md), [V](create-or-null.md) : [ViewModel](-view-model/index.md)<[I](create-or-null.md), [S](create-or-null.md), [C](create-or-null.md)>> [ViewModelFactory](-view-model-factory/index.md).[createOrNull](create-or-null.md)(kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](create-or-null.md)>, vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create-or-null.md)? + +inline fun <[I](create-or-null.md) : [Intent](-intent/index.md), [S](create-or-null.md) : [State](-state/index.md), [C](create-or-null.md) : [Change](-change/index.md), [V](create-or-null.md) : [ViewModel](-view-model/index.md)<[I](create-or-null.md), [S](create-or-null.md), [C](create-or-null.md)>> [ViewModelFactory](-view-model-factory/index.md).[createOrNull](create-or-null.md)(vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create-or-null.md)? diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/create.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/create.md new file mode 100644 index 0000000..f9488f5 --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/create.md @@ -0,0 +1,16 @@ +//[presentation-core](../../index.md)/[com.chrynan.presentation](index.md)/[create](create.md) + +# create + +[common]\ +suspend fun <[I](create.md) : [Intent](-intent/index.md), [S](create.md) : [State](-state/index.md), [C](create.md) : [Change](-change/index.md)> [Action](-action/index.md)<[I](create.md), [S](create.md), [C](create.md)>.[create](create.md)(intent: [I](create.md), state: [S](create.md)?): Flow<[C](create.md)> + +A convenience function that delegates to [Action.perform](-action/perform.md) allowing the [Action](-action/index.md) to be invoked like a function. + +[common]\ +suspend fun <[S](create.md) : [State](-state/index.md), [C](create.md) : [Change](-change/index.md)> [Reducer](-reducer/index.md)<[S](create.md), [C](create.md)>.[create](create.md)(previous: [S](create.md)?, change: [C](create.md)): [S](create.md)? + +A convenience operator function that delegates to the [reduce](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/index.html) function, so that the [Reducer](-reducer/index.md) class can be invoked like a function. + +[common]\ +inline fun <[I](create.md) : [Intent](-intent/index.md), [S](create.md) : [State](-state/index.md), [C](create.md) : [Change](-change/index.md), [V](create.md) : [ViewModel](-view-model/index.md)<[I](create.md), [S](create.md), [C](create.md)>> [ViewModelFactory](-view-model-factory/index.md).[create](create.md)(vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create.md) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/flat-map.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/flat-map.md index 1799af2..afaa49a 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/flat-map.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/flat-map.md @@ -8,17 +8,17 @@ @FlowPreview -inline fun <[T](flat-map.md), [R](flat-map.md)> Flow<[T](flat-map.md)>.[flatMap](flat-map.md)(strategy: [FlatMapStrategy](-flat-map-strategy/index.md) = FlatMapStrategy.Latest, crossinline transform: suspend ([T](flat-map.md)) -> Flow<[R](flat-map.md)>): Flow<[R](flat-map.md)> +inline fun <[T](flat-map.md), [R](flat-map.md)> Flow<[T](flat-map.md)>.[flatMap](flat-map.md)(strategy: [FlatMapStrategy](-flat-map-strategy/index.md) = FlatMapStrategy.Latest, crossinline transform: suspend (value: [T](flat-map.md)) -> Flow<[R](flat-map.md)>): Flow<[R](flat-map.md)> Performs the appropriate flatMap call according to the provided [strategy](flat-map.md). -## See also +#### See also common -| | | -|---|---| -| [com.chrynan.presentation.FlatMapStrategy](-flat-map-strategy/index.md) | | -| flatMapLatest | | -| flatMapConcat | | -| flatMapMerge | | +| | +|---| +| [FlatMapStrategy](-flat-map-strategy/index.md) | +| flatMapLatest | +| flatMapConcat | +| flatMapMerge | diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/get-or-null.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/get-or-null.md new file mode 100644 index 0000000..a614d5b --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/get-or-null.md @@ -0,0 +1,8 @@ +//[presentation-core](../../index.md)/[com.chrynan.presentation](index.md)/[getOrNull](get-or-null.md) + +# getOrNull + +[common]\ +fun <[I](get-or-null.md) : [Intent](-intent/index.md), [S](get-or-null.md) : [State](-state/index.md), [C](get-or-null.md) : [Change](-change/index.md), [V](get-or-null.md) : [ViewModel](-view-model/index.md)<[I](get-or-null.md), [S](get-or-null.md), [C](get-or-null.md)>> [ViewModelProvider](-view-model-provider/index.md).[getOrNull](get-or-null.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](get-or-null.md)>): [V](get-or-null.md)? + +inline fun <[I](get-or-null.md) : [Intent](-intent/index.md), [S](get-or-null.md) : [State](-state/index.md), [C](get-or-null.md) : [Change](-change/index.md), [V](get-or-null.md) : [ViewModel](-view-model/index.md)<[I](get-or-null.md), [S](get-or-null.md), [C](get-or-null.md)>> [ViewModelProvider](-view-model-provider/index.md).[getOrNull](get-or-null.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null): [V](get-or-null.md)? diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/get.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/get.md new file mode 100644 index 0000000..1287e6b --- /dev/null +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/get.md @@ -0,0 +1,6 @@ +//[presentation-core](../../index.md)/[com.chrynan.presentation](index.md)/[get](get.md) + +# get + +[common]\ +inline fun <[I](get.md) : [Intent](-intent/index.md), [S](get.md) : [State](-state/index.md), [C](get.md) : [Change](-change/index.md), [V](get.md) : [ViewModel](-view-model/index.md)<[I](get.md), [S](get.md), [C](get.md)>> [ViewModelProvider](-view-model-provider/index.md).[get](get.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null): [V](get.md) diff --git a/docs/presentation-core/presentation-core/com.chrynan.presentation/index.md b/docs/presentation-core/presentation-core/com.chrynan.presentation/index.md index d9f07e5..84c45b3 100644 --- a/docs/presentation-core/presentation-core/com.chrynan.presentation/index.md +++ b/docs/presentation-core/presentation-core/com.chrynan.presentation/index.md @@ -1,37 +1,43 @@ //[presentation-core](../../index.md)/[com.chrynan.presentation](index.md) -# Package com.chrynan.presentation +# Package-level declarations ## Types | Name | Summary | |---|---| | [Action](-action/index.md) | [common]
interface [Action](-action/index.md)<[I](-action/index.md) : [Intent](-intent/index.md), [S](-action/index.md) : [State](-state/index.md), [C](-action/index.md) : [Change](-change/index.md)>
An [Action](-action/index.md) performs the function of converting an [Intent](-intent/index.md) of type [I](-action/index.md) into a Flow of [Change](-change/index.md)s of type [C](-action/index.md). Unlike other components, such as, [Intent](-intent/index.md)s and [Change](-change/index.md)s, [Action](-action/index.md)s are not model classes and actually perform logic. They are responsible for connecting to the business logic. | -| [BaseViewModel](-base-view-model/index.md) | [common, android, ios, js, jvm]
[common]
expect abstract class [BaseViewModel](-base-view-model/index.md)
[android]
actual abstract class [BaseViewModel](-base-view-model/index.md) : [ViewModel](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModel.html)
[ios, js, jvm]
actual abstract class [BaseViewModel](-base-view-model/index.md) | -| [BasicStateStore](-basic-state-store/index.md) | [common]
class [BasicStateStore](-basic-state-store/index.md)<[I](-basic-state-store/index.md) : [Intent](-intent/index.md), [C](-basic-state-store/index.md) : [Change](-change/index.md), [S](-basic-state-store/index.md) : [State](-state/index.md)>(initialState: [S](-basic-state-store/index.md)?) : [StateStore](-state-store/index.md)<[I](-basic-state-store/index.md), [C](-basic-state-store/index.md), [S](-basic-state-store/index.md)> | +| [BasicStateStore](-basic-state-store/index.md) | [common]
class [BasicStateStore](-basic-state-store/index.md)<[I](-basic-state-store/index.md) : [Intent](-intent/index.md), [S](-basic-state-store/index.md) : [State](-state/index.md), [C](-basic-state-store/index.md) : [Change](-change/index.md)>(val initialState: [S](-basic-state-store/index.md)? = null) : [MutableStateStore](-mutable-state-store/index.md)<[I](-basic-state-store/index.md), [S](-basic-state-store/index.md), [C](-basic-state-store/index.md)> | | [Bindable](-bindable/index.md) | [common]
interface [Bindable](-bindable/index.md)
An interface for a component that can be bound to another component, typically which has a lifecycle. | | [Change](-change/index.md) | [common]
interface [Change](-change/index.md)
Represents the result of performing an [Action](-action/index.md) and is used, along with the previous [State](-state/index.md), to determine a new [State](-state/index.md). A previous [State](-state/index.md) and a [Change](-change/index.md) should be all that is needed for a [Reducer](-reducer/index.md) to be able to derive a new [State](-state/index.md). So include all necessary information in the [Change](-change/index.md). | | [DelegatingViewModel](-delegating-view-model/index.md) | [common]
class [DelegatingViewModel](-delegating-view-model/index.md)<[I](-delegating-view-model/index.md) : [Intent](-intent/index.md), [S](-delegating-view-model/index.md) : [State](-state/index.md), [C](-delegating-view-model/index.md) : [Change](-change/index.md)> : [ViewModel](-view-model/index.md)<[I](-delegating-view-model/index.md), [S](-delegating-view-model/index.md), [C](-delegating-view-model/index.md)>
An implementation of [ViewModel](-view-model/index.md) that delegates the provider properties to their corresponding [ViewModel](-view-model/index.md) equivalents. This implementation also makes a lot of the protected [ViewModel](-view-model/index.md) functions public so that they can be called in a scoped context. | -| [Event](-event/index.md) | [common]
data class [Event](-event/index.md)<[T](-event/index.md)>(value: [T](-event/index.md), elapsedSystemTime: [Duration](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html))
An event wrapper class around an [Intent](-intent/index.md) of type [T](-event/index.md). This class represents the event of an [Intent](-intent/index.md) being emitted. It contains additional event related properties, such as the [elapsedSystemTime](-event/elapsed-system-time.md) when this event was created. | +| [Event](-event/index.md) | [common]
data class [Event](-event/index.md)<[T](-event/index.md)>(val value: [T](-event/index.md), val elapsedSystemTime: [Duration](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html) = currentElapsedSystemTime)
An event wrapper class around an [Intent](-intent/index.md) of type [T](-event/index.md). This class represents the event of an [Intent](-intent/index.md) being emitted. It contains additional event related properties, such as the [elapsedSystemTime](-event/elapsed-system-time.md) when this event was created. | | [FlatMapStrategy](-flat-map-strategy/index.md) | [common]
@FlowPreview
sealed class [FlatMapStrategy](-flat-map-strategy/index.md)
A sealed class that indicates an approach to polling. Each approach determines how the upstream and downstream behaves. The available strategies are [Latest](-flat-map-strategy/-latest/index.md), [Merge](-flat-map-strategy/-merge/index.md), and [Concat](-flat-map-strategy/-concat/index.md). | | [Intent](-intent/index.md) | [common]
interface [Intent](-intent/index.md)
Represents the desire to perform an action. A [View](-view/index.md) emits [Intent](-intent/index.md)s to a [ViewModel](-view-model/index.md) via the [ViewModel.intent](-view-model/intent.md) function. These [Intent](-intent/index.md)s can be the result of User interaction. For instance, consider that a User scrolls to the bottom of a list, an [Intent](-intent/index.md) could be emitted to the [ViewModel.intent](-view-model/intent.md) function indicating that we intend to load more items into the list. | +| [MutableStateStore](-mutable-state-store/index.md) | [common]
interface [MutableStateStore](-mutable-state-store/index.md)<[I](-mutable-state-store/index.md) : [Intent](-intent/index.md), [S](-mutable-state-store/index.md) : [State](-state/index.md), [C](-mutable-state-store/index.md) : [Change](-change/index.md)> : [StateStore](-state-store/index.md)<[I](-mutable-state-store/index.md), [S](-mutable-state-store/index.md), [C](-mutable-state-store/index.md)> | +| [PlatformViewModel](-platform-view-model/index.md) | [common]
expect abstract class [PlatformViewModel](-platform-view-model/index.md)
The base class that a [ViewModel](-view-model/index.md) inherits from. This allows each supported platform to have a platform-specific base ViewModel component implementation. For instance, on Android this class can extend from the `androidx.lifecycle.ViewModel` component so that it can be used with the Android lifecycle.
[android, ios, js, jvm]
[android]
actual abstract class [PlatformViewModel](-platform-view-model/index.md) : [ViewModel](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModel.html)
[ios, js, jvm]
actual abstract class [PlatformViewModel](-platform-view-model/index.md) | | [PresentationFragment](-presentation-fragment/index.md) | [android]
abstract class [PresentationFragment](-presentation-fragment/index.md)<[I](-presentation-fragment/index.md) : [Intent](../../../presentation-core/presentation-core/com.chrynan.presentation/-intent/index.md), [S](-presentation-fragment/index.md) : [State](../../../presentation-core/presentation-core/com.chrynan.presentation/-state/index.md), [C](-presentation-fragment/index.md) : [Change](../../../presentation-core/presentation-core/com.chrynan.presentation/-change/index.md)> : [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html), [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md)<[I](-presentation-fragment/index.md), [S](-presentation-fragment/index.md), [C](-presentation-fragment/index.md)>
An Android [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html) base implementation of a [View](../../../presentation-core/presentation-core/com.chrynan.presentation/-view/index.md) for use with this library's MVI design pattern. | | [Presenter](-presenter/index.md) | [common]
interface [Presenter](-presenter/index.md)<[I](-presenter/index.md) : [Intent](-intent/index.md), [S](-presenter/index.md) : [State](-state/index.md), [C](-presenter/index.md) : [Change](-change/index.md)> : [Bindable](-bindable/index.md)
A [Presenter](-presenter/index.md) handles the presentation logic for a [View](-view/index.md). It coordinates the different presentation components, such as, the [Action](-action/index.md)s and the [Reducer](-reducer/index.md). This acts as the contract interface for the [ViewModel](-view-model/index.md) component. | | [Reducer](-reducer/index.md) | [common]
interface [Reducer](-reducer/index.md)<[S](-reducer/index.md) : [State](-state/index.md), [C](-reducer/index.md) : [Change](-change/index.md)>
A [Reducer](-reducer/index.md) is responsible for determining the [State](-state/index.md) that is displayed in the UI. A [Reducer](-reducer/index.md) takes the previous [State](-state/index.md) and a [Change](-change/index.md) and derives a new [State](-state/index.md). The [Reducer](-reducer/index.md) performs application logic. | | [State](-state/index.md) | [common]
interface [State](-state/index.md) : [ViewData](-view-data/index.md)
A [State](-state/index.md) is a special [ViewData](-view-data/index.md) that contains all necessary information to represent a UI. A [State](-state/index.md) can be derived from another [State](-state/index.md) and a [Change](-change/index.md). Also, a [State](-state/index.md) can be stored in a stateful component and retrieved for later usage. | -| [StateStore](-state-store/index.md) | [common]
interface [StateStore](-state-store/index.md)<[I](-state-store/index.md) : [Intent](-intent/index.md), [C](-state-store/index.md) : [Change](-change/index.md), [S](-state-store/index.md) : [State](-state/index.md)>
A component that retains the information about the current [State](-state/index.md) for a [ViewModel](-view-model/index.md). | +| [StateStore](-state-store/index.md) | [common]
interface [StateStore](-state-store/index.md)<[I](-state-store/index.md) : [Intent](-intent/index.md), [S](-state-store/index.md) : [State](-state/index.md), [C](-state-store/index.md) : [Change](-change/index.md)>
A component that retains the information about the current [State](-state/index.md) for a [ViewModel](-view-model/index.md). | | [View](-view/index.md) | [common]
interface [View](-view/index.md)<[I](-view/index.md) : [Intent](-intent/index.md), [S](-view/index.md) : [State](-state/index.md), [C](-view/index.md) : [Change](-change/index.md)>
Represents a piece of UI, such as a Screen, in an application. A [View](-view/index.md) emits [Intent](-intent/index.md)s of type [I](-view/index.md) to a [viewModel](-view/view-model.md) via the [ViewModel.intent](-view-model/intent.md) function. A [View](-view/index.md) displays the UI for a [State](-state/index.md) by subscribing to the [ViewModel.renderStates](-view-model/render-states.md) flow. | | [ViewData](-view-data/index.md) | [common]
interface [ViewData](-view-data/index.md)
Represents a model that contains the data required for a UI. Note a [State](-state/index.md) is a [ViewData](-view-data/index.md) but a [ViewData](-view-data/index.md) isn't necessarily a [State](-state/index.md). For instance, each item in a UI list should be represented as a [ViewData](-view-data/index.md) but it might not be preferable to have it as a [State](-state/index.md). Instead, the [State](-state/index.md) could represent the Screen UI and could contain the list item [ViewData](-view-data/index.md)s. | -| [ViewModel](-view-model/index.md) | [common]
abstract class [ViewModel](-view-model/index.md)<[I](-view-model/index.md) : [Intent](-intent/index.md), [S](-view-model/index.md) : [State](-state/index.md), [C](-view-model/index.md) : [Change](-change/index.md)>(initialState: [S](-view-model/index.md)?, dispatchers: CoroutineDispatchers) : [BaseViewModel](-base-view-model/index.md), [Presenter](-presenter/index.md)<[I](-view-model/index.md), [S](-view-model/index.md), [C](-view-model/index.md)>
A [ViewModel](-view-model/index.md) is a design pattern component that acts as a bridge between the [View](-view/index.md) and the application logic. It is responsible for coordinating the application logic, in the uni-directional flow established by this design pattern, to ultimately derive a new [State](-state/index.md) that is to be rendered by the [View](-view/index.md). This [ViewModel](-view-model/index.md) component does not have a reference to the [View](-view/index.md), instead the [View](-view/index.md) has a reference to a [ViewModel](-view-model/index.md), and calls the [ViewModel.renderStates](-view-model/render-states.md) property to obtain a Flow of [State](-state/index.md) changes that it subscribes to, so that it can update whenever the [ViewModel](-view-model/index.md) derives a new [State](-state/index.md). This simplifies the communication between the two components, by removing the cyclic dependency between the two (as is common in a traditional MVP design pattern). | -| [ViewModelFactory](-view-model-factory/index.md) | [common]
fun interface [ViewModelFactory](-view-model-factory/index.md)<[I](-view-model-factory/index.md) : [Intent](-intent/index.md), [S](-view-model-factory/index.md) : [State](-state/index.md), [C](-view-model-factory/index.md) : [Change](-change/index.md)>
A component that can create a [ViewModel](-view-model/index.md). This allows lazy instantiation of a [ViewModel](-view-model/index.md) which may be required to wait for the [View](-view/index.md) to be created first, then passing that into the [invoke](-view-model-factory/invoke.md) function to create the [ViewModel](-view-model/index.md) that will be bound to that [View](-view/index.md). | +| [ViewModel](-view-model/index.md) | [common]
abstract class [ViewModel](-view-model/index.md)<[I](-view-model/index.md) : [Intent](-intent/index.md), [S](-view-model/index.md) : [State](-state/index.md), [C](-view-model/index.md) : [Change](-change/index.md)>(initialState: [S](-view-model/index.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, resetOnUnbind: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = false) : [PlatformViewModel](-platform-view-model/index.md), [Presenter](-presenter/index.md)<[I](-view-model/index.md), [S](-view-model/index.md), [C](-view-model/index.md)> , [ViewModelFlowScope](-view-model-flow-scope/index.md)<[I](-view-model/index.md), [S](-view-model/index.md), [C](-view-model/index.md)>
A [ViewModel](-view-model/index.md) is a design pattern component that acts as a bridge between the [View](-view/index.md) and the application logic. It is responsible for coordinating the application logic, in the uni-directional flow established by this design pattern, to ultimately derive a new [State](-state/index.md) that is to be rendered by the [View](-view/index.md). This [ViewModel](-view-model/index.md) component does not have a reference to the [View](-view/index.md), instead the [View](-view/index.md) has a reference to a [ViewModel](-view-model/index.md), and calls the [ViewModel.renderStates](-view-model/render-states.md) property to obtain a Flow of [State](-state/index.md) changes that it subscribes to, so that it can update whenever the [ViewModel](-view-model/index.md) derives a new [State](-state/index.md). This simplifies the communication between the two components, by removing the cyclic dependency between the two (as is common in a traditional MVP design pattern). | +| [ViewModelFactory](-view-model-factory/index.md) | [common]
interface [ViewModelFactory](-view-model-factory/index.md) | +| [ViewModelFlowScope](-view-model-flow-scope/index.md) | [common]
interface [ViewModelFlowScope](-view-model-flow-scope/index.md)<[I](-view-model-flow-scope/index.md) : [Intent](-intent/index.md), [S](-view-model-flow-scope/index.md) : [State](-state/index.md), [C](-view-model-flow-scope/index.md) : [Change](-change/index.md)> | +| [ViewModelProvider](-view-model-provider/index.md) | [common]
interface [ViewModelProvider](-view-model-provider/index.md) | ## Functions | Name | Summary | |---|---| | [asUniqueId](as-unique-id.md) | [common]
inline fun <[T](as-unique-id.md) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [T](as-unique-id.md).[asUniqueId](as-unique-id.md)(): [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)
A convenience function for converting any type into a [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) value for use as a [ViewData.uniqueId](-view-data/unique-id.md). | -| [flatMap](flat-map.md) | [common]
@ExperimentalCoroutinesApi
@FlowPreview
inline fun <[T](flat-map.md), [R](flat-map.md)> Flow<[T](flat-map.md)>.[flatMap](flat-map.md)(strategy: [FlatMapStrategy](-flat-map-strategy/index.md) = FlatMapStrategy.Latest, crossinline transform: suspend ([T](flat-map.md)) -> Flow<[R](flat-map.md)>): Flow<[R](flat-map.md)>
Performs the appropriate flatMap call according to the provided [strategy](flat-map.md). | +| [create](create.md) | [common]
inline fun <[I](create.md) : [Intent](-intent/index.md), [S](create.md) : [State](-state/index.md), [C](create.md) : [Change](-change/index.md), [V](create.md) : [ViewModel](-view-model/index.md)<[I](create.md), [S](create.md), [C](create.md)>> [ViewModelFactory](-view-model-factory/index.md).[create](create.md)(vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create.md)
[common]
suspend fun <[I](create.md) : [Intent](-intent/index.md), [S](create.md) : [State](-state/index.md), [C](create.md) : [Change](-change/index.md)> [Action](-action/index.md)<[I](create.md), [S](create.md), [C](create.md)>.[create](create.md)(intent: [I](create.md), state: [S](create.md)?): Flow<[C](create.md)>
A convenience function that delegates to [Action.perform](-action/perform.md) allowing the [Action](-action/index.md) to be invoked like a function.
[common]
suspend fun <[S](create.md) : [State](-state/index.md), [C](create.md) : [Change](-change/index.md)> [Reducer](-reducer/index.md)<[S](create.md), [C](create.md)>.[create](create.md)(previous: [S](create.md)?, change: [C](create.md)): [S](create.md)?
A convenience operator function that delegates to the [reduce](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/index.html) function, so that the [Reducer](-reducer/index.md) class can be invoked like a function. | +| [createOrNull](create-or-null.md) | [common]
inline fun <[I](create-or-null.md) : [Intent](-intent/index.md), [S](create-or-null.md) : [State](-state/index.md), [C](create-or-null.md) : [Change](-change/index.md), [V](create-or-null.md) : [ViewModel](-view-model/index.md)<[I](create-or-null.md), [S](create-or-null.md), [C](create-or-null.md)>> [ViewModelFactory](-view-model-factory/index.md).[createOrNull](create-or-null.md)(vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create-or-null.md)?
fun <[I](create-or-null.md) : [Intent](-intent/index.md), [S](create-or-null.md) : [State](-state/index.md), [C](create-or-null.md) : [Change](-change/index.md), [V](create-or-null.md) : [ViewModel](-view-model/index.md)<[I](create-or-null.md), [S](create-or-null.md), [C](create-or-null.md)>> [ViewModelFactory](-view-model-factory/index.md).[createOrNull](create-or-null.md)(kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](create-or-null.md)>, vararg extras: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?): [V](create-or-null.md)? | +| [flatMap](flat-map.md) | [common]
@ExperimentalCoroutinesApi
@FlowPreview
inline fun <[T](flat-map.md), [R](flat-map.md)> Flow<[T](flat-map.md)>.[flatMap](flat-map.md)(strategy: [FlatMapStrategy](-flat-map-strategy/index.md) = FlatMapStrategy.Latest, crossinline transform: suspend (value: [T](flat-map.md)) -> Flow<[R](flat-map.md)>): Flow<[R](flat-map.md)>
Performs the appropriate flatMap call according to the provided [strategy](flat-map.md). | +| [get](get.md) | [common]
inline fun <[I](get.md) : [Intent](-intent/index.md), [S](get.md) : [State](-state/index.md), [C](get.md) : [Change](-change/index.md), [V](get.md) : [ViewModel](-view-model/index.md)<[I](get.md), [S](get.md), [C](get.md)>> [ViewModelProvider](-view-model-provider/index.md).[get](get.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null): [V](get.md) | +| [getOrNull](get-or-null.md) | [common]
inline fun <[I](get-or-null.md) : [Intent](-intent/index.md), [S](get-or-null.md) : [State](-state/index.md), [C](get-or-null.md) : [Change](-change/index.md), [V](get-or-null.md) : [ViewModel](-view-model/index.md)<[I](get-or-null.md), [S](get-or-null.md), [C](get-or-null.md)>> [ViewModelProvider](-view-model-provider/index.md).[getOrNull](get-or-null.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null): [V](get-or-null.md)?
fun <[I](get-or-null.md) : [Intent](-intent/index.md), [S](get-or-null.md) : [State](-state/index.md), [C](get-or-null.md) : [Change](-change/index.md), [V](get-or-null.md) : [ViewModel](-view-model/index.md)<[I](get-or-null.md), [S](get-or-null.md), [C](get-or-null.md)>> [ViewModelProvider](-view-model-provider/index.md).[getOrNull](get-or-null.md)(key: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, kClass: [KClass](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html)<[V](get-or-null.md)>): [V](get-or-null.md)? | | [intent](intent.md) | [common]
fun <[I](intent.md) : [Intent](-intent/index.md), [S](intent.md) : [State](-state/index.md), [C](intent.md) : [Change](-change/index.md)> [View](-view/index.md)<[I](intent.md), [S](intent.md), [C](intent.md)>.[intent](intent.md)(to: [I](intent.md))
Emits the provided [to](-intent/index.md) value to trigger an action, that may eventually result in a new [State](-state/index.md) being rendered. | -| [invoke](invoke.md) | [common]
suspend operator fun <[I](invoke.md) : [Intent](-intent/index.md), [S](invoke.md) : [State](-state/index.md), [C](invoke.md) : [Change](-change/index.md)> [Action](-action/index.md)<[I](invoke.md), [S](invoke.md), [C](invoke.md)>.[invoke](invoke.md)(intent: [I](invoke.md), state: [S](invoke.md)?): Flow<[C](invoke.md)>
A convenience function that delegates to [Action.perform](-action/perform.md) allowing the [Action](-action/index.md) to be invoked like a function.
[common]
suspend operator fun <[S](invoke.md) : [State](-state/index.md), [C](invoke.md) : [Change](-change/index.md)> [Reducer](-reducer/index.md)<[S](invoke.md), [C](invoke.md)>.[invoke](invoke.md)(previous: [S](invoke.md)?, change: [C](invoke.md)): [S](invoke.md)?
A convenience operator function that delegates to the [reduce](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/index.html) function, so that the [Reducer](-reducer/index.md) class can be invoked like a function. | | [ViewModel](-view-model.md) | [common]
fun <[I](-view-model.md) : [Intent](-intent/index.md), [S](-view-model.md) : [State](-state/index.md), [C](-view-model.md) : [Change](-change/index.md)> [ViewModel](-view-model.md)(initialState: [S](-view-model.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, onUnbind: [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onBind: [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>
fun <[I](-view-model.md) : [Intent](-intent/index.md), [S](-view-model.md) : [State](-state/index.md), [C](-view-model.md) : [Change](-change/index.md)> [ViewModel](-view-model.md)(initialState: [S](-view-model.md)? = null, dispatchers: CoroutineDispatchers = com.chrynan.dispatchers.dispatchers, onUnbind: [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onBind: [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>.() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onError: () -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, startWithInitialState: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = true, flatMapStrategy: [FlatMapStrategy](-flat-map-strategy/index.md) = FlatMapStrategy.Latest, perform: suspend ([I](-view-model.md), [S](-view-model.md)?) -> Flow<[C](-view-model.md)>, reduce: suspend ([S](-view-model.md)?, [C](-view-model.md)) -> [S](-view-model.md)): [DelegatingViewModel](-delegating-view-model/index.md)<[I](-view-model.md), [S](-view-model.md), [C](-view-model.md)>
A convenience function to create a [ViewModel](-view-model/index.md) without having to directly create an implementation. This could be especially useful for simple applications that don't have complex dependency management and testing requirements. | -| [viewModelFactory](view-model-factory.md) | [common]
fun <[I](view-model-factory.md) : [Intent](-intent/index.md), [S](view-model-factory.md) : [State](-state/index.md), [C](view-model-factory.md) : [Change](-change/index.md)> [viewModelFactory](view-model-factory.md)(retainInstance: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = true, factory: [ViewModelFactory](-view-model-factory/index.md)<[I](view-model-factory.md), [S](view-model-factory.md), [C](view-model-factory.md)>): [ReadOnlyProperty](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.properties/-read-only-property/index.html)<[View](-view/index.md)<[I](view-model-factory.md), [S](view-model-factory.md), [C](view-model-factory.md)>, [ViewModel](-view-model/index.md)<[I](view-model-factory.md), [S](view-model-factory.md), [C](view-model-factory.md)>>
fun <[I](view-model-factory.md) : [Intent](-intent/index.md), [S](view-model-factory.md) : [State](-state/index.md), [C](view-model-factory.md) : [Change](-change/index.md)> [viewModelFactory](view-model-factory.md)(retainInstance: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = true, factory: () -> [ViewModel](-view-model/index.md)<[I](view-model-factory.md), [S](view-model-factory.md), [C](view-model-factory.md)>): [ReadOnlyProperty](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.properties/-read-only-property/index.html)<[View](-view/index.md)<[I](view-model-factory.md), [S](view-model-factory.md), [C](view-model-factory.md)>, [ViewModel](-view-model/index.md)<[I](view-model-factory.md), [S](view-model-factory.md), [C](view-model-factory.md)>>
Creates a [ViewModelFactory](-view-model-factory/index.md) delegate. | +| [ViewModelProvider](-view-model-provider.md) | [common]
fun [ViewModelProvider](-view-model-provider.md)(factory: [ViewModelFactory](-view-model-factory/index.md)): [ViewModelProvider](-view-model-provider/index.md)
Constructs a [ViewModelProvider](-view-model-provider/index.md) using the provided [ViewModelFactory](-view-model-factory/index.md) to create instances of the ViewModels and caching the values in a [MutableMap](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html) by their associated keys for faster subsequent access. |