| 1128 | return str(path) |
| 1129 | |
| 1130 | def repr_traceback(self, excinfo: ExceptionInfo[BaseException]) -> ReprTraceback: |
| 1131 | traceback = filter_excinfo_traceback(self.tbfilter, excinfo) |
| 1132 | |
| 1133 | if isinstance(excinfo.value, RecursionError): |
| 1134 | traceback, extraline = self._truncate_recursive_traceback(traceback) |
| 1135 | else: |
| 1136 | extraline = None |
| 1137 | |
| 1138 | if not traceback: |
| 1139 | if extraline is None: |
| 1140 | extraline = "All traceback entries are hidden. Pass `--full-trace` to see hidden and internal frames." |
| 1141 | entries = [self.repr_traceback_entry(None, excinfo)] |
| 1142 | return ReprTraceback(entries, extraline, style=self.style) |
| 1143 | |
| 1144 | last = traceback[-1] |
| 1145 | if self.style == "value": |
| 1146 | entries = [self.repr_traceback_entry(last, excinfo)] |
| 1147 | return ReprTraceback(entries, None, style=self.style) |
| 1148 | |
| 1149 | entries = [ |
| 1150 | self.repr_traceback_entry(entry, excinfo if last == entry else None) |
| 1151 | for entry in traceback |
| 1152 | ] |
| 1153 | return ReprTraceback(entries, extraline, style=self.style) |
| 1154 | |
| 1155 | def _truncate_recursive_traceback( |
| 1156 | self, traceback: Traceback |