/* This Source Code Form is subject to the terms of the Mozilla Public *License,v.2.0.IfacopyoftheMPLwasnotdistributedwiththis
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
//! This module contains definitions of interfaces which are used in idl files //! as forward declarations, but are not actually defined in an idl file. //! //! NOTE: The IIDs in these files must be kept in sync with the IDL definitions //! in the corresponding C++ files.
usecrate::nsID;
// XXX: This macro should have an option for a custom base interface instead of // nsISupports, such that Document can have nsINode as a base, etc. For now, // query_interface should be sufficient.
macro_rules! nonidl {
($name:ident, $iid:expr) => { /// This interface is referenced from idl files, but not defined in /// them. It exports no methods to rust code. // As of rustc 1.80, structs that are never constructed are considered dead code, // but this is constructed from C++. Somehow these aren't caught before 1.81. #[allow(dead_code)] #[repr(C)] pubstruct $name {
_vtable: *const $crate::interfaces::nsISupportsVTable,
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.