mozilla

Compare Revisions

XPIDL Syntax

Change Revisions

Revision 69068:

Revision 69068 by Jcranmer on

Revision 69069:

Revision 69069 by Mook(as) on

Title:
Syntax
Syntax
Slug:
XPIDL/Syntax
XPIDL/Syntax
Tags:
NeedsTechnicalReview, XPCOM, xpidl, "Developing Mozilla"
NeedsTechnicalReview, XPCOM, xpidl, "Developing Mozilla"
Content:

Revision 69068
Revision 69069
n26      The syntax is specified according to ABNF as defined by <a n26      The syntax is specified according to ABNF as defined by <a 
>class=" external" href="http://tools.ietf.org/html/rfc5234" title>class="external" href="http://tools.ietf.org/html/rfc5234" title=
>="http://tools.ietf.org/html/rfc5234">RFC 5234</a>, although a fe>"http://tools.ietf.org/html/rfc5234">RFC 5234</a>, although a few
>w productions use prose for clarity of understanding.> productions use prose for clarity of understanding.
n35      <li>A `%{' that appears at the beginning of a line is the sn35      <li>A `<code>%{</code>' that appears at the beginning of a 
>tart of a <strong>raw code fragment</strong>, which extends until>line is the start of a <strong>raw code fragment</strong>, which 
> the end of a line that begins with `%}'. Text inside raw code fr>extends until the end of a line that begins with `<code>%}</code>
>agments are not otherwise parsed by xpidl directly.>'. Text inside raw code fragments are not otherwise parsed by xpi
 >dl directly. This may be followed by the language, as in `<code>%
 >{C++</code>', to output the raw fragment only in the specified la
 >nguage.
n37      <li>A `#include "file"' line instructs the xpidl processor n37      <li>A `<code>#include "file"</code>' line instructs the xpi
>to include that file in the same sense that the&nbsp;C preprocess>dl processor to include that file in the same sense that the C pr
>or includes a file. Note that includes within comments or raw cod>eprocessor includes a file. Note that includes within comments or
>e fragments are not processed by xpidl. Unlike the C preprocessor> raw code fragments are not processed by xpidl. Unlike the C prep
>, when a file is included multiple times, it acts as if the subse>rocessor, when a file is included multiple times, it acts as if t
>quent includes did not happen; this prevents the need for include>he subsequent includes did not happen; this prevents the need for
> guards.> include guards.
n88      scoped_name = *(ident "::") ident / "::" ident<br></code></n88      scoped_name = *(ident "::") ident / "::" ident<br></code></
>code><code><code>; In regex: [A-Za-z_][A-Za-z0-9_]*; identifiers >code> <code><code>; In regex: [A-Za-z_][A-Za-z0-9_]*; identifiers
>beginning with _ cause warnings<br></code></code><code><code>iden> beginning with _ cause warnings<br></code></code> <code><code>id
>t = (%x41-5a / %x61-7a / "_") *(%x41-5a / %x61-7a / %x30-39 / "_">ent = (%x41-5a / %x61-7a / "_") *(%x41-5a / %x61-7a / %x30-39 / "
>)<br>>_")<br>
t151      IDENTIFIER = /unsigned long long|unsigned short|unsigned lot151      IDENTIFIER = /unsigned long long|unsigned short|unsigned lo
>ng|long long|[A-Za-z][A-Za-z_0-9]*/</code></code><br>>ng|long long|[A-Za-z][A-Za-z_0-9]*/</code></code>

Back to History