On 24.07.2017 02:18, Boris Zbarsky wrote:

Hi,

Brief summary.  IDL:

1)  Generates xptcall information for xpconnect to allow calling from JS
and into JS (via synthetic vtables).
2)  Generates headers that declare pure virtuals.
3)  Is used for defining XPCOM interfaces.

(you can do just #2 without #1 if the interface is not scriptable).

I see *a lot* idl stuff here. Is that all scriptable ?
And does it really need to be ?

WebIDL:

1)  Generates C++ glue code to allow calling from JS (or into JS in the
case of callbacks or callback interfaces).
2)  Is used for defining things that are part of the web platform.  Is
standardized at https://heycam.github.io/webidl/

What exactly is the diffence of the web platform and xpcom ?
Why are both used ?

I've noticed that webidl's seem to support preprocessor directives
(eg. #ifdef), while the others dont.

That is one of the many differences, yes.  They also have different use
cases, different syntax, different output.

How can I add preprocessor to the XPCOM IDLs ?

Problem is: there are lots of references to things I'd like to disable
in here. For now, I'll have to directly patch it out.


--mtx

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to