| 319 | self.block.signatures.append(m) |
| 320 | |
| 321 | def directive_class( |
| 322 | self, |
| 323 | name: str, |
| 324 | typedef: str, |
| 325 | type_object: str |
| 326 | ) -> None: |
| 327 | fields = name.split('.') |
| 328 | name = fields.pop() |
| 329 | module, cls = self.clinic._module_and_class(fields) |
| 330 | |
| 331 | parent = cls or module |
| 332 | if name in parent.classes: |
| 333 | fail(f"Already defined class {name!r}!") |
| 334 | |
| 335 | c = Class(name, module, cls, typedef, type_object) |
| 336 | parent.classes[name] = c |
| 337 | self.block.signatures.append(c) |
| 338 | |
| 339 | def directive_set(self, name: str, value: str) -> None: |
| 340 | if name not in ("line_prefix", "line_suffix"): |