Crate xpcom [−] [src]
This crate contains the functionality required in order to both implement and call XPCOM methods from rust code.
For documentation on how to implement XPCOM methods, see the documentation
for the xpcom_macros crate.
Modules
| interfaces |
This module contains the xpcom interfaces exposed to rust code. |
| services |
This module contains convenient accessors for XPCOM services. |
Structs
| AtomicRefcnt |
The type of the atomic reference count used for xpcom structs. |
| GetterAddrefs |
A helper struct for constructing |
| RefPtr |
A smart pointer holding a RefCounted object. The object itself manages its own memory. RefPtr will invoke the addref and release methods at the appropriate times to facilitate the bookkeeping. |
| Refcnt |
The type of the reference count type for xpcom structs. |
| nsID |
A "unique identifier". This is modeled after OSF DCE UUIDs. |
Traits
| RefCounted |
A trait representing a type which can be reference counted invasively. The object is responsible for freeing its backing memory when its reference count reaches 0. |
| XpCom |
A type which implements XpCom must follow the following rules: |
Functions
| component_manager |
Get a reference to the global |
| component_registrar |
Get a reference to the global |
| create_instance |
Helper for calling |
| get_service |
Helper for calling |
| getter_addrefs |
Helper method for calling XPCOM methods which return a reference counted
value through an outparameter. Takes a lambda, which is called with a valid
outparameter argument ( |
| service_manager |
Get a reference to the global |
Type Definitions
| nsCID |
Class IDs |
| nsIID |
Interface IDs |