@@ -33,41 +33,49 @@ private inline fun Fragment.safeViewCollect(crossinline viewOwner: LifecycleOwne
33
33
}
34
34
35
35
fun <T1 , T2 > Fragment.combineFlows (flow1 : Flow <T1 >, flow2 : Flow <T2 >, collectBlock : ((T1 , T2 ) -> Unit )) {
36
- viewLifecycleOwner.lifecycleScope.launchWhenCreated {
37
- flow1.combine(flow2) { v1, v2 ->
38
- collectBlock.invoke(v1, v2)
39
- }.collect {
40
- // Empty collect block to trigger ^
36
+ safeViewCollect {
37
+ viewLifecycleOwner.lifecycleScope.launchWhenCreated {
38
+ flow1.combine(flow2) { v1, v2 ->
39
+ collectBlock.invoke(v1, v2)
40
+ }.collect {
41
+ // Empty collect block to trigger ^
42
+ }
41
43
}
42
44
}
43
45
}
44
46
45
47
fun <T1 , T2 , T3 > Fragment.combineFlows (flow1 : Flow <T1 >, flow2 : Flow <T2 >, flow3 : Flow <T3 >, collectBlock : ((T1 , T2 , T3 ) -> Unit )) {
46
- viewLifecycleOwner.lifecycleScope.launchWhenCreated {
47
- combine(flow1, flow2, flow3) { v1, v2, v3 ->
48
- collectBlock.invoke(v1, v2, v3)
49
- }.collect {
50
- // Empty collect block to trigger ^
48
+ safeViewCollect {
49
+ viewLifecycleOwner.lifecycleScope.launchWhenCreated {
50
+ combine(flow1, flow2, flow3) { v1, v2, v3 ->
51
+ collectBlock.invoke(v1, v2, v3)
52
+ }.collect {
53
+ // Empty collect block to trigger ^
54
+ }
51
55
}
52
56
}
53
57
}
54
58
55
59
fun <T1 , T2 , T3 , T4 > Fragment.combineFlows (flow1 : Flow <T1 >, flow2 : Flow <T2 >, flow3 : Flow <T3 >, flow4 : Flow <T4 >, collectBlock : ((T1 , T2 , T3 , T4 ) -> Unit )) {
56
- viewLifecycleOwner.lifecycleScope.launchWhenCreated {
57
- combine(flow1, flow2, flow3, flow4) { v1, v2, v3, v4 ->
58
- collectBlock.invoke(v1, v2, v3, v4)
59
- }.collect {
60
- // Empty collect block to trigger ^
60
+ safeViewCollect {
61
+ viewLifecycleOwner.lifecycleScope.launchWhenCreated {
62
+ combine(flow1, flow2, flow3, flow4) { v1, v2, v3, v4 ->
63
+ collectBlock.invoke(v1, v2, v3, v4)
64
+ }.collect {
65
+ // Empty collect block to trigger ^
66
+ }
61
67
}
62
68
}
63
69
}
64
70
65
71
fun <T1 , T2 > Fragment.zipFlows (flow1 : Flow <T1 >, flow2 : Flow <T2 >, collectBlock : ((T1 , T2 ) -> Unit )) {
66
- viewLifecycleOwner.lifecycleScope.launchWhenCreated {
67
- flow1.zip(flow2) { v1, v2 ->
68
- collectBlock.invoke(v1, v2)
69
- }.collect {
70
- // Empty collect block to trigger ^
72
+ safeViewCollect {
73
+ viewLifecycleOwner.lifecycleScope.launchWhenCreated {
74
+ flow1.zip(flow2) { v1, v2 ->
75
+ collectBlock.invoke(v1, v2)
76
+ }.collect {
77
+ // Empty collect block to trigger ^
78
+ }
71
79
}
72
80
}
73
81
}
0 commit comments