(self, path, _trail=None)
| 1030 | raise FileNotFoundError(path) from None |
| 1031 | |
| 1032 | def realpath(self, path, _trail=None): |
| 1033 | if verbose: |
| 1034 | print("Read link from", path) |
| 1035 | try: |
| 1036 | link = self._links[path.casefold()] |
| 1037 | except KeyError: |
| 1038 | return path |
| 1039 | if _trail is None: |
| 1040 | _trail = set() |
| 1041 | elif link.casefold() in _trail: |
| 1042 | raise OSError("circular link") |
| 1043 | _trail.add(link.casefold()) |
| 1044 | return self.realpath(link, _trail) |
| 1045 | |
| 1046 | def warn(self, message): |
| 1047 | self._warnings.append(message) |
no test coverage detected