File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -16,8 +16,8 @@ struct Counter: Dripper {
1616
1717 // MARK: Nested Types
1818
19- @MainActor
2019 @Observable
20+ @MainActor
2121 final class State : Sendable {
2222 var counter : Int = . zero
2323 var text = " "
@@ -43,11 +43,6 @@ struct Counter: Dripper {
4343 state. counter = . zero
4444 case . randomNumber:
4545 return . run { pour in
46- func randomNumber( ) async throws -> Int {
47- try await Task . sleep ( for: . seconds( 1 ) )
48- return Int . random ( in: 1 ... 100 )
49- }
50-
5146 let randomNumber = try await randomNumber ( )
5247
5348 pour ( . decreaseCounter)
@@ -58,6 +53,13 @@ struct Counter: Dripper {
5853 return . none
5954 }
6055 }
56+
57+ // MARK: Functions
58+
59+ private func randomNumber( ) async throws -> Int {
60+ try await Task . sleep ( for: . seconds( 1 ) )
61+ return Int . random ( in: 1 ... 100 )
62+ }
6163}
6264
6365import SwiftUI
Original file line number Diff line number Diff line change @@ -50,8 +50,8 @@ extension Effect {
5050 // MARK: Static Functions
5151
5252 public static func run(
53- blend: @escaping ( _ pour: Pour < Action > ) async throws -> Void ,
54- catch errorHandler: ( ( _ error: any Error , _ pour: Pour < Action > ) async -> Void ) ? = nil ,
53+ blend: @escaping @ MainActor ( _ pour: Pour < Action > ) async throws -> Void ,
54+ catch errorHandler: ( @ MainActor ( _ error: any Error , _ pour: Pour < Action > ) async -> Void ) ? = nil ,
5555 fileID: StaticString = #fileID,
5656 line: UInt = #line
5757 ) -> Self {
You can’t perform that action at this time.
0 commit comments