Other Extensions

The following extensions are available globally.

Codable Conformance

Integer Types Conformances

  • Int

    Declaration

    Swift

    extension Int: MoEngageDataTracking.Event.Attributable
    extension Int: MoEngageSDKUser.Attributes.Attributable
    extension Int: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Int: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension Int8: MoEngageDataTracking.Event.Attributable
    extension Int8: MoEngageSDKUser.Attributes.Attributable
    extension Int8: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Int8: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension Int16: MoEngageDataTracking.Event.Attributable
    extension Int16: MoEngageSDKUser.Attributes.Attributable
    extension Int16: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Int16: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension Int32: MoEngageDataTracking.Event.Attributable
    extension Int32: MoEngageSDKUser.Attributes.Attributable
    extension Int32: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Int32: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension Int64: MoEngageDataTracking.Event.Attributable
    extension Int64: MoEngageSDKUser.Attributes.Attributable
    extension Int64: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Int64: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension UInt: MoEngageDataTracking.Event.Attributable
    extension UInt: MoEngageSDKUser.Attributes.Attributable
    extension UInt: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension UInt: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension UInt8: MoEngageDataTracking.Event.Attributable
    extension UInt8: MoEngageSDKUser.Attributes.Attributable
    extension UInt8: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension UInt8: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension UInt16: MoEngageDataTracking.Event.Attributable
    extension UInt16: MoEngageSDKUser.Attributes.Attributable
    extension UInt16: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension UInt16: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension UInt32: MoEngageDataTracking.Event.Attributable
    extension UInt32: MoEngageSDKUser.Attributes.Attributable
    extension UInt32: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension UInt32: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension UInt64: MoEngageDataTracking.Event.Attributable
    extension UInt64: MoEngageSDKUser.Attributes.Attributable
    extension UInt64: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension UInt64: MoEngageSDKUser.Device.Attributes.Attributable

Floating Point Types Conformances

  • Declaration

    Swift

    extension Float: MoEngageDataTracking.Event.Attributable
    extension Float: MoEngageSDKUser.Attributes.Attributable
    extension Float: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Float: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension Float16: MoEngageDataTracking.Event.Attributable
    extension Float16: MoEngageSDKUser.Attributes.Attributable
    extension Float16: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Float16: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension Double: MoEngageDataTracking.Event.Attributable
    extension Double: MoEngageSDKUser.Attributes.Attributable
    extension Double: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Double: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension CGFloat: MoEngageDataTracking.Event.Attributable
    extension CGFloat: MoEngageSDKUser.Attributes.Attributable
    extension CGFloat: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension CGFloat: MoEngageSDKUser.Device.Attributes.Attributable

NSNumber Conformance

  • Declaration

    Swift

    extension NSNumber: MoEngageDataTracking.Event.Attributable
    extension NSNumber: MoEngageSDKUser.Attributes.Attributable
    extension NSNumber: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension NSNumber: MoEngageSDKUser.Device.Attributes.Attributable

String Conformances

  • Declaration

    Swift

    extension String: MoEngageDataTracking.Event.Attributable
    extension String: MoEngageSDKUser.Attributes.Attributable
    extension String: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension String: MoEngageSDKUser.Device.Attributes.Attributable
  • Declaration

    Swift

    extension NSString: MoEngageDataTracking.Event.Attributable
    extension NSString: MoEngageSDKUser.Attributes.Attributable
    extension NSString: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension NSString: MoEngageSDKUser.Device.Attributes.Attributable

Bool Conformance

  • Declaration

    Swift

    extension Bool: MoEngageDataTracking.Event.Attributable
    extension Bool: MoEngageSDKUser.Attributes.Attributable
    extension Bool: MoEngageSDKUser.Device.Attributes.Legacy.Attributable
    extension Bool: MoEngageSDKUser.Device.Attributes.Attributable

