Index: bindings/scripts/blink_idl_parser.py |
diff --git a/bindings/scripts/blink_idl_parser.py b/bindings/scripts/blink_idl_parser.py |
index 592bf91393d840809235f0440d3308fb23b978cd..55c3e5f410b3c0f3a395372eeab52be322e175b3 100644 |
--- a/bindings/scripts/blink_idl_parser.py |
+++ b/bindings/scripts/blink_idl_parser.py |
@@ -254,7 +254,13 @@ class BlinkIDLParser(IDLParser): |
# ExceptionFields, and Attribute removed from this rule. |
p[0] = p[1] |
- # [b47.1] |
+ # [b47.1] FIXME: rename to ExceptionAttribute |
+ def p_Attribute(self, p): |
+ """Attribute : ReadOnly ATTRIBUTE Type identifier ';'""" |
+ p[0] = self.BuildNamed('Attribute', p, 4, |
+ ListFromConcat(p[1], p[3])) |
+ |
+ # [b47.2] |
def p_ExceptionOperation(self, p): |
"""ExceptionOperation : Type identifier '(' ')' ';'""" |
# Needed to handle one case in DOMException.idl: |
@@ -275,6 +281,12 @@ class BlinkIDLParser(IDLParser): |
items = ListFromConcat(p[2], p[3]) |
p[0] = self.BuildProduction('ExtAttributes', p, 1, items) |
+ # Error handling for ExtendedAttributeList. |
+ # We can't upstream this because we override ExtendedAttributeList. |
+ def p_ExtendedAttributeListError(self, p): |
+ """ExtendedAttributeList : '[' ExtendedAttribute ',' error""" |
+ p[0] = self.BuildError(p, "ExtendedAttributeList") |
+ |
# [b50] Allow optional trailing comma |
# Blink-only, marked as WONTFIX in Web IDL spec: |
# https://www.w3.org/Bugs/Public/show_bug.cgi?id=22156 |