generate initial
boilerplate
generate initial...
Script config file
Script config file
ExtensionWebIDL.conf
ExtensionWebIDL.conf
toolkit/components/extensions/webidl-api/
GenerateWebIDLBindings.py
toolkit/components/extensions/webidl-api/...
generate / update
generate / update
ExtensionMyAPI.webidl
ExtensionMyAPI.webidl
dom/webidl
dom/webidl
Toolkit-level schema
files
Toolkit-level schema...
WebExtension JSONSChema files
WebExtension JSONSChema files
Desktop-level schema
files
Desktop-level schema...
Mobile-level schema
files
Mobile-level schema...
WebExtensions API
namespace name
WebExtensions API...
Script CLI options
Script CLI options
ExtensionAPI.webidl.in
ExtensionAPI.webidl.in
ExtensionAPI.[cpp|h].in
ExtensionAPI.[cpp|h].in
Jinja-based templates
Jinja-based templates
ExtensionMyAPI.h/cpp
ExtensionMyAPI.h/cpp
toolkit/components/extensions/webidl-api
toolkit/components/extensi...
  • mapping JSONSchema to WebIDL types
  • mapping API method to webidl WebExtensionStub extended attribute
  • mapping schema group (toolkit, desktop, mobile) to mozilla-central dir paths
mapping JSONSchema to WebIDL types...
Viewer does not support full SVG 1.1