MoEngageStorage
-
Declaration
Swift
extension MoEngageStorage.AsyncDynamicStorage: MoEngageStorage.AsyncReadOnlyLocation where Base: MoEngageStorage.AsyncReadOnlyLocation, Base.Input == BaseInputextension MoEngageStorage.AsyncDynamicStorage: MoEngageStorage.AsyncWriteOnlyLocation where Base: MoEngageStorage.AsyncWriteOnlyLocation, Base.Saved == BaseInput
-
Declaration
Swift
extension MoEngageStorage.DefaultValueStorage: MoEngageStorage.ReadOnlyLocation where Wrapped: MoEngageStorage.ReadOnlyLocation, Wrapped: MoEngageStorage.WriteOnlyLocation, Wrapped.Stored == Default?, Wrapped.Saved == Default?extension MoEngageStorage.DefaultValueStorage: MoEngageStorage.WriteOnlyLocation where Wrapped: MoEngageStorage.ReadOnlyLocation, Wrapped: MoEngageStorage.WriteOnlyLocation, Wrapped.Stored == Default?, Wrapped.Saved == Default?, Wrapped.Input == Void, Wrapped.Output == Voidextension MoEngageStorage.DefaultValueStorage: MoEngageStorage.MigratableLocation where Wrapped: MoEngageStorage.MigratableLocation -
Declaration
Swift
extension MoEngageStorage.DynamicStorage: MoEngageStorage.ReadOnlyLocation where Base: MoEngageStorage.ReadOnlyLocation, Base.Input == BaseInputextension MoEngageStorage.DynamicStorage: MoEngageStorage.WriteOnlyLocation where Base: MoEngageStorage.WriteOnlyLocation
-
Declaration
Swift
extension MoEngageStorage.ErrorErasedStorage: MoEngageStorage.ReadOnlyLocationextension MoEngageStorage.ErrorErasedStorage: MoEngageStorage.WriteOnlyLocationextension MoEngageStorage.ErrorErasedStorage: MoEngageStorage.MigratableLocation -
Declaration
Swift
extension MoEngageStorage.KeyPathStorage: MoEngageStorage.ReadOnlyLocationextension MoEngageStorage.KeyPathStorage: @unchecked Sendableextension MoEngageStorage.KeyPathStorage: MoEngageStorage.WriteOnlyLocation where Location: MoEngageStorage.WriteOnlyLocation, Path: WritableKeyPath<Location.Stored, Value>, Location.Input == Void, Location.Stored == Location.Savedextension MoEngageStorage.KeyPathStorage: MoEngageStorage.MigratableLocation where Self: MoEngageStorage.WriteOnlyLocation, Value: MoEngageStorage.ResettableValueextension MoEngageStorage.KeyPathStorage: Equatable where Location: Equatableextension MoEngageStorage.KeyPathStorage: Hashable where Location: Hashable
-
Declaration
Swift
extension MoEngageStorage.WritableOptional: Sendable where Wrapped: Sendable
-
Declaration
Swift
extension MoEngageStorage.MappingStorage: MoEngageStorage.ReadOnlyLocation where Location: MoEngageStorage.ReadOnlyLocation, Location.Stored == MappingFromextension MoEngageStorage.MappingStorage: MoEngageStorage.WriteOnlyLocation where Location: MoEngageStorage.WriteOnlyLocation, Location.Saved == MappingToextension MoEngageStorage.MappingStorage: MoEngageStorage.MigratableLocation where Location: MoEngageStorage.MigratableLocation -
Declaration
Swift
extension MoEngageStorage.SDKInstanceProperty: MoEngageStorage.ReadOnlyLocationextension MoEngageStorage.SDKInstanceProperty: MoEngageStorage.WriteOnlyLocationextension MoEngageStorage.SDKInstanceProperty: MoEngageStorage.MigratableLocation where Value: MoEngageStorage.ResettableValue -
Declaration
Swift
extension MoEngageStorage.SynchronizedStorage: MoEngageStorage.ReadOnlyLocation where Location: MoEngageStorage.ReadOnlyLocationextension MoEngageStorage.SynchronizedStorage: MoEngageStorage.WriteOnlyLocation where Location: MoEngageStorage.WriteOnlyLocationextension MoEngageStorage.SynchronizedStorage: MoEngageStorage.MigratableLocation where Location: MoEngageStorage.MigratableLocationextension MoEngageStorage.SynchronizedStorage: Equatable where Location: Equatableextension MoEngageStorage.SynchronizedStorage: Hashable where Location: Hashable
-
Declaration
Swift
extension MoEngageStorage.FileStorage: Hashable
-
Declaration
Swift
extension MoEngageStorage.MigratingStorage: MoEngageStorage.ReadOnlyLocationextension MoEngageStorage.MigratingStorage: MoEngageStorage.MigratableLocationextension MoEngageStorage.MigratingStorage: MoEngageStorage.WriteOnlyLocation where ReadInput == Void -
Declaration
Swift
extension MoEngageStorage.MirroredStorage: MoEngageStorage.ReadOnlyLocation where Primary: MoEngageStorage.ReadOnlyLocation & MoEngageStorage.WriteOnlyLocation, Mirror: MoEngageStorage.ReadOnlyLocation & MoEngageStorage.WriteOnlyLocation, Primary.Input == Mirror.Input, PrimaryStored == Primary.Stored, MirrorStored == Mirror.Stored, Primary.Stored == Mirror.Stored, Primary.Stored == Primary.Saved, Mirror.Stored == Mirror.Savedextension MoEngageStorage.MirroredStorage: MoEngageStorage.WriteOnlyLocation where Primary: MoEngageStorage.WriteOnlyLocation, Mirror: MoEngageStorage.WriteOnlyLocation, Primary.Saved == Mirror.Saved, Primary.Output == Mirror.Output, Primary.Output == Voidextension MoEngageStorage.MirroredStorage: MoEngageStorage.MigratableLocation where Primary: MoEngageStorage.MigratableLocation, Mirror: MoEngageStorage.MigratableLocation
-
A type that can flush its in-memory state to a backing store.
Conforming types perform a deferred or scheduled write when
See moreflush(inInstance:)is called. The exact timing and behaviour is implementation-defined; useForceFlushablewhen an immediate, synchronous flush is required.Declaration
Swift
public protocol Flushable
-
A type that can cancel a pending deferred operation.
Conforming types hold a scheduled unit of work (e.g. a delayed flush task) that can be abandoned without side effects by calling
See morecancel().Declaration
Swift
public protocol Cancellable
-
A type that supports both a deferred flush and an immediate force-flush.
Extends
See moreFlushablewith aflush(force:inInstance:)variant that can bypass the normal scheduling delay and write to the backing store right away. Typically conformed to by cache types (e.g.MoEngageStorage/FileStorage/State) that schedule deferred writes but must also support urgent persistence before app suspension or logout.Declaration
Swift
public protocol ForceFlushable : MoEngageStorage.Flushable
-
A type that manages a deferred flush and can cancel it.
FlushSchedulingcomposesFlushableandCancellable: conforming types both hold an in-memory value that can be flushed to a backing store and expose a way to abandon a pending scheduled write.Use
ForceFlushablewhen the conformer also needs to support immediate force-flush in addition to the standard deferred behaviour.Declaration
Swift
public typealias FlushScheduling = Flushable & Cancellable -
Declaration
Swift
extension MoEngageStorage.State: Sendable