Skip to content

Commit 6701a61

Browse files
committed
Try-catch + throws
1 parent 601c605 commit 6701a61

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

Fruitties/iosApp/iosApp/IOSViewModelStoreOwner.swift

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,16 @@ class IOSViewModelStoreOwner: ObservableObject {
1313
factory: Lifecycle_viewmodelViewModelProviderFactory,
1414
extras: Lifecycle_viewmodelCreationExtras,
1515
) -> T {
16-
let vm =
17-
viewModelStore.getViewModel(
16+
do {
17+
return try viewModelStore.getViewModel(
1818
modelClass: T.self,
1919
factory: factory,
2020
key: key,
2121
extras: extras
2222
) as! T
23-
24-
return vm
23+
} catch {
24+
fatalError("Failed to create ViewModel of type \(T.self)")
25+
}
2526
}
2627

2728
func clear() {

Fruitties/shared/src/iosMain/kotlin/com/example/fruitties/di/viewmodel/IOSViewModelStoreOwner.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import kotlin.reflect.KClass
1111

1212
@Suppress("unused") // Android Studio is not aware of iOS usage.
1313
@OptIn(BetaInteropApi::class)
14+
@Throws(IllegalStateException::class)
1415
fun ViewModelStore.getViewModel(
1516
modelClass: ObjCClass,
1617
factory: ViewModelProvider.Factory,

0 commit comments

Comments
 (0)