Simplify idl-analyze.py by having in-tree C++ header generator annotate functions with binding data
Categories
(Webtools :: Searchfox, enhancement)
Tracking
(Not tracked)
People
(Reporter: nicolas.guichard, Assigned: nicolas.guichard)
References
Details
Attachments
(3 external files)
Since bug 1865048, the Mozsearch Clang plugin has support for custom annotations __attribute__((annotate("binding_to/bound_as", "LANGUAGE", "KIND", "SEARCHFOX SYMBOL"))). The code generator which generates C++ headers from IDL files could add those annotations which would remove the need for idl-analyze.py to read the C++ analysis to map identifiers to symbols.
| Assignee | ||
Comment 1•4 months ago
|
||
Since bug 1865048, the Mozsearch Clang plugin can read custom
annotations to get a better understanding of cross-language bindings.
The CustomAttributes action of the main Clang plugin removes all
annotations and used to run before the Mozsearch Clang plugin.
This re-orders the execution of the actions so that the Mozsearch
plugin has a chance to read those annotations before they are stipped
away.
To enforce the order, all action registrations are moved to a new
Registration.cpp file.
| Assignee | ||
Comment 2•4 months ago
|
||
This adds the enum value required to also support bindings between C++
and IDL.
| Assignee | ||
Comment 3•4 months ago
|
||
This updates the XPIDL C++ header generator to add Mozsearch binding
annotations to the generated declarations.
Those get picked up by the Mozsearch Clang plugin to link between the
C++ classes/functions and their matching XPIDL definition.
Comment 4•3 months ago
|
||
Authored by https://github.com/nicolas-guichard
https://github.com/mozsearch/mozsearch/commit/dc141a557b190de34cb4b632fd1343053ed6f157
[master] Bug 2053134 - Add support for IDL bindings in Mozsearch plugin
Authored by https://github.com/nicolas-guichard
https://github.com/mozsearch/mozsearch/commit/7e4776b0812471312f78478a5d9e96022013a6c7
[master] Bug 2053134 - Split Clang plugin action registration into separate file
Comment 6•3 months ago
|
||
| bugherder | ||
Description
•