Date Conformance

  • Declaration

    Swift

    extension Date: MoEngageDataTracking.Event.Attributable
    extension Date: MoEngageSDKUser.Attributes.Attributable
  • Declaration

    Swift

    extension NSDate: MoEngageDataTracking.Event.Attributable
    extension NSDate: MoEngageSDKUser.Attributes.Attributable

URL Conformance

  • URL

    Declaration

    Swift

    extension URL: MoEngageDataTracking.Event.Attributable
    extension URL: MoEngageSDKUser.Attributes.Attributable
  • Declaration

    Swift

    extension NSURL: MoEngageDataTracking.Event.Attributable
    extension NSURL: MoEngageSDKUser.Attributes.Attributable

Array Conformances

  • Declaration

    Swift

    extension Array: MoEngageDataTracking.Event.Attributable
    extension Array: MoEngageResettableValue
    extension Array: MoEngageStorage.ResettableValue
    extension Array: MoEngageSDKUser.Attributes.Attributable where Element: MoEngageSDKUser.Attributes.Attributable
  • Declaration

    Swift

    extension NSArray: MoEngageDataTracking.Event.Attributable
    extension NSArray: MoEngageSDKUser.Attributes.Attributable

Dictionary Conformances

  • Declaration

    Swift

    extension Dictionary: MoEngageDataTracking.Event.Attributable where Key == String
    extension Dictionary: MoEngageSDKUser.Attributes.Attributable where Key == String
  • Declaration

    Swift

    extension NSDictionary: MoEngageDataTracking.Event.Attributable
    extension NSDictionary: MoEngageSDKUser.Attributes.Attributable
  • Declaration

    Swift

    extension Optional: MoEngageResettableValue
    extension Optional: MoEngageStorage.ResettableValue
    extension Optional: MoEngageDataTracking.Event.Attributable where Wrapped: MoEngageDataTracking.Event.Attributable
    extension Optional: MoEngageSDKUser.Attributes.Attributable where Wrapped: MoEngageDataTracking.Event.Attributable
    extension Optional: MoEngageSDKUser.Device.Attributes.Attributable
    where Wrapped: MoEngageSDKUser.Device.Attributes.Attributable

Fetch SDK Instance for other modules

  • Declaration

    Swift

    public extension MoEngageSDKInstanceProvider
  • Declaration

    Swift

    public extension MoEngageCoreConstants
  • Declaration

    Swift

    extension MoEngageCoreHandler
  • Declaration

    Swift

    extension MoEngageDelayedOperation
  • Bridges a MoEngageControllerProvider (non-isolated) to MoEngageSDKControllerProvider (actor-isolated), enabling MoEngageSDKControllerDispatcher to drive the deprecated provider.

    Declared on MoEngageControllerProvider (not MoEngageSDKControllerProvider) so the non-isolated getController(forInstance:) requirement is in scope. The forwarding call is bound through an explicitly typed (MoEngageSDKInstance) -> … function reference so it resolves to the non-isolated overload — calling getController(forInstance:) directly here would re-select this isolated default and recurse infinitely.

    See more

    Declaration

    Swift

    public extension MoEngageControllerProvider
  • Declaration

    Swift

    extension MoEngageSDKInstance

LegacySession

Collection Extensions

  • Declaration

    Swift

    public extension Collection where Element == MoEngageModule.Info

MigrationChain

UIApplication Conformance

  • Extension making UIApplication conform to MoEngageUIApplication.

    This extension enables the real UIApplication to be used interchangeably with mock implementations through the protocol abstraction.

    See more

    Declaration

    Swift

    extension UIApplication: MoEngageUIApplication

UNUserNotificationCenter Conformance

  • Extension making UNUserNotificationCenter conform to MoEngageUNUserNotificationCenter.

    This extension enables the real UNUserNotificationCenter to be used interchangeably with mock implementations through the protocol abstraction.

    See more

    Declaration

    Swift

    extension UNUserNotificationCenter: MoEngageUNUserNotificationCenter

Backwards Deployment Support

Reload Data

Session & State Management

Key Generation Helpers

Floating Support