(self, name: str)
| 284 | return True |
| 285 | |
| 286 | def is_method_final(self, name: str) -> bool: |
| 287 | subs = self.subclasses() |
| 288 | if subs is None: |
| 289 | return self.is_final_class |
| 290 | |
| 291 | if self.has_method(name): |
| 292 | method_decl = self.method_decl(name) |
| 293 | for subc in subs: |
| 294 | if subc.method_decl(name) != method_decl: |
| 295 | return False |
| 296 | return True |
| 297 | else: |
| 298 | return not any(subc.has_method(name) for subc in subs) |
| 299 | |
| 300 | def has_attr(self, name: str) -> bool: |
| 301 | try: |
no test coverage detected