VerifiedActionBinding
public struct VerifiedActionBinding<FeatureType, ActionType> where FeatureType : ConditionalFeature, ActionType : Action
A type used to prevent direct execution of actions on ConditionalFeature
(s), such that
ActionSession
only has functions to perform actions using VerifiedActionBinding
and not
a perform()
using a ConditionalActionBinding
.
This makes it impossible to directly perform an action of a conditional feature without first requesting access to it, as these request instances are only created by the framework and must be used to perform such actions.
The protocol extensions on ConditionalFeature
only supports
request
and not perform
, forcing the caller to test if the feature is available first and at least
explicitly ignore the feature not available
path, but hopefully provide a code path for that.
-
Undocumented
Declaration
Swift
public let actionBinding: ConditionalActionBinding<FeatureType, ActionType>
-
Undocumented
Declaration
Swift
public func perform(withInput input: ActionType.InputType, presenter: ActionType.PresenterType, completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withInput input: ActionType.InputType, presenter: ActionType.PresenterType, userInitiated: Bool, source: ActionSource = .application, completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withInput input: ActionType.InputType, presenter: ActionType.PresenterType, userInitiated: Bool, source: ActionSource = .application, completion: Action.Completion) -> Action.Completion.Status
-
Undocumented
Declaration
Swift
public func perform(withInput input: ActionType.InputType, completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withInput input: ActionType.InputType, userInitiated: Bool, source: ActionSource, completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withPresenter presenter: ActionType.PresenterType, completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withPresenter presenter: ActionType.PresenterType, userInitiated: Bool, source: ActionSource, completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withCompletion completion: ((ActionOutcome) -> ())? = nil)
-
Undocumented
Declaration
Swift
public func perform(withUserInitiated userInitiated: Bool, source: ActionSource, completion: ((ActionOutcome) -> ())? = nil)