Generate group (e.g. C "enum" type).
(self, groupinfo, groupName, alias)
| 566 | raise RuntimeError(f"Unrecognized enums type: {str(group_type)}") |
| 567 | |
| 568 | def genGroup(self, groupinfo, groupName, alias): |
| 569 | """Generate group (e.g. C "enum" type).""" |
| 570 | OutputGenerator.genGroup(self, groupinfo, groupName, alias) |
| 571 | |
| 572 | deprecatedby = None |
| 573 | deprecatedlink = None |
| 574 | supersededby = None |
| 575 | body = self.genRequirements(groupName) |
| 576 | if alias: |
| 577 | # If the group name is aliased, just emit a typedef declaration |
| 578 | # for the alias. |
| 579 | body += f'// Equivalent to {alias}\n' |
| 580 | body += f"typedef {alias} {groupName};\n" |
| 581 | else: |
| 582 | expand = self.genOpts.expandEnumerants |
| 583 | (_, enumbody) = self.buildEnumCDecl(expand, groupinfo, groupName) |
| 584 | body += enumbody |
| 585 | if self.genOpts.conventions.generate_enum_table: |
| 586 | self.genEnumTable(groupinfo, groupName) |
| 587 | deprecatedby = self.deprecatedBy(groupinfo) |
| 588 | deprecatedlink = groupinfo.deprecatedlink |
| 589 | supersededby = groupinfo.supersededby |
| 590 | |
| 591 | self.writeInclude('enums', groupName, body, deprecatedby, deprecatedlink, supersededby) |
| 592 | |
| 593 | def genEnum(self, enuminfo, name, alias): |
| 594 | """Generate the C declaration for a constant (a single <enum> value).""" |
nothing calls this directly
no test coverage detected