Fran├žois Perrad


xpidl - XPIDL parser


xpidl -m mode [-a] [-w] [-v] [-t version number] [-I path] [-o basename | -e filename.ext] filename.idl



Emit annotations to typelib.


Turn on warnings (recommended).


Display version.

-t version number

Create a typelib of a specific version number.

-I path

Add entry to start of include path for ``#include "nsIThing.idl"''.

-o basename

Use basename (e.g. ``/tmp/nsIThing'') for output.

-e filename.ext

Use explicit output filename.

-i path

Specify a path for import (only for IDL version 3.0).


Enable export (only for IDL version 3.0).

-m mode

Specify output mode:

header Generate C++ header (.h)
typelib Generate XPConnect typelib (.xpt)
doc Generate HTML documentation (compat xpidl) (.html)
java Generate Java interface (.java)
html Generate HTML documentation (use idl2html) (.html)


xpidl parses the given input file (IDL) and generates a ASCII file with the .ast extension.

xpidl is a Perl OO application what uses the visitor design pattern. The parser is generated by Parse::Yapp.

CORBA Specifications, including IDL (Interface Definition Language) are available on <>.

XPCOM Type Library File Format, version 1.1, is available on


CORBA::IDL, xpt_dump, xpt_link


The original version (C language) is code.

Port to Perl by Francois Perrad,


Copyright 2004-2007, Francois Perrad.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.