Home - mbrandonw/swift-composable-architecture GitHub Wiki

Types

  • ActionFormat: Determines how the string description of an action should be printed when using the .debug() higher-order reducer.
  • DebugEnvironment: An environment for debug-printing reducers.
  • Effect: The Effect type encapsulates a unit of work that can be run in the outside world, and can feed data back to the Store. It is the perfect place to do side effects, such as network requests, saving/loading from disk, creating timers, interacting with dependencies, and more.
  • Effect.Subscriber
  • Reducer: A reducer describes how to evolve the current state of an application to the next state, given an action, and describes what Effects should be executed later by the store, if any.
  • Store: A store represents the runtime that powers the application. It is the object that you will pass around to views that need to interact with the application.
  • StorePublisher: A publisher of store state.
  • ActionSheetState: A data type that describes the state of an action sheet that can be shown to the user. The Action generic is the type of actions that can be sent from tapping on a button in the sheet.
  • AlertState: A data type that describes the state of an alert that can be shown to the user. The Action generic is the type of actions that can be sent from tapping on a button in the alert.
  • AlertState.Button
  • AlertState.Button.`Type`
  • ForEachStore: A structure that computes views on demand from a store on a collection of data.
  • Identified: A wrapper around a value and a hashable identifier that conforms to identifiable.
  • IdentifiedArray: An array of elements that can be identified by a given key path.
  • IfLetStore: A view that safely unwraps a store of optional state in order to show one of two views.
  • WithViewStore: A structure that transforms a store into an observable view store in order to compute views from store state.
  • TestStore: A testable runtime for a reducer.
  • TestStore.Step: A single step of a TestStore assertion.
  • ViewStore: A ViewStore is an object that can observe state changes and send actions. They are most commonly used in views, such as SwiftUI views, UIView or UIViewController, but they can be used anywhere it makes sense to observe state and send actions.

Protocols

Global Typealiases

  • IdentifiedArrayOf: A convenience type to specify an IdentifiedArray by an identifiable element.