Changeset View
Changeset View
Standalone View
Standalone View
swh/fuse/fs/entry.py
Show First 20 Lines • Show All 77 Lines • ▼ Show 20 Lines | class FuseDirEntry(FuseEntry): | ||||
async def __aiter__(self): | async def __aiter__(self): | ||||
""" Return the child entries of a directory entry """ | """ Return the child entries of a directory entry """ | ||||
raise NotImplementedError | raise NotImplementedError | ||||
async def lookup(self, name: str) -> FuseEntry: | async def lookup(self, name: str) -> FuseEntry: | ||||
""" Look up a FUSE entry by name """ | """ Look up a FUSE entry by name """ | ||||
async for entry in self: | entries = await self.fuse.cache.direntry.get(self) | ||||
for entry in entries: | |||||
if entry.name == name: | if entry.name == name: | ||||
return entry | return entry | ||||
return None | return None | ||||
@dataclass | @dataclass | ||||
seirl: You're doing a copy here | |||||
class FuseSymlinkEntry(FuseEntry): | class FuseSymlinkEntry(FuseEntry): | ||||
""" FUSE virtual symlink entry | """ FUSE virtual symlink entry | ||||
Attributes: | Attributes: | ||||
target: path to symlink target | target: path to symlink target | ||||
""" | """ | ||||
mode: int = field(init=False, default=int(EntryMode.SYMLINK)) | mode: int = field(init=False, default=int(EntryMode.SYMLINK)) | ||||
Show All 9 Lines |
You're doing a copy here