use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[unsafe(super(DOMObject, WebScriptObject, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
#[deprecated]
pub struct DOMImplementation;
);
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
extern_conformance!(
unsafe impl NSCopying for DOMImplementation {}
);
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
unsafe impl CopyingHelper for DOMImplementation {
type Result = Self;
}
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
extern_conformance!(
unsafe impl NSObjectProtocol for DOMImplementation {}
);
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
impl DOMImplementation {
extern_methods!(
#[unsafe(method(hasFeature:version:))]
#[unsafe(method_family = none)]
pub unsafe fn hasFeature_version(
&self,
feature: Option<&NSString>,
version: Option<&NSString>,
) -> bool;
#[cfg(all(feature = "DOMDocumentType", feature = "DOMNode"))]
#[unsafe(method(createDocumentType:publicId:systemId:))]
#[unsafe(method_family = none)]
pub unsafe fn createDocumentType_publicId_systemId(
&self,
qualified_name: Option<&NSString>,
public_id: Option<&NSString>,
system_id: Option<&NSString>,
) -> Option<Retained<DOMDocumentType>>;
#[cfg(all(
feature = "DOMDocument",
feature = "DOMDocumentType",
feature = "DOMNode"
))]
#[unsafe(method(createDocument:qualifiedName:doctype:))]
#[unsafe(method_family = none)]
pub unsafe fn createDocument_qualifiedName_doctype(
&self,
namespace_uri: Option<&NSString>,
qualified_name: Option<&NSString>,
doctype: Option<&DOMDocumentType>,
) -> Option<Retained<DOMDocument>>;
#[cfg(all(feature = "DOMCSSStyleSheet", feature = "DOMStyleSheet"))]
#[unsafe(method(createCSSStyleSheet:media:))]
#[unsafe(method_family = none)]
pub unsafe fn createCSSStyleSheet_media(
&self,
title: Option<&NSString>,
media: Option<&NSString>,
) -> Option<Retained<DOMCSSStyleSheet>>;
#[cfg(all(
feature = "DOMDocument",
feature = "DOMHTMLDocument",
feature = "DOMNode"
))]
#[unsafe(method(createHTMLDocument:))]
#[unsafe(method_family = none)]
pub unsafe fn createHTMLDocument(
&self,
title: Option<&NSString>,
) -> Option<Retained<DOMHTMLDocument>>;
);
}
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
impl DOMImplementation {
extern_methods!(
#[deprecated]
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
);
}
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
impl DOMImplementation {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
#[deprecated]
#[cfg(all(feature = "DOMObject", feature = "WebScriptObject"))]
impl DOMImplementation {
extern_methods!(
#[deprecated]
#[unsafe(method(hasFeature::))]
#[unsafe(method_family = none)]
pub unsafe fn hasFeature(
&self,
feature: Option<&NSString>,
version: Option<&NSString>,
) -> bool;
#[cfg(all(feature = "DOMDocumentType", feature = "DOMNode"))]
#[deprecated]
#[unsafe(method(createDocumentType:::))]
#[unsafe(method_family = none)]
pub unsafe fn createDocumentType(
&self,
qualified_name: Option<&NSString>,
public_id: Option<&NSString>,
system_id: Option<&NSString>,
) -> Option<Retained<DOMDocumentType>>;
#[cfg(all(
feature = "DOMDocument",
feature = "DOMDocumentType",
feature = "DOMNode"
))]
#[deprecated]
#[unsafe(method(createDocument:::))]
#[unsafe(method_family = none)]
pub unsafe fn createDocument(
&self,
namespace_uri: Option<&NSString>,
qualified_name: Option<&NSString>,
doctype: Option<&DOMDocumentType>,
) -> Option<Retained<DOMDocument>>;
#[cfg(all(feature = "DOMCSSStyleSheet", feature = "DOMStyleSheet"))]
#[deprecated]
#[unsafe(method(createCSSStyleSheet::))]
#[unsafe(method_family = none)]
pub unsafe fn createCSSStyleSheet(
&self,
title: Option<&NSString>,
media: Option<&NSString>,
) -> Option<Retained<DOMCSSStyleSheet>>;
);
}