Skip to content

Instantly share code, notes, and snippets.

@atimca
Created June 19, 2020 09:12
Show Gist options
  • Save atimca/7029a319d475e7d34f46e76faa5e741d to your computer and use it in GitHub Desktop.
Save atimca/7029a319d475e7d34f46e76faa5e741d to your computer and use it in GitHub Desktop.
func transform(
newsReducer: @escaping (NewsState, AppEvent) -> NewsState,
appStateIntoNews: @escaping (AppState) -> NewsState
) -> Reducer {
return { appState, appEvent in
var appState = appState
let newsState = appStateIntoNews(appState)
let newNewsState = newsReducer(newsState, appEvent)
appState.newsState = newNewsState
return appState
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment