Contents

CFURLCreateFileReferenceURL(_:_:_:)

Returns a new file reference URL that points to the same resource as a specified URL.

Declaration

func CFURLCreateFileReferenceURL(_ allocator: CFAllocator!, _ url: CFURL!, _ error: UnsafeMutablePointer<Unmanaged<CFError>?>!) -> Unmanaged<CFURL>!

Parameters

  • allocator:

    The allocator to use to allocate memory for the new CFURL object. Pass NULL or Kcfallocatordefault to use the current default allocator.

  • url:

    The URL.

  • error:

    The error that occurred if the URL could not be created.

Return Value

The new file reference URL, or NULL if an error occurs.

Discussion

File reference URLs use a URL path syntax that identifies a file system object by reference, not by path. This form of file URL remains valid when the file system path of the URL’s underlying resource changes.

If the original URL is a file path URL, this function returns a copy of the URL converted into a file reference URL. If the original URL is a file reference URL, this function returns the original. If the original URL is not a file URL, this function returns nil.

File reference URLs cannot be created to file system objects which do not exist or are not reachable. This function returns nil instead.

In some areas of the file system hierarchy, file reference URLs cannot be generated to the leaf node of the URL path.

See Also

Creating a CFURL