Fix referencing template by ID

This commit is contained in:
James Westman 2022-07-16 21:16:45 -05:00
parent 664fa2250b
commit 08da6f79c7
No known key found for this signature in database
GPG key ID: CE2DBA0ADB654EA6
3 changed files with 10 additions and 3 deletions

View file

@ -26,7 +26,7 @@ from .types import ClassName
class Template(Object):
grammar = [
"template",
UseIdent("name").expected("template class name"),
UseIdent("id").expected("template class name"),
Optional([
Match(":"),
to_parse_node(ClassName).expected("parent class"),
@ -40,7 +40,7 @@ class Template(Object):
if len(self.children[ClassName]):
return self.children[ClassName][0].gir_type
@validate("name")
@validate("id")
def unique_in_parent(self):
self.validate_unique_in_parent(f"Only one template may be defined per file, but this file contains {len(self.parent.children[Template])}",)
@ -52,7 +52,7 @@ class Template(Object):
xml.start_tag(
"template",
**{"class": self.tokens["name"]},
**{"class": self.tokens["id"]},
parent=parent
)