[Webkit-unassigned] [Bug 38369] Remove custom bindings code for generating arrays

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Apr 30 10:14:19 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=38369





--- Comment #4 from Yaar Schnitman <yaar at chromium.org>  2010-04-30 10:14:19 PST ---
Here is one use example:
http://bondi.omtp.org/1.01/apis/webidl.html

Web IDL (who's editor is Sam Weining I think) has the sequence<T> definition
commented out, but I don't know why: http://www.w3.org/TR/WebIDL/#idl-sequence

Either go with sequence<T> or TArray. For sequence<T>, you'll need to tweak
IDLParser.pm a bit (see below). For TArray, you might break bindings that
already use types with Array suffixes. Once Web IDL reach decision, it would
not be hard to substitute one with the other.

+++ b/WebCore/bindings/scripts/IDLStructure.pm

 # Magic IDL parsing regular expressions
-my $supportedTypes = "((?:unsigned )?(?:int|short|(?:long
)?long)|(?:$idlIdNs*))";
+my $supportedTypes = "((?:unsigned )?(?:int|short|(?:long
)?long)|(?:sequence<$idlIdNs*>|$idlIdNs*))";

 # Special IDL notations

-$interfaceSelector = 'interface\s*((?:' . $extendedAttributeSyntax . ' )?)(' .
$idlIdNs . '*)\s*(?::(\s*[^{]*))?{([a-zA-Z0-9_=\s(),;:\[\]]*)';
-$interfaceMethodSelector = '\s*((?:' . $extendedAttributeSyntax . ' )?)' .
$supportedTypes . '\s*(' . $idlIdNs . '*)\s*\(\s*([a-zA-Z0-9:\s,=\[\]]*)';
+$interfaceSelector = 'interface\s*((?:' . $extendedAttributeSyntax . ' )?)(' .
$idlIdNs . '*)\s*(?::(\s*[^{]*))?{([a-zA-Z0-9_=\s(),;:\[\]<>]*)';
+$interfaceMethodSelector = '\s*((?:' . $extendedAttributeSyntax . ' )?)' .
$supportedTypes . '\s*(' . $idlIdNs . '*)\s*\(\s*([a-zA-Z0-9:\s,=\[\]<>]*)
 $interfaceParameterSelector = 'in\s*((?:' . $extendedAttributeSyntax . ' )?)'
. $supportedTypes . '\s*(' . $idlIdNs . '*)';

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list