Function

CFPropertyListCreateDeepCopy(_:_:_:)

Recursively creates a copy of a given property list.

Declaration

func CFPropertyListCreateDeepCopy(_ allocator: CFAllocator!, _ propertyList: CFPropertyList!, _ mutabilityOption: CFOptionFlags) -> CFPropertyList!

Parameters

allocator

The allocator to use to allocate memory for the new property list. Pass NULL or kCFAllocatorDefault to use the current default allocator.

propertyList

The property list to copy. This may be any of the standard property list objects, for example a CFArray or a CFDictionary object.

mutabilityOption

A constant that specifies the degree of mutability of the returned property list. See Property List Mutability Options for descriptions of possible values.

Return Value

A new property list that is a copy of propertyList. Ownership follows the The Create Rule.

Discussion

Recursively creates a copy of the given property list so nested arrays and dictionaries are copied as well as the top-most container.