Contents

decodeObject(of:forKey:)

Decode an object as an expected type, failing if the archived type doesn’t match.

Declaration

func decodeObject<DecodedObjectType>(of cls: DecodedObjectType.Type, forKey key: String) -> DecodedObjectType? where DecodedObjectType : NSObject, DecodedObjectType : NSCoding

Parameters

  • cls:

    The expected class of the object being decoded.

  • key:

    The key indicating the member to decode.

Return Value

The decoded object, or nil if decoding fails.

Discussion

If the coder responds true to requiresSecureCoding, then the coder calls failWithError(_:) in either of the following cases:

  • The class indicated by cls doesn’t implement NSSecureCoding.

  • The unarchived class doesn’t match cls, nor do any of its superclasses.

If the coder doesn’t require secure coding, it ignores the cls parameter and does not check the decoded object.

See Also

Decoding Top-Level Objects