Browse Source

webidl: parse deleter

mattias 3 years ago
parent
commit
d35640bf10
2 changed files with 6 additions and 3 deletions
  1. 4 1
      packages/webidl/src/webidlparser.pp
  2. 2 2
      packages/webidl/src/webidlscanner.pp

+ 4 - 1
packages/webidl/src/webidlparser.pp

@@ -569,6 +569,7 @@ Const
   Specials = [tkGetter, tkSetter, tkDeleter, tkLegacyCaller, tkConstructor];
   OnlyGetter = [foGetter];
   OnlySetter = [foSetter];
+  OnlyDeleter = [foDeleter];
 
 Var
   Opts : TFunctionOptions;
@@ -606,6 +607,8 @@ begin
       tkBracketOpen:
         if (Opts=OnlyGetter) or (Opts=OnlySetter) then
           // using default name getProperty/setProperty
+        else if (Opts=OnlyDeleter) then
+          // using default name
         else
           CheckCurrentToken(tkIdentifier);
       else
@@ -1338,7 +1341,7 @@ Const
   IdentifierTokens = [tkIdentifier,tkByteString,tkUSVString,tkDOMString];
   SimpleTypeTokens = PrimitiveTokens+IdentifierTokens;
   TypeTokens = PrefixTokens+SimpleTypeTokens;
-  ExtraTypeTokens = TypeTokens +[tkStringToken,tkVoid];
+  ExtraTypeTokens = TypeTokens +[{tkStringToken,}tkVoid];
   LegacyDOMString = 'LegacyNullToEmptyString';
 
 Var

+ 2 - 2
packages/webidl/src/webidlscanner.pp

@@ -114,7 +114,7 @@ type
     tkvoid,
     tkShort,
     tkSequence,
-    tkStringToken,
+    //tkStringToken, Mattias: there is no string token in webidl
     tkMixin,
     tkIncludes,
     tkMapLike,
@@ -381,7 +381,7 @@ const
   'void',
   'short',
   'sequence',
-  'string',
+  //'string',
   'mixin',
   'includes',
   'maplike',