This adds support for a number of features in the current WebIDL spec (http://dev.w3.org/2006/webapi/WebIDL/):
-Callbacks
-Dictionaries
-static functions in interfaces
-optional parameters and dictionary members

It also introduces a "namespace" production to the grammar, which is just a named scope surrounding a list of other IDL fragments.

Finally, there are a couple of random cleanups.

BUG=116636
TEST=existing tests should still work

Review URL: https://chromiumcodereview.appspot.com/9388002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124959 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/ppapi/generators/idl_option.py b/ppapi/generators/idl_option.py
index 714b686..54ac4cf2 100644
--- a/ppapi/generators/idl_option.py
+++ b/ppapi/generators/idl_option.py
@@ -60,7 +60,7 @@
   InfoOut.Log('Usage:')
   for opt in sorted(OptionMap.keys()):
     DumpOption(OptionMap[opt])
-
+  sys.exit(0)
 
 #
 # Default IDL options
@@ -70,6 +70,7 @@
 # --test : test this module
 #
 Option('h', 'Help', callfunc=DumpHelp)
+Option('help', 'Help', callfunc=DumpHelp)
 Option('verbose', 'Verbose')
 Option('test', 'Test the IDL scripts')