lookupItem(named:in:packer:context:replyHandler:)
Looks up an item within a directory and maps its disk space.
Declaration
func lookupItem(named name: FSFileName, in directory: FSItem, packer: FSExtentPacker, context: FSContext, replyHandler reply: @escaping @Sendable (FSLookupItemKOIOResult?, (any Error)?) -> Void)func lookupItem(named name: FSFileName, in directory: FSItem, packer: FSExtentPacker, context: FSContext) async throws -> FSLookupItemKOIOResultParameters
- name:
The name of the file to look up.
- directory:
The directory in which to look up the file.
- packer:
An extent packer you use to pack the file’s allocated disk space.
- context:
An object that enables context-aware file system decisions throughout the operation.
Discussion
::::: Swift ::::::::::
reply: A block or closure to indicate success or failure. If lookup succeeds, pass an instance of FSLookupItemKOIOResult containing the found FSItem together with its FSFileName (as saved within the file system) and its FSItem.Attributes, along with a
nilerror. If lookup fails, pass the relevant error as the second parameter; FSKit ignores the FSLookupItemKOIOResult instance in this case. For anasyncSwift implementation, there’s no reply handler; simply return the result instance or throw an error.
::::::::::::::::::::
::::: ObjC ::::::::::
result: A block or closure to indicate success or failure. If lookup succeeds, pass an instance of FSLookupItemKOIOResult containing the found FSItem together with its FSFileName (as saved within the file system) and its FSItem.Attributes, along with a
nilerror. If lookup fails, pass the relevant error as the second parameter; FSKit ignores the FSLookupItemKOIOResult instance in this case. For anasyncSwift implementation, there’s no reply handler; simply return the result instance or throw an error.
::::::::::::::::::::
Discussion
This method allows the module to opportunistically supply extents, avoiding future calls to blockmapFile(_:offset:length:flags:operationID:packer:replyHandler:). Only perform this technique opportunistically. In particular, don’t perform additional I/O to fetch extent data.