LocationPermissionStateRepo
class LocationPermissionStateRepo(locationPermission: LocationPermission, builder: BaseLocationPermissionManagerBuilder, monitoringInterval: Duration = defaultMonitoringInterval, settings: BasePermissionManager.Settings = BasePermissionManager.Settings(), coroutineContext: CoroutineContext) : PermissionStateRepo<LocationPermission>
A PermissionStateRepo for LocationPermission
Parameters
locationPermission
the LocationPermission to manage
builder
The LocationPermissionManagerBuilder for creating the LocationPermissionManager associated with the permission
monitoringInterval
the Duration after which the system should poll for changes to the permission if automatic detection is impossible.
settings
the BasePermissionManager.Settings used by the LocationPermissionManager created by the builder
coroutineContext
The CoroutineContext to run the state machine on.
Constructors
Link copied to clipboard
constructor(locationPermission: LocationPermission, builder: BaseLocationPermissionManagerBuilder, monitoringInterval: Duration = defaultMonitoringInterval, settings: BasePermissionManager.Settings = BasePermissionManager.Settings(), coroutineContext: CoroutineContext)
Properties
Link copied to clipboard
Link copied to clipboard
val deinitChangeStateWithRepo: suspend (PermissionState<LocationPermission>, ColdStateFlowRepo<PermissionState<LocationPermission>>) -> suspend () -> PermissionState<LocationPermission>?
Link copied to clipboard
Link copied to clipboard
val initChangeStateWithRepo: suspend (PermissionState<LocationPermission>, ColdStateFlowRepo<PermissionState<LocationPermission>>) -> suspend () -> PermissionState<LocationPermission>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Functions
Link copied to clipboard
open suspend override fun collect(collector: FlowCollector<PermissionState<LocationPermission>>): Nothing
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun launchTakeAndChangeState(context: CoroutineContext, action: suspend (PermissionState<LocationPermission>) -> suspend () -> PermissionState<LocationPermission>): Job
fun <K : PermissionState<LocationPermission>> launchTakeAndChangeState(context: CoroutineContext, remainIfStateNot: KClass<K>, action: suspend (K) -> suspend () -> PermissionState<LocationPermission>): Job
Link copied to clipboard
fun <Result> launchUseState(context: CoroutineContext, action: suspend (PermissionState<LocationPermission>) -> Result): Job
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
suspend fun takeAndChangeState(action: suspend (PermissionState<LocationPermission>) -> suspend () -> PermissionState<LocationPermission>): PermissionState<LocationPermission>
suspend fun <K : PermissionState<LocationPermission>> takeAndChangeState(remainIfStateNot: KClass<K>, action: suspend (K) -> suspend () -> PermissionState<LocationPermission>): PermissionState<LocationPermission>
Link copied to clipboard
suspend fun <Result> useState(action: suspend (PermissionState<LocationPermission>) -> Result): Result