objc2_web_kit/generated/
DOMDocument.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_class!(
11    /// [Apple's documentation](https://developer.apple.com/documentation/webkit/domdocument?language=objc)
12    #[unsafe(super(DOMNode, DOMObject, WebScriptObject, NSObject))]
13    #[derive(Debug, PartialEq, Eq, Hash)]
14    #[cfg(all(
15        feature = "DOMNode",
16        feature = "DOMObject",
17        feature = "WebScriptObject"
18    ))]
19    #[deprecated]
20    pub struct DOMDocument;
21);
22
23#[cfg(all(
24    feature = "DOMEventTarget",
25    feature = "DOMNode",
26    feature = "DOMObject",
27    feature = "WebScriptObject"
28))]
29extern_conformance!(
30    unsafe impl DOMEventTarget for DOMDocument {}
31);
32
33#[cfg(all(
34    feature = "DOMNode",
35    feature = "DOMObject",
36    feature = "WebScriptObject"
37))]
38extern_conformance!(
39    unsafe impl NSCopying for DOMDocument {}
40);
41
42#[cfg(all(
43    feature = "DOMNode",
44    feature = "DOMObject",
45    feature = "WebScriptObject"
46))]
47unsafe impl CopyingHelper for DOMDocument {
48    type Result = Self;
49}
50
51#[cfg(all(
52    feature = "DOMNode",
53    feature = "DOMObject",
54    feature = "WebScriptObject"
55))]
56extern_conformance!(
57    unsafe impl NSObjectProtocol for DOMDocument {}
58);
59
60#[cfg(all(
61    feature = "DOMNode",
62    feature = "DOMObject",
63    feature = "WebScriptObject"
64))]
65impl DOMDocument {
66    extern_methods!(
67        #[cfg(feature = "DOMDocumentType")]
68        #[deprecated]
69        #[unsafe(method(doctype))]
70        #[unsafe(method_family = none)]
71        pub unsafe fn doctype(&self) -> Option<Retained<DOMDocumentType>>;
72
73        #[cfg(feature = "DOMImplementation")]
74        #[deprecated]
75        #[unsafe(method(implementation))]
76        #[unsafe(method_family = none)]
77        pub unsafe fn implementation(&self) -> Option<Retained<DOMImplementation>>;
78
79        #[cfg(feature = "DOMElement")]
80        #[deprecated]
81        #[unsafe(method(documentElement))]
82        #[unsafe(method_family = none)]
83        pub unsafe fn documentElement(&self) -> Option<Retained<DOMElement>>;
84
85        #[unsafe(method(inputEncoding))]
86        #[unsafe(method_family = none)]
87        pub unsafe fn inputEncoding(&self) -> Retained<NSString>;
88
89        #[unsafe(method(xmlEncoding))]
90        #[unsafe(method_family = none)]
91        pub unsafe fn xmlEncoding(&self) -> Retained<NSString>;
92
93        #[unsafe(method(xmlVersion))]
94        #[unsafe(method_family = none)]
95        pub unsafe fn xmlVersion(&self) -> Retained<NSString>;
96
97        /// Setter for [`xmlVersion`][Self::xmlVersion].
98        ///
99        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
100        #[unsafe(method(setXmlVersion:))]
101        #[unsafe(method_family = none)]
102        pub unsafe fn setXmlVersion(&self, xml_version: Option<&NSString>);
103
104        #[unsafe(method(xmlStandalone))]
105        #[unsafe(method_family = none)]
106        pub unsafe fn xmlStandalone(&self) -> bool;
107
108        /// Setter for [`xmlStandalone`][Self::xmlStandalone].
109        #[unsafe(method(setXmlStandalone:))]
110        #[unsafe(method_family = none)]
111        pub unsafe fn setXmlStandalone(&self, xml_standalone: bool);
112
113        #[unsafe(method(documentURI))]
114        #[unsafe(method_family = none)]
115        pub unsafe fn documentURI(&self) -> Retained<NSString>;
116
117        /// Setter for [`documentURI`][Self::documentURI].
118        ///
119        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
120        #[unsafe(method(setDocumentURI:))]
121        #[unsafe(method_family = none)]
122        pub unsafe fn setDocumentURI(&self, document_uri: Option<&NSString>);
123
124        #[cfg(feature = "DOMAbstractView")]
125        #[deprecated]
126        #[unsafe(method(defaultView))]
127        #[unsafe(method_family = none)]
128        pub unsafe fn defaultView(&self) -> Option<Retained<DOMAbstractView>>;
129
130        #[cfg(feature = "DOMStyleSheetList")]
131        #[deprecated]
132        #[unsafe(method(styleSheets))]
133        #[unsafe(method_family = none)]
134        pub unsafe fn styleSheets(&self) -> Option<Retained<DOMStyleSheetList>>;
135
136        #[deprecated]
137        #[unsafe(method(title))]
138        #[unsafe(method_family = none)]
139        pub unsafe fn title(&self) -> Retained<NSString>;
140
141        /// Setter for [`title`][Self::title].
142        ///
143        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
144        #[deprecated]
145        #[unsafe(method(setTitle:))]
146        #[unsafe(method_family = none)]
147        pub unsafe fn setTitle(&self, title: Option<&NSString>);
148
149        #[deprecated]
150        #[unsafe(method(referrer))]
151        #[unsafe(method_family = none)]
152        pub unsafe fn referrer(&self) -> Retained<NSString>;
153
154        #[deprecated]
155        #[unsafe(method(domain))]
156        #[unsafe(method_family = none)]
157        pub unsafe fn domain(&self) -> Retained<NSString>;
158
159        #[deprecated]
160        #[unsafe(method(URL))]
161        #[unsafe(method_family = none)]
162        pub unsafe fn URL(&self) -> Retained<NSString>;
163
164        #[deprecated]
165        #[unsafe(method(cookie))]
166        #[unsafe(method_family = none)]
167        pub unsafe fn cookie(&self) -> Retained<NSString>;
168
169        /// Setter for [`cookie`][Self::cookie].
170        ///
171        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
172        #[deprecated]
173        #[unsafe(method(setCookie:))]
174        #[unsafe(method_family = none)]
175        pub unsafe fn setCookie(&self, cookie: Option<&NSString>);
176
177        #[cfg(all(feature = "DOMElement", feature = "DOMHTMLElement"))]
178        #[deprecated]
179        #[unsafe(method(body))]
180        #[unsafe(method_family = none)]
181        pub unsafe fn body(&self) -> Option<Retained<DOMHTMLElement>>;
182
183        #[cfg(all(feature = "DOMElement", feature = "DOMHTMLElement"))]
184        /// Setter for [`body`][Self::body].
185        ///
186        /// # Safety
187        ///
188        /// `body` might not allow `None`.
189        #[deprecated]
190        #[unsafe(method(setBody:))]
191        #[unsafe(method_family = none)]
192        pub unsafe fn setBody(&self, body: Option<&DOMHTMLElement>);
193
194        #[cfg(feature = "DOMHTMLCollection")]
195        #[deprecated]
196        #[unsafe(method(images))]
197        #[unsafe(method_family = none)]
198        pub unsafe fn images(&self) -> Option<Retained<DOMHTMLCollection>>;
199
200        #[cfg(feature = "DOMHTMLCollection")]
201        #[deprecated]
202        #[unsafe(method(applets))]
203        #[unsafe(method_family = none)]
204        pub unsafe fn applets(&self) -> Option<Retained<DOMHTMLCollection>>;
205
206        #[cfg(feature = "DOMHTMLCollection")]
207        #[deprecated]
208        #[unsafe(method(links))]
209        #[unsafe(method_family = none)]
210        pub unsafe fn links(&self) -> Option<Retained<DOMHTMLCollection>>;
211
212        #[cfg(feature = "DOMHTMLCollection")]
213        #[deprecated]
214        #[unsafe(method(forms))]
215        #[unsafe(method_family = none)]
216        pub unsafe fn forms(&self) -> Option<Retained<DOMHTMLCollection>>;
217
218        #[cfg(feature = "DOMHTMLCollection")]
219        #[deprecated]
220        #[unsafe(method(anchors))]
221        #[unsafe(method_family = none)]
222        pub unsafe fn anchors(&self) -> Option<Retained<DOMHTMLCollection>>;
223
224        #[unsafe(method(lastModified))]
225        #[unsafe(method_family = none)]
226        pub unsafe fn lastModified(&self) -> Retained<NSString>;
227
228        #[unsafe(method(charset))]
229        #[unsafe(method_family = none)]
230        pub unsafe fn charset(&self) -> Retained<NSString>;
231
232        /// Setter for [`charset`][Self::charset].
233        ///
234        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
235        #[unsafe(method(setCharset:))]
236        #[unsafe(method_family = none)]
237        pub unsafe fn setCharset(&self, charset: Option<&NSString>);
238
239        #[unsafe(method(defaultCharset))]
240        #[unsafe(method_family = none)]
241        pub unsafe fn defaultCharset(&self) -> Retained<NSString>;
242
243        #[unsafe(method(readyState))]
244        #[unsafe(method_family = none)]
245        pub unsafe fn readyState(&self) -> Retained<NSString>;
246
247        #[unsafe(method(characterSet))]
248        #[unsafe(method_family = none)]
249        pub unsafe fn characterSet(&self) -> Retained<NSString>;
250
251        #[unsafe(method(preferredStylesheetSet))]
252        #[unsafe(method_family = none)]
253        pub unsafe fn preferredStylesheetSet(&self) -> Retained<NSString>;
254
255        #[unsafe(method(selectedStylesheetSet))]
256        #[unsafe(method_family = none)]
257        pub unsafe fn selectedStylesheetSet(&self) -> Retained<NSString>;
258
259        /// Setter for [`selectedStylesheetSet`][Self::selectedStylesheetSet].
260        ///
261        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
262        #[unsafe(method(setSelectedStylesheetSet:))]
263        #[unsafe(method_family = none)]
264        pub unsafe fn setSelectedStylesheetSet(&self, selected_stylesheet_set: Option<&NSString>);
265
266        #[cfg(feature = "DOMElement")]
267        #[unsafe(method(activeElement))]
268        #[unsafe(method_family = none)]
269        pub unsafe fn activeElement(&self) -> Option<Retained<DOMElement>>;
270
271        #[cfg(feature = "DOMElement")]
272        /// # Safety
273        ///
274        /// `tag_name` might not allow `None`.
275        #[deprecated]
276        #[unsafe(method(createElement:))]
277        #[unsafe(method_family = none)]
278        pub unsafe fn createElement(
279            &self,
280            tag_name: Option<&NSString>,
281        ) -> Option<Retained<DOMElement>>;
282
283        #[cfg(feature = "DOMDocumentFragment")]
284        #[deprecated]
285        #[unsafe(method(createDocumentFragment))]
286        #[unsafe(method_family = none)]
287        pub unsafe fn createDocumentFragment(&self) -> Option<Retained<DOMDocumentFragment>>;
288
289        #[cfg(all(feature = "DOMCharacterData", feature = "DOMText"))]
290        /// # Safety
291        ///
292        /// `data` might not allow `None`.
293        #[deprecated]
294        #[unsafe(method(createTextNode:))]
295        #[unsafe(method_family = none)]
296        pub unsafe fn createTextNode(&self, data: Option<&NSString>) -> Option<Retained<DOMText>>;
297
298        #[cfg(all(feature = "DOMCharacterData", feature = "DOMComment"))]
299        /// # Safety
300        ///
301        /// `data` might not allow `None`.
302        #[deprecated]
303        #[unsafe(method(createComment:))]
304        #[unsafe(method_family = none)]
305        pub unsafe fn createComment(&self, data: Option<&NSString>)
306            -> Option<Retained<DOMComment>>;
307
308        #[cfg(all(
309            feature = "DOMCDATASection",
310            feature = "DOMCharacterData",
311            feature = "DOMText"
312        ))]
313        /// # Safety
314        ///
315        /// `data` might not allow `None`.
316        #[deprecated]
317        #[unsafe(method(createCDATASection:))]
318        #[unsafe(method_family = none)]
319        pub unsafe fn createCDATASection(
320            &self,
321            data: Option<&NSString>,
322        ) -> Option<Retained<DOMCDATASection>>;
323
324        #[cfg(all(feature = "DOMCharacterData", feature = "DOMProcessingInstruction"))]
325        /// # Safety
326        ///
327        /// - `target` might not allow `None`.
328        /// - `data` might not allow `None`.
329        #[unsafe(method(createProcessingInstruction:data:))]
330        #[unsafe(method_family = none)]
331        pub unsafe fn createProcessingInstruction_data(
332            &self,
333            target: Option<&NSString>,
334            data: Option<&NSString>,
335        ) -> Option<Retained<DOMProcessingInstruction>>;
336
337        #[cfg(feature = "DOMAttr")]
338        /// # Safety
339        ///
340        /// `name` might not allow `None`.
341        #[deprecated]
342        #[unsafe(method(createAttribute:))]
343        #[unsafe(method_family = none)]
344        pub unsafe fn createAttribute(&self, name: Option<&NSString>) -> Option<Retained<DOMAttr>>;
345
346        #[cfg(feature = "DOMEntityReference")]
347        /// # Safety
348        ///
349        /// `name` might not allow `None`.
350        #[deprecated]
351        #[unsafe(method(createEntityReference:))]
352        #[unsafe(method_family = none)]
353        pub unsafe fn createEntityReference(
354            &self,
355            name: Option<&NSString>,
356        ) -> Option<Retained<DOMEntityReference>>;
357
358        #[cfg(feature = "DOMNodeList")]
359        /// # Safety
360        ///
361        /// `tagname` might not allow `None`.
362        #[deprecated]
363        #[unsafe(method(getElementsByTagName:))]
364        #[unsafe(method_family = none)]
365        pub unsafe fn getElementsByTagName(
366            &self,
367            tagname: Option<&NSString>,
368        ) -> Option<Retained<DOMNodeList>>;
369
370        /// # Safety
371        ///
372        /// `imported_node` might not allow `None`.
373        #[unsafe(method(importNode:deep:))]
374        #[unsafe(method_family = none)]
375        pub unsafe fn importNode_deep(
376            &self,
377            imported_node: Option<&DOMNode>,
378            deep: bool,
379        ) -> Option<Retained<DOMNode>>;
380
381        #[cfg(feature = "DOMElement")]
382        /// # Safety
383        ///
384        /// - `namespace_uri` might not allow `None`.
385        /// - `qualified_name` might not allow `None`.
386        #[unsafe(method(createElementNS:qualifiedName:))]
387        #[unsafe(method_family = none)]
388        pub unsafe fn createElementNS_qualifiedName(
389            &self,
390            namespace_uri: Option<&NSString>,
391            qualified_name: Option<&NSString>,
392        ) -> Option<Retained<DOMElement>>;
393
394        #[cfg(feature = "DOMAttr")]
395        /// # Safety
396        ///
397        /// - `namespace_uri` might not allow `None`.
398        /// - `qualified_name` might not allow `None`.
399        #[unsafe(method(createAttributeNS:qualifiedName:))]
400        #[unsafe(method_family = none)]
401        pub unsafe fn createAttributeNS_qualifiedName(
402            &self,
403            namespace_uri: Option<&NSString>,
404            qualified_name: Option<&NSString>,
405        ) -> Option<Retained<DOMAttr>>;
406
407        #[cfg(feature = "DOMNodeList")]
408        /// # Safety
409        ///
410        /// - `namespace_uri` might not allow `None`.
411        /// - `local_name` might not allow `None`.
412        #[unsafe(method(getElementsByTagNameNS:localName:))]
413        #[unsafe(method_family = none)]
414        pub unsafe fn getElementsByTagNameNS_localName(
415            &self,
416            namespace_uri: Option<&NSString>,
417            local_name: Option<&NSString>,
418        ) -> Option<Retained<DOMNodeList>>;
419
420        /// # Safety
421        ///
422        /// `source` might not allow `None`.
423        #[unsafe(method(adoptNode:))]
424        #[unsafe(method_family = none)]
425        pub unsafe fn adoptNode(&self, source: Option<&DOMNode>) -> Option<Retained<DOMNode>>;
426
427        #[cfg(feature = "DOMEvent")]
428        /// # Safety
429        ///
430        /// `event_type` might not allow `None`.
431        #[deprecated]
432        #[unsafe(method(createEvent:))]
433        #[unsafe(method_family = none)]
434        pub unsafe fn createEvent(
435            &self,
436            event_type: Option<&NSString>,
437        ) -> Option<Retained<DOMEvent>>;
438
439        #[cfg(feature = "DOMRange")]
440        #[deprecated]
441        #[unsafe(method(createRange))]
442        #[unsafe(method_family = none)]
443        pub unsafe fn createRange(&self) -> Option<Retained<DOMRange>>;
444
445        #[cfg(all(feature = "DOMNodeFilter", feature = "DOMNodeIterator"))]
446        /// # Safety
447        ///
448        /// - `root` might not allow `None`.
449        /// - `filter` might not allow `None`.
450        #[unsafe(method(createNodeIterator:whatToShow:filter:expandEntityReferences:))]
451        #[unsafe(method_family = none)]
452        pub unsafe fn createNodeIterator_whatToShow_filter_expandEntityReferences(
453            &self,
454            root: Option<&DOMNode>,
455            what_to_show: c_uint,
456            filter: Option<&ProtocolObject<dyn DOMNodeFilter>>,
457            expand_entity_references: bool,
458        ) -> Option<Retained<DOMNodeIterator>>;
459
460        #[cfg(all(feature = "DOMNodeFilter", feature = "DOMTreeWalker"))]
461        /// # Safety
462        ///
463        /// - `root` might not allow `None`.
464        /// - `filter` might not allow `None`.
465        #[unsafe(method(createTreeWalker:whatToShow:filter:expandEntityReferences:))]
466        #[unsafe(method_family = none)]
467        pub unsafe fn createTreeWalker_whatToShow_filter_expandEntityReferences(
468            &self,
469            root: Option<&DOMNode>,
470            what_to_show: c_uint,
471            filter: Option<&ProtocolObject<dyn DOMNodeFilter>>,
472            expand_entity_references: bool,
473        ) -> Option<Retained<DOMTreeWalker>>;
474
475        #[cfg(all(feature = "DOMCSSStyleDeclaration", feature = "DOMElement"))]
476        /// # Safety
477        ///
478        /// - `element` might not allow `None`.
479        /// - `pseudo_element` might not allow `None`.
480        #[unsafe(method(getOverrideStyle:pseudoElement:))]
481        #[unsafe(method_family = none)]
482        pub unsafe fn getOverrideStyle_pseudoElement(
483            &self,
484            element: Option<&DOMElement>,
485            pseudo_element: Option<&NSString>,
486        ) -> Option<Retained<DOMCSSStyleDeclaration>>;
487
488        #[cfg(all(feature = "DOMXPathExpression", feature = "DOMXPathNSResolver"))]
489        /// # Safety
490        ///
491        /// - `expression` might not allow `None`.
492        /// - `resolver` might not allow `None`.
493        #[unsafe(method(createExpression:resolver:))]
494        #[unsafe(method_family = none)]
495        pub unsafe fn createExpression_resolver(
496            &self,
497            expression: Option<&NSString>,
498            resolver: Option<&ProtocolObject<dyn DOMXPathNSResolver>>,
499        ) -> Option<Retained<DOMXPathExpression>>;
500
501        #[cfg(feature = "DOMXPathNSResolver")]
502        /// # Safety
503        ///
504        /// `node_resolver` might not allow `None`.
505        #[unsafe(method(createNSResolver:))]
506        #[unsafe(method_family = none)]
507        pub unsafe fn createNSResolver(
508            &self,
509            node_resolver: Option<&DOMNode>,
510        ) -> Option<Retained<ProtocolObject<dyn DOMXPathNSResolver>>>;
511
512        #[cfg(all(feature = "DOMXPathNSResolver", feature = "DOMXPathResult"))]
513        /// # Safety
514        ///
515        /// - `expression` might not allow `None`.
516        /// - `context_node` might not allow `None`.
517        /// - `resolver` might not allow `None`.
518        /// - `in_result` might not allow `None`.
519        #[unsafe(method(evaluate:contextNode:resolver:type:inResult:))]
520        #[unsafe(method_family = none)]
521        pub unsafe fn evaluate_contextNode_resolver_type_inResult(
522            &self,
523            expression: Option<&NSString>,
524            context_node: Option<&DOMNode>,
525            resolver: Option<&ProtocolObject<dyn DOMXPathNSResolver>>,
526            r#type: c_ushort,
527            in_result: Option<&DOMXPathResult>,
528        ) -> Option<Retained<DOMXPathResult>>;
529
530        /// # Safety
531        ///
532        /// - `command` might not allow `None`.
533        /// - `value` might not allow `None`.
534        #[unsafe(method(execCommand:userInterface:value:))]
535        #[unsafe(method_family = none)]
536        pub unsafe fn execCommand_userInterface_value(
537            &self,
538            command: Option<&NSString>,
539            user_interface: bool,
540            value: Option<&NSString>,
541        ) -> bool;
542
543        /// # Safety
544        ///
545        /// `command` might not allow `None`.
546        #[unsafe(method(execCommand:userInterface:))]
547        #[unsafe(method_family = none)]
548        pub unsafe fn execCommand_userInterface(
549            &self,
550            command: Option<&NSString>,
551            user_interface: bool,
552        ) -> bool;
553
554        /// # Safety
555        ///
556        /// `command` might not allow `None`.
557        #[unsafe(method(execCommand:))]
558        #[unsafe(method_family = none)]
559        pub unsafe fn execCommand(&self, command: Option<&NSString>) -> bool;
560
561        /// # Safety
562        ///
563        /// `command` might not allow `None`.
564        #[unsafe(method(queryCommandEnabled:))]
565        #[unsafe(method_family = none)]
566        pub unsafe fn queryCommandEnabled(&self, command: Option<&NSString>) -> bool;
567
568        /// # Safety
569        ///
570        /// `command` might not allow `None`.
571        #[unsafe(method(queryCommandIndeterm:))]
572        #[unsafe(method_family = none)]
573        pub unsafe fn queryCommandIndeterm(&self, command: Option<&NSString>) -> bool;
574
575        /// # Safety
576        ///
577        /// `command` might not allow `None`.
578        #[unsafe(method(queryCommandState:))]
579        #[unsafe(method_family = none)]
580        pub unsafe fn queryCommandState(&self, command: Option<&NSString>) -> bool;
581
582        /// # Safety
583        ///
584        /// `command` might not allow `None`.
585        #[unsafe(method(queryCommandSupported:))]
586        #[unsafe(method_family = none)]
587        pub unsafe fn queryCommandSupported(&self, command: Option<&NSString>) -> bool;
588
589        /// # Safety
590        ///
591        /// `command` might not allow `None`.
592        #[unsafe(method(queryCommandValue:))]
593        #[unsafe(method_family = none)]
594        pub unsafe fn queryCommandValue(
595            &self,
596            command: Option<&NSString>,
597        ) -> Option<Retained<NSString>>;
598
599        #[cfg(feature = "DOMNodeList")]
600        /// # Safety
601        ///
602        /// `element_name` might not allow `None`.
603        #[deprecated]
604        #[unsafe(method(getElementsByName:))]
605        #[unsafe(method_family = none)]
606        pub unsafe fn getElementsByName(
607            &self,
608            element_name: Option<&NSString>,
609        ) -> Option<Retained<DOMNodeList>>;
610
611        #[cfg(feature = "DOMElement")]
612        #[unsafe(method(elementFromPoint:y:))]
613        #[unsafe(method_family = none)]
614        pub unsafe fn elementFromPoint_y(&self, x: c_int, y: c_int)
615            -> Option<Retained<DOMElement>>;
616
617        #[cfg(feature = "DOMCSSStyleDeclaration")]
618        #[unsafe(method(createCSSStyleDeclaration))]
619        #[unsafe(method_family = none)]
620        pub unsafe fn createCSSStyleDeclaration(&self) -> Option<Retained<DOMCSSStyleDeclaration>>;
621
622        #[cfg(all(feature = "DOMCSSStyleDeclaration", feature = "DOMElement"))]
623        /// # Safety
624        ///
625        /// - `element` might not allow `None`.
626        /// - `pseudo_element` might not allow `None`.
627        #[unsafe(method(getComputedStyle:pseudoElement:))]
628        #[unsafe(method_family = none)]
629        pub unsafe fn getComputedStyle_pseudoElement(
630            &self,
631            element: Option<&DOMElement>,
632            pseudo_element: Option<&NSString>,
633        ) -> Option<Retained<DOMCSSStyleDeclaration>>;
634
635        #[cfg(all(feature = "DOMCSSRuleList", feature = "DOMElement"))]
636        /// # Safety
637        ///
638        /// - `element` might not allow `None`.
639        /// - `pseudo_element` might not allow `None`.
640        #[unsafe(method(getMatchedCSSRules:pseudoElement:))]
641        #[unsafe(method_family = none)]
642        pub unsafe fn getMatchedCSSRules_pseudoElement(
643            &self,
644            element: Option<&DOMElement>,
645            pseudo_element: Option<&NSString>,
646        ) -> Option<Retained<DOMCSSRuleList>>;
647
648        #[cfg(all(feature = "DOMCSSRuleList", feature = "DOMElement"))]
649        /// # Safety
650        ///
651        /// - `element` might not allow `None`.
652        /// - `pseudo_element` might not allow `None`.
653        #[unsafe(method(getMatchedCSSRules:pseudoElement:authorOnly:))]
654        #[unsafe(method_family = none)]
655        pub unsafe fn getMatchedCSSRules_pseudoElement_authorOnly(
656            &self,
657            element: Option<&DOMElement>,
658            pseudo_element: Option<&NSString>,
659            author_only: bool,
660        ) -> Option<Retained<DOMCSSRuleList>>;
661
662        #[cfg(feature = "DOMNodeList")]
663        /// # Safety
664        ///
665        /// `class_names` might not allow `None`.
666        #[unsafe(method(getElementsByClassName:))]
667        #[unsafe(method_family = none)]
668        pub unsafe fn getElementsByClassName(
669            &self,
670            class_names: Option<&NSString>,
671        ) -> Option<Retained<DOMNodeList>>;
672
673        #[unsafe(method(hasFocus))]
674        #[unsafe(method_family = none)]
675        pub unsafe fn hasFocus(&self) -> bool;
676
677        #[unsafe(method(webkitCancelFullScreen))]
678        #[unsafe(method_family = none)]
679        pub unsafe fn webkitCancelFullScreen(&self);
680
681        #[cfg(feature = "DOMElement")]
682        /// # Safety
683        ///
684        /// `element_id` might not allow `None`.
685        #[deprecated]
686        #[unsafe(method(getElementById:))]
687        #[unsafe(method_family = none)]
688        pub unsafe fn getElementById(
689            &self,
690            element_id: Option<&NSString>,
691        ) -> Option<Retained<DOMElement>>;
692
693        #[cfg(feature = "DOMElement")]
694        /// # Safety
695        ///
696        /// `selectors` might not allow `None`.
697        #[unsafe(method(querySelector:))]
698        #[unsafe(method_family = none)]
699        pub unsafe fn querySelector(
700            &self,
701            selectors: Option<&NSString>,
702        ) -> Option<Retained<DOMElement>>;
703
704        #[cfg(feature = "DOMNodeList")]
705        /// # Safety
706        ///
707        /// `selectors` might not allow `None`.
708        #[unsafe(method(querySelectorAll:))]
709        #[unsafe(method_family = none)]
710        pub unsafe fn querySelectorAll(
711            &self,
712            selectors: Option<&NSString>,
713        ) -> Option<Retained<DOMNodeList>>;
714    );
715}
716
717/// Methods declared on superclass `DOMObject`.
718#[cfg(all(
719    feature = "DOMNode",
720    feature = "DOMObject",
721    feature = "WebScriptObject"
722))]
723impl DOMDocument {
724    extern_methods!(
725        #[deprecated]
726        #[unsafe(method(init))]
727        #[unsafe(method_family = init)]
728        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
729    );
730}
731
732/// Methods declared on superclass `NSObject`.
733#[cfg(all(
734    feature = "DOMNode",
735    feature = "DOMObject",
736    feature = "WebScriptObject"
737))]
738impl DOMDocument {
739    extern_methods!(
740        #[unsafe(method(new))]
741        #[unsafe(method_family = new)]
742        pub unsafe fn new() -> Retained<Self>;
743    );
744}
745
746/// DOMDocumentDeprecated.
747#[deprecated]
748#[cfg(all(
749    feature = "DOMNode",
750    feature = "DOMObject",
751    feature = "WebScriptObject"
752))]
753impl DOMDocument {
754    extern_methods!(
755        #[cfg(all(feature = "DOMCharacterData", feature = "DOMProcessingInstruction"))]
756        /// # Safety
757        ///
758        /// - `target` might not allow `None`.
759        /// - `data` might not allow `None`.
760        #[deprecated]
761        #[unsafe(method(createProcessingInstruction::))]
762        #[unsafe(method_family = none)]
763        pub unsafe fn createProcessingInstruction(
764            &self,
765            target: Option<&NSString>,
766            data: Option<&NSString>,
767        ) -> Option<Retained<DOMProcessingInstruction>>;
768
769        /// # Safety
770        ///
771        /// `imported_node` might not allow `None`.
772        #[deprecated]
773        #[unsafe(method(importNode::))]
774        #[unsafe(method_family = none)]
775        pub unsafe fn importNode(
776            &self,
777            imported_node: Option<&DOMNode>,
778            deep: bool,
779        ) -> Option<Retained<DOMNode>>;
780
781        #[cfg(feature = "DOMElement")]
782        /// # Safety
783        ///
784        /// - `namespace_uri` might not allow `None`.
785        /// - `qualified_name` might not allow `None`.
786        #[deprecated]
787        #[unsafe(method(createElementNS::))]
788        #[unsafe(method_family = none)]
789        pub unsafe fn createElementNS(
790            &self,
791            namespace_uri: Option<&NSString>,
792            qualified_name: Option<&NSString>,
793        ) -> Option<Retained<DOMElement>>;
794
795        #[cfg(feature = "DOMAttr")]
796        /// # Safety
797        ///
798        /// - `namespace_uri` might not allow `None`.
799        /// - `qualified_name` might not allow `None`.
800        #[deprecated]
801        #[unsafe(method(createAttributeNS::))]
802        #[unsafe(method_family = none)]
803        pub unsafe fn createAttributeNS(
804            &self,
805            namespace_uri: Option<&NSString>,
806            qualified_name: Option<&NSString>,
807        ) -> Option<Retained<DOMAttr>>;
808
809        #[cfg(feature = "DOMNodeList")]
810        /// # Safety
811        ///
812        /// - `namespace_uri` might not allow `None`.
813        /// - `local_name` might not allow `None`.
814        #[deprecated]
815        #[unsafe(method(getElementsByTagNameNS::))]
816        #[unsafe(method_family = none)]
817        pub unsafe fn getElementsByTagNameNS(
818            &self,
819            namespace_uri: Option<&NSString>,
820            local_name: Option<&NSString>,
821        ) -> Option<Retained<DOMNodeList>>;
822
823        #[cfg(all(feature = "DOMNodeFilter", feature = "DOMNodeIterator"))]
824        /// # Safety
825        ///
826        /// - `root` might not allow `None`.
827        /// - `filter` might not allow `None`.
828        #[deprecated]
829        #[unsafe(method(createNodeIterator::::))]
830        #[unsafe(method_family = none)]
831        pub unsafe fn createNodeIterator(
832            &self,
833            root: Option<&DOMNode>,
834            what_to_show: c_uint,
835            filter: Option<&ProtocolObject<dyn DOMNodeFilter>>,
836            expand_entity_references: bool,
837        ) -> Option<Retained<DOMNodeIterator>>;
838
839        #[cfg(all(feature = "DOMNodeFilter", feature = "DOMTreeWalker"))]
840        /// # Safety
841        ///
842        /// - `root` might not allow `None`.
843        /// - `filter` might not allow `None`.
844        #[deprecated]
845        #[unsafe(method(createTreeWalker::::))]
846        #[unsafe(method_family = none)]
847        pub unsafe fn createTreeWalker(
848            &self,
849            root: Option<&DOMNode>,
850            what_to_show: c_uint,
851            filter: Option<&ProtocolObject<dyn DOMNodeFilter>>,
852            expand_entity_references: bool,
853        ) -> Option<Retained<DOMTreeWalker>>;
854
855        #[cfg(all(feature = "DOMCSSStyleDeclaration", feature = "DOMElement"))]
856        /// # Safety
857        ///
858        /// - `element` might not allow `None`.
859        /// - `pseudo_element` might not allow `None`.
860        #[deprecated]
861        #[unsafe(method(getOverrideStyle::))]
862        #[unsafe(method_family = none)]
863        pub unsafe fn getOverrideStyle(
864            &self,
865            element: Option<&DOMElement>,
866            pseudo_element: Option<&NSString>,
867        ) -> Option<Retained<DOMCSSStyleDeclaration>>;
868
869        #[cfg(all(feature = "DOMXPathExpression", feature = "DOMXPathNSResolver"))]
870        /// # Safety
871        ///
872        /// - `expression` might not allow `None`.
873        /// - `resolver` might not allow `None`.
874        #[deprecated]
875        #[unsafe(method(createExpression::))]
876        #[unsafe(method_family = none)]
877        pub unsafe fn createExpression(
878            &self,
879            expression: Option<&NSString>,
880            resolver: Option<&ProtocolObject<dyn DOMXPathNSResolver>>,
881        ) -> Option<Retained<DOMXPathExpression>>;
882
883        #[cfg(all(feature = "DOMXPathNSResolver", feature = "DOMXPathResult"))]
884        /// # Safety
885        ///
886        /// - `expression` might not allow `None`.
887        /// - `context_node` might not allow `None`.
888        /// - `resolver` might not allow `None`.
889        /// - `in_result` might not allow `None`.
890        #[deprecated]
891        #[unsafe(method(evaluate:::::))]
892        #[unsafe(method_family = none)]
893        pub unsafe fn evaluate(
894            &self,
895            expression: Option<&NSString>,
896            context_node: Option<&DOMNode>,
897            resolver: Option<&ProtocolObject<dyn DOMXPathNSResolver>>,
898            r#type: c_ushort,
899            in_result: Option<&DOMXPathResult>,
900        ) -> Option<Retained<DOMXPathResult>>;
901
902        #[cfg(all(feature = "DOMCSSStyleDeclaration", feature = "DOMElement"))]
903        /// # Safety
904        ///
905        /// - `element` might not allow `None`.
906        /// - `pseudo_element` might not allow `None`.
907        #[deprecated]
908        #[unsafe(method(getComputedStyle::))]
909        #[unsafe(method_family = none)]
910        pub unsafe fn getComputedStyle(
911            &self,
912            element: Option<&DOMElement>,
913            pseudo_element: Option<&NSString>,
914        ) -> Option<Retained<DOMCSSStyleDeclaration>>;
915    );
916}