qt_qml/
lib.rs

1#![cfg_attr(feature = "ritual_rustdoc_nightly", feature(doc_cfg))]
2//! This crate was generated by `ritual`.
3//!                     See [README](https://github.com/rust-qt/ritual) for more information.
4
5mod __ffi {
6    //! Functions provided by the C++ wrapper library
7
8    include!(concat!(env!("OUT_DIR"), "/ffi.rs"));
9}
10pub mod ops;
11pub use ::cpp_core;
12pub use ::qt_core;
13pub use ::qt_gui;
14pub mod q_v4;
15pub mod q_j_s_value {
16    //! C++ type: <span style='color: green;'>```QJSValue```</span>
17
18    /// <p>This enum is used to specify a single-valued type.</p>
19    ///
20    /// C++ enum: <span style='color: green;'>```QJSValue::SpecialValue```</span>.
21    ///
22    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#SpecialValue-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This enum is used to specify a single-valued type.</p></div>
23    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
24    #[repr(transparent)]
25    pub struct SpecialValue(::std::os::raw::c_int);
26
27    impl From<::std::os::raw::c_int> for SpecialValue {
28        fn from(value: ::std::os::raw::c_int) -> Self {
29            SpecialValue(value)
30        }
31    }
32
33    impl From<SpecialValue> for ::std::os::raw::c_int {
34        fn from(value: SpecialValue) -> Self {
35            value.0
36        }
37    }
38
39    impl SpecialValue {
40        pub fn to_int(&self) -> ::std::os::raw::c_int {
41            self.0
42        }
43    }
44
45    impl SpecialValue {
46        /// A null value. (C++ enum variant: <span style='color: green;'>```NullValue = 0```</span>)
47        #[allow(non_upper_case_globals)]
48        pub const NullValue: crate::q_j_s_value::SpecialValue = crate::q_j_s_value::SpecialValue(0);
49        /// An undefined value. (C++ enum variant: <span style='color: green;'>```UndefinedValue = 1```</span>)
50        #[allow(non_upper_case_globals)]
51        pub const UndefinedValue: crate::q_j_s_value::SpecialValue =
52            crate::q_j_s_value::SpecialValue(1);
53    }
54
55    /// <p>Use this enum for JavaScript language-specific types of Error objects.</p>
56    ///
57    /// C++ enum: <span style='color: green;'>```QJSValue::ErrorType```</span>.
58    ///
59    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#ErrorType-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Use this enum for JavaScript language-specific types of Error objects.</p>
60    /// <p>They may be useful when emulating language features in C++ requires the use of specialized exception types. In addition, they may help to more clearly communicate certain typical conditions, instead of throwing a generic JavaScript exception. For example, code that deals with networking and resource locators may find it useful to propagate errors related to malformed locators using the URIError type.</p>
61    ///
62    /// <p>This enum was introduced or modified in  Qt 5.12.</p></div>
63    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
64    #[repr(transparent)]
65    pub struct ErrorType(::std::os::raw::c_int);
66
67    impl From<::std::os::raw::c_int> for ErrorType {
68        fn from(value: ::std::os::raw::c_int) -> Self {
69            ErrorType(value)
70        }
71    }
72
73    impl From<ErrorType> for ::std::os::raw::c_int {
74        fn from(value: ErrorType) -> Self {
75            value.0
76        }
77    }
78
79    impl ErrorType {
80        pub fn to_int(&self) -> ::std::os::raw::c_int {
81            self.0
82        }
83    }
84
85    impl ErrorType {
86        /// C++ enum variant: <span style='color: green;'>```NoError = 0```</span>
87        #[allow(non_upper_case_globals)]
88        pub const NoError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(0);
89        /// A generic Error object, but not of a specific sub-type. (C++ enum variant: <span style='color: green;'>```GenericError = 1```</span>)
90        #[allow(non_upper_case_globals)]
91        pub const GenericError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(1);
92        /// C++ enum variant: <span style='color: green;'>```EvalError = 2```</span>
93        #[allow(non_upper_case_globals)]
94        pub const EvalError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(2);
95        /// A value did not match the expected set or range. (C++ enum variant: <span style='color: green;'>```RangeError = 3```</span>)
96        #[allow(non_upper_case_globals)]
97        pub const RangeError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(3);
98        /// A non-existing variable referenced. (C++ enum variant: <span style='color: green;'>```ReferenceError = 4```</span>)
99        #[allow(non_upper_case_globals)]
100        pub const ReferenceError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(4);
101        /// An invalid token or sequence of tokens was encountered that does not conform with the syntax of the language. (C++ enum variant: <span style='color: green;'>```SyntaxError = 5```</span>)
102        #[allow(non_upper_case_globals)]
103        pub const SyntaxError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(5);
104        /// An operand or argument is incompatible with the type expected. (C++ enum variant: <span style='color: green;'>```TypeError = 6```</span>)
105        #[allow(non_upper_case_globals)]
106        pub const TypeError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(6);
107        /// A URI handling function was used incorrectly or the URI provided is malformed. (C++ enum variant: <span style='color: green;'>```URIError = 7```</span>)
108        #[allow(non_upper_case_globals)]
109        pub const URIError: crate::q_j_s_value::ErrorType = crate::q_j_s_value::ErrorType(7);
110    }
111}
112/// <p><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> supports the types defined in the <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> standard: The primitive types, which are Undefined, Null, Boolean, Number, and String; and the Object and Array types. Additionally, built-in support is provided for Qt/C++ types such as <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> and <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
113///
114/// C++ class: <span style='color: green;'>```QJSValue```</span>.
115///
116/// <a href="http://doc.qt.io/qt-5/qjsvalue.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> supports the types defined in the <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> standard: The primitive types, which are Undefined, Null, Boolean, Number, and String; and the Object and Array types. Additionally, built-in support is provided for Qt/C++ types such as <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> and <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
117/// <p>For the object-based types (including Date and RegExp), use the newT() functions in <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> (e.g. <a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">QJSEngine::newObject</a>()) to create a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> of the desired type. For the primitive types, use one of the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> constructor overloads. For other types, e.g. registered gadget types such as <a href="http://doc.qt.io/qt-5/qpoint.html">QPoint</a>, you can use <a href="http://doc.qt.io/qt-5/qjsengine.html#toScriptValue">QJSEngine::toScriptValue</a>.</p>
118/// <p>The methods named isT() (e.g. <a href="http://doc.qt.io/qt-5/qjsvalue.html#isBool">isBool</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#isUndefined">isUndefined</a>()) can be used to test if a value is of a certain type. The methods named toT() (e.g. <a href="http://doc.qt.io/qt-5/qjsvalue.html#toBool">toBool</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) can be used to convert a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> to another type. You can also use the generic qjsvalue_cast() function.</p>
119/// <p>Object values have zero or more properties which are themselves QJSValues. Use <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">setProperty</a>() to set a property of an object, and call <a href="http://doc.qt.io/qt-5/qjsvalue.html#property">property</a>() to retrieve the value of a property.</p>
120/// <pre class="cpp">
121///
122///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a></span> myEngine;
123///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue">QJSValue</a></span> myObject <span class="operator">=</span> myEngine<span class="operator">.</span>newObject();
124///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue">QJSValue</a></span> myOtherObject <span class="operator">=</span> myEngine<span class="operator">.</span>newObject();
125///   myObject<span class="operator">.</span>setProperty(<span class="string">"myChild"</span><span class="operator">,</span> myOtherObject);
126///   myObject<span class="operator">.</span>setProperty(<span class="string">"name"</span><span class="operator">,</span> <span class="string">"John Doe"</span>);
127///
128/// </pre>
129/// <p>If you want to iterate over the properties of a script object, use the <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> class.</p>
130/// <p>Object values have an internal <code>prototype</code> property, which can be accessed with <a href="http://doc.qt.io/qt-5/qjsvalue.html#prototype">prototype</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#setPrototype">setPrototype</a>().</p>
131/// <p>Function objects (objects for which <a href="http://doc.qt.io/qt-5/qjsvalue.html#isCallable">isCallable</a>()) returns true) can be invoked by calling <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>(). Constructor functions can be used to construct new objects by calling <a href="http://doc.qt.io/qt-5/qjsvalue.html#callAsConstructor">callAsConstructor</a>().</p>
132/// <p>Use <a href="http://doc.qt.io/qt-5/qjsvalue.html#equals">equals</a>() or <a href="http://doc.qt.io/qt-5/qjsvalue.html#strictlyEquals">strictlyEquals</a>() to compare a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> to another.</p>
133/// <p>Note that a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> for which <a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">isObject</a>() is true only carries a reference to an actual object; copying the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> will only copy the object reference, not the object itself. If you want to clone an object (i.e. copy an object's properties to another object), you can do so with the help of a <code>for-in</code> statement in script code, or <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> in C++.</p>
134/// <a name="working-with-arrays"></a></div>
135#[repr(C)]
136pub struct QJSValue {
137    _unused: u8,
138}
139impl QJSValue {
140    /// <p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, passing <i>args</i> as arguments to the function, and using the globalObject() as the "this"-object. Returns the value returned from the function.</p>
141    ///
142    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::call(const QList<QJSValue>& args = …)```</span>.
143    ///
144    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, passing <i>args</i> as arguments to the function, and using the globalObject() as the "this"-object. Returns the value returned from the function.</p>
145    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not callable, call() does nothing and returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
146    /// <p>Calling call() can cause an exception to occur in the script engine; in that case, call() returns the value that was thrown (typically an <code>Error</code> object). You can call <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() on the return value to determine whether an exception occurred.</p>
147    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isCallable">isCallable</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#callWithInstance">callWithInstance</a>(), and <a href="http://doc.qt.io/qt-5/qjsvalue.html#callAsConstructor">callAsConstructor</a>().</p></div>
148    #[inline(always)]
149    pub unsafe fn call_1a(
150        &self,
151        args: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
152    ) -> ::cpp_core::CppBox<crate::QJSValue> {
153        let ffi_result = {
154            crate::__ffi::ctr_qt_qml_ffi_QJSValue_call(
155                self as *const crate::QJSValue as *mut crate::QJSValue,
156                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(args)
157                    .as_raw_ptr(),
158            )
159        };
160        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
161    }
162
163    /// <p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, passing <i>args</i> as arguments to the function, and using the globalObject() as the "this"-object. Returns the value returned from the function.</p>
164    ///
165    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::call()```</span>.
166    ///
167    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, passing <i>args</i> as arguments to the function, and using the globalObject() as the "this"-object. Returns the value returned from the function.</p>
168    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not callable, call() does nothing and returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
169    /// <p>Calling call() can cause an exception to occur in the script engine; in that case, call() returns the value that was thrown (typically an <code>Error</code> object). You can call <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() on the return value to determine whether an exception occurred.</p>
170    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isCallable">isCallable</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#callWithInstance">callWithInstance</a>(), and <a href="http://doc.qt.io/qt-5/qjsvalue.html#callAsConstructor">callAsConstructor</a>().</p></div>
171    #[inline(always)]
172    pub unsafe fn call_0a(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
173        let ffi_result = {
174            crate::__ffi::ctr_qt_qml_ffi_QJSValue_call1(
175                self as *const crate::QJSValue as *mut crate::QJSValue,
176            )
177        };
178        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
179    }
180
181    /// <p>Creates a new <code>Object</code> and calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a constructor, using the created object as the `this' object and passing <i>args</i> as arguments. If the return value from the constructor call is an object, then that object is returned; otherwise the default constructed object is returned.</p>
182    ///
183    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::callAsConstructor(const QList<QJSValue>& args = …)```</span>.
184    ///
185    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#callAsConstructor">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a new <code>Object</code> and calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a constructor, using the created object as the `this' object and passing <i>args</i> as arguments. If the return value from the constructor call is an object, then that object is returned; otherwise the default constructed object is returned.</p>
186    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not a function, callAsConstructor() does nothing and returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
187    /// <p>Calling this function can cause an exception to occur in the script engine; in that case, the value that was thrown (typically an <code>Error</code> object) is returned. You can call <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() on the return value to determine whether an exception occurred.</p>
188    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">QJSEngine::newObject</a>().</p></div>
189    #[inline(always)]
190    pub unsafe fn call_as_constructor_1a(
191        &self,
192        args: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
193    ) -> ::cpp_core::CppBox<crate::QJSValue> {
194        let ffi_result = {
195            crate::__ffi::ctr_qt_qml_ffi_QJSValue_callAsConstructor(
196                self as *const crate::QJSValue as *mut crate::QJSValue,
197                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(args)
198                    .as_raw_ptr(),
199            )
200        };
201        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
202    }
203
204    /// <p>Creates a new <code>Object</code> and calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a constructor, using the created object as the `this' object and passing <i>args</i> as arguments. If the return value from the constructor call is an object, then that object is returned; otherwise the default constructed object is returned.</p>
205    ///
206    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::callAsConstructor()```</span>.
207    ///
208    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#callAsConstructor">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a new <code>Object</code> and calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a constructor, using the created object as the `this' object and passing <i>args</i> as arguments. If the return value from the constructor call is an object, then that object is returned; otherwise the default constructed object is returned.</p>
209    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not a function, callAsConstructor() does nothing and returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
210    /// <p>Calling this function can cause an exception to occur in the script engine; in that case, the value that was thrown (typically an <code>Error</code> object) is returned. You can call <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() on the return value to determine whether an exception occurred.</p>
211    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">QJSEngine::newObject</a>().</p></div>
212    #[inline(always)]
213    pub unsafe fn call_as_constructor_0a(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
214        let ffi_result = {
215            crate::__ffi::ctr_qt_qml_ffi_QJSValue_callAsConstructor1(
216                self as *const crate::QJSValue as *mut crate::QJSValue,
217            )
218        };
219        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
220    }
221
222    /// <p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, using <i>instance</i> as the `this' object in the function call, and passing <i>args</i> as arguments to the function. Returns the value returned from the function.</p>
223    ///
224    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::callWithInstance(const QJSValue& instance, const QList<QJSValue>& args = …)```</span>.
225    ///
226    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#callWithInstance">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, using <i>instance</i> as the `this' object in the function call, and passing <i>args</i> as arguments to the function. Returns the value returned from the function.</p>
227    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not a function, <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() does nothing and returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
228    /// <p>Note that if <i>instance</i> is not an object, the global object (see <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">QJSEngine::globalObject</a>()) will be used as the `this' object.</p>
229    /// <p>Calling <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() can cause an exception to occur in the script engine; in that case, <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() returns the value that was thrown (typically an <code>Error</code> object). You can call <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() on the return value to determine whether an exception occurred.</p>
230    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>().</p></div>
231    #[inline(always)]
232    pub unsafe fn call_with_instance_2a(
233        &self,
234        instance: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
235        args: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
236    ) -> ::cpp_core::CppBox<crate::QJSValue> {
237        let ffi_result = {
238            crate::__ffi::ctr_qt_qml_ffi_QJSValue_callWithInstance(
239                self as *const crate::QJSValue as *mut crate::QJSValue,
240                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(instance)
241                    .as_raw_ptr(),
242                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(args)
243                    .as_raw_ptr(),
244            )
245        };
246        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
247    }
248
249    /// <p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, using <i>instance</i> as the `this' object in the function call, and passing <i>args</i> as arguments to the function. Returns the value returned from the function.</p>
250    ///
251    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::callWithInstance(const QJSValue& instance)```</span>.
252    ///
253    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#callWithInstance">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Calls this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as a function, using <i>instance</i> as the `this' object in the function call, and passing <i>args</i> as arguments to the function. Returns the value returned from the function.</p>
254    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not a function, <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() does nothing and returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
255    /// <p>Note that if <i>instance</i> is not an object, the global object (see <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">QJSEngine::globalObject</a>()) will be used as the `this' object.</p>
256    /// <p>Calling <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() can cause an exception to occur in the script engine; in that case, <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>() returns the value that was thrown (typically an <code>Error</code> object). You can call <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() on the return value to determine whether an exception occurred.</p>
257    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>().</p></div>
258    #[inline(always)]
259    pub unsafe fn call_with_instance_1a(
260        &self,
261        instance: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
262    ) -> ::cpp_core::CppBox<crate::QJSValue> {
263        let ffi_result = {
264            crate::__ffi::ctr_qt_qml_ffi_QJSValue_callWithInstance1(
265                self as *const crate::QJSValue as *mut crate::QJSValue,
266                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(instance)
267                    .as_raw_ptr(),
268            )
269        };
270        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
271    }
272
273    /// <p>Assigns the <i>other</i> value to this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
274    ///
275    /// Calls C++ function: <span style='color: green;'>```QJSValue& QJSValue::operator=(const QJSValue& other)```</span>.
276    ///
277    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#operator-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns the <i>other</i> value to this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
278    /// <p>Note that if <i>other</i> is an object (<a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">isObject</a>() returns true), only a reference to the underlying object will be assigned; the object itself will not be copied.</p></div>
279    #[inline(always)]
280    pub unsafe fn copy_from(
281        &self,
282        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
283    ) -> ::cpp_core::Ref<crate::QJSValue> {
284        let ffi_result = {
285            crate::__ffi::ctr_qt_qml_ffi_QJSValue_operator_1(
286                self as *const crate::QJSValue as *mut crate::QJSValue,
287                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(other)
288                    .as_raw_ptr(),
289            )
290        };
291        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
292    }
293
294    /// <p>Attempts to delete this object's property of the given <i>name</i>. Returns true if the property was deleted, otherwise returns false.</p>
295    ///
296    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::deleteProperty(const QString& name)```</span>.
297    ///
298    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#deleteProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to delete this object's property of the given <i>name</i>. Returns true if the property was deleted, otherwise returns false.</p>
299    /// <p>The behavior of this function is consistent with the JavaScript delete operator. In particular:</p>
300    /// <ul>
301    /// <li>Non-configurable properties cannot be deleted.</li>
302    /// <li>This function will return true even if this object doesn't have a property of the given <i>name</i> (i.e., non-existent properties are "trivially deletable").</li>
303    /// <li>If this object doesn't have an own property of the given <i>name</i>, but an object in the <a href="http://doc.qt.io/qt-5/qjsvalue.html#prototype">prototype</a>() chain does, the prototype object's property is not deleted, and this function returns true.</li>
304    /// </ul>
305    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">setProperty</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#hasOwnProperty">hasOwnProperty</a>().</p></div>
306    #[inline(always)]
307    pub unsafe fn delete_property(
308        &self,
309        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
310    ) -> bool {
311        crate::__ffi::ctr_qt_qml_ffi_QJSValue_deleteProperty(
312            self as *const crate::QJSValue as *mut crate::QJSValue,
313            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
314                .as_raw_ptr(),
315        )
316    }
317
318    /// <p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
319    ///
320    /// Calls C++ function: <span style='color: green;'>```QJSEngine* QJSValue::engine() const```</span>.
321    ///
322    /// <a href="http://doc.qt.io/qt-5/qjsvalue-obsolete.html#engine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
323    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> that created this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, or 0 if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is invalid or the value is not associated with a particular engine.</p></div>
324    #[inline(always)]
325    pub unsafe fn engine(&self) -> ::qt_core::QPtr<crate::QJSEngine> {
326        let ffi_result =
327            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_engine(self as *const crate::QJSValue) };
328        ::qt_core::QPtr::from_raw(ffi_result)
329    }
330
331    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is equal to <i>other</i>, otherwise returns false. The comparison follows the behavior described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 11.9.3, "The Abstract Equality Comparison Algorithm".</p>
332    ///
333    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::equals(const QJSValue& other) const```</span>.
334    ///
335    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#equals">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is equal to <i>other</i>, otherwise returns false. The comparison follows the behavior described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 11.9.3, "The Abstract Equality Comparison Algorithm".</p>
336    /// <p>This function can return true even if the type of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is different from the type of the <i>other</i> value; i.e. the comparison is not strict. For example, comparing the number 9 to the string "9" returns true; comparing an undefined value to a null value returns true; comparing a <code>Number</code> object whose primitive value is 6 to a <code>String</code> object whose primitive value is "6" returns true; and comparing the number 1 to the boolean value <code>true</code> returns true. If you want to perform a comparison without such implicit value conversion, use <a href="http://doc.qt.io/qt-5/qjsvalue.html#strictlyEquals">strictlyEquals</a>().</p>
337    /// <p>Note that if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> or the <i>other</i> value are objects, calling this function has side effects on the script engine, since the engine will call the object's valueOf() function (and possibly <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) in an attempt to convert the object to a primitive value (possibly resulting in an uncaught script exception).</p>
338    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#strictlyEquals">strictlyEquals</a>().</p></div>
339    #[inline(always)]
340    pub unsafe fn equals(
341        &self,
342        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
343    ) -> bool {
344        crate::__ffi::ctr_qt_qml_ffi_QJSValue_equals(
345            self as *const crate::QJSValue,
346            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(other).as_raw_ptr(),
347        )
348    }
349
350    /// <p>Returns the error type this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> represents if it is an Error object. Otherwise, returns <code>NoError."</code></p>
351    ///
352    /// Calls C++ function: <span style='color: green;'>```QJSValue::ErrorType QJSValue::errorType() const```</span>.
353    ///
354    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#errorType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the error type this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> represents if it is an Error object. Otherwise, returns <code>NoError."</code></p>
355    /// <p>This function was introduced in  Qt 5.12.</p>
356    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">isError</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">QJSEngine - Script Exceptions</a>.</p></div>
357    #[inline(always)]
358    #[cfg_attr(
359        feature = "ritual_rustdoc_nightly",
360        doc(cfg(any(
361            cpp_lib_version = "5.13.0",
362            cpp_lib_version = "5.12.2",
363            cpp_lib_version = "5.14.0"
364        )))
365    )]
366    #[cfg(any(
367        any(
368            cpp_lib_version = "5.13.0",
369            cpp_lib_version = "5.12.2",
370            cpp_lib_version = "5.14.0"
371        ),
372        feature = "ritual_rustdoc"
373    ))]
374    pub unsafe fn error_type(&self) -> crate::q_j_s_value::ErrorType {
375        crate::__ffi::ctr_qt_qml_ffi_QJSValue_errorType(self as *const crate::QJSValue)
376    }
377
378    /// <p>Returns true if this object has an own (not prototype-inherited) property of the given <i>name</i>, otherwise returns false.</p>
379    ///
380    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::hasOwnProperty(const QString& name) const```</span>.
381    ///
382    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#hasOwnProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this object has an own (not prototype-inherited) property of the given <i>name</i>, otherwise returns false.</p>
383    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#property">property</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#hasProperty">hasProperty</a>().</p></div>
384    #[inline(always)]
385    pub unsafe fn has_own_property(
386        &self,
387        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
388    ) -> bool {
389        crate::__ffi::ctr_qt_qml_ffi_QJSValue_hasOwnProperty(
390            self as *const crate::QJSValue,
391            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
392                .as_raw_ptr(),
393        )
394    }
395
396    /// <p>Returns true if this object has a property of the given <i>name</i>, otherwise returns false.</p>
397    ///
398    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::hasProperty(const QString& name) const```</span>.
399    ///
400    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#hasProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this object has a property of the given <i>name</i>, otherwise returns false.</p>
401    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#property">property</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#hasOwnProperty">hasOwnProperty</a>().</p></div>
402    #[inline(always)]
403    pub unsafe fn has_property(
404        &self,
405        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
406    ) -> bool {
407        crate::__ffi::ctr_qt_qml_ffi_QJSValue_hasProperty(
408            self as *const crate::QJSValue,
409            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
410                .as_raw_ptr(),
411        )
412    }
413
414    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the Array class; otherwise returns false.</p>
415    ///
416    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isArray() const```</span>.
417    ///
418    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the Array class; otherwise returns false.</p>
419    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newArray">QJSEngine::newArray</a>().</p></div>
420    #[inline(always)]
421    pub unsafe fn is_array(&self) -> bool {
422        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isArray(self as *const crate::QJSValue)
423    }
424
425    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Boolean; otherwise returns false.</p>
426    ///
427    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isBool() const```</span>.
428    ///
429    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isBool">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Boolean; otherwise returns false.</p>
430    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toBool">toBool</a>().</p></div>
431    #[inline(always)]
432    pub unsafe fn is_bool(&self) -> bool {
433        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isBool(self as *const crate::QJSValue)
434    }
435
436    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> can be called a function, otherwise returns false.</p>
437    ///
438    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isCallable() const```</span>.
439    ///
440    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isCallable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> can be called a function, otherwise returns false.</p>
441    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>().</p></div>
442    #[inline(always)]
443    pub unsafe fn is_callable(&self) -> bool {
444        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isCallable(self as *const crate::QJSValue)
445    }
446
447    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the Date class; otherwise returns false.</p>
448    ///
449    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isDate() const```</span>.
450    ///
451    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isDate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the Date class; otherwise returns false.</p></div>
452    #[inline(always)]
453    pub unsafe fn is_date(&self) -> bool {
454        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isDate(self as *const crate::QJSValue)
455    }
456
457    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the Error class; otherwise returns false.</p>
458    ///
459    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isError() const```</span>.
460    ///
461    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the Error class; otherwise returns false.</p>
462    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#errorType">errorType</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">QJSEngine - Script Exceptions</a>.</p></div>
463    #[inline(always)]
464    pub unsafe fn is_error(&self) -> bool {
465        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isError(self as *const crate::QJSValue)
466    }
467
468    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Null; otherwise returns false.</p>
469    ///
470    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isNull() const```</span>.
471    ///
472    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isNull">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Null; otherwise returns false.</p></div>
473    #[inline(always)]
474    pub unsafe fn is_null(&self) -> bool {
475        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isNull(self as *const crate::QJSValue)
476    }
477
478    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Number; otherwise returns false.</p>
479    ///
480    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isNumber() const```</span>.
481    ///
482    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isNumber">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Number; otherwise returns false.</p>
483    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toNumber">toNumber</a>().</p></div>
484    #[inline(always)]
485    pub unsafe fn is_number(&self) -> bool {
486        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isNumber(self as *const crate::QJSValue)
487    }
488
489    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the Object type; otherwise returns false.</p>
490    ///
491    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isObject() const```</span>.
492    ///
493    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the Object type; otherwise returns false.</p>
494    /// <p>Note that function values, variant values, and <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> values are objects, so this function returns true for such values.</p>
495    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">QJSEngine::newObject</a>().</p></div>
496    #[inline(always)]
497    pub unsafe fn is_object(&self) -> bool {
498        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isObject(self as *const crate::QJSValue)
499    }
500
501    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a>; otherwise returns false.</p>
502    ///
503    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isQMetaObject() const```</span>.
504    ///
505    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isQMetaObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a>; otherwise returns false.</p>
506    /// <p>This function was introduced in  Qt 5.8.</p>
507    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toQMetaObject">toQMetaObject</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#newQMetaObject-1">QJSEngine::newQMetaObject</a>().</p></div>
508    #[inline(always)]
509    pub unsafe fn is_q_meta_object(&self) -> bool {
510        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isQMetaObject(self as *const crate::QJSValue)
511    }
512
513    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>; otherwise returns false.</p>
514    ///
515    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isQObject() const```</span>.
516    ///
517    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isQObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>; otherwise returns false.</p>
518    /// <p>Note: This function returns true even if the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> that this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> wraps has been deleted.</p>
519    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toQObject">toQObject</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#newQObject">QJSEngine::newQObject</a>().</p></div>
520    #[inline(always)]
521    pub unsafe fn is_q_object(&self) -> bool {
522        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isQObject(self as *const crate::QJSValue)
523    }
524
525    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the RegExp class; otherwise returns false.</p>
526    ///
527    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isRegExp() const```</span>.
528    ///
529    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isRegExp">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object of the RegExp class; otherwise returns false.</p></div>
530    #[inline(always)]
531    pub unsafe fn is_reg_exp(&self) -> bool {
532        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isRegExp(self as *const crate::QJSValue)
533    }
534
535    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type String; otherwise returns false.</p>
536    ///
537    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isString() const```</span>.
538    ///
539    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isString">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type String; otherwise returns false.</p>
540    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>().</p></div>
541    #[inline(always)]
542    pub unsafe fn is_string(&self) -> bool {
543        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isString(self as *const crate::QJSValue)
544    }
545
546    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Undefined; otherwise returns false.</p>
547    ///
548    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isUndefined() const```</span>.
549    ///
550    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isUndefined">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is of the primitive type Undefined; otherwise returns false.</p></div>
551    #[inline(always)]
552    pub unsafe fn is_undefined(&self) -> bool {
553        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isUndefined(self as *const crate::QJSValue)
554    }
555
556    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a variant value; otherwise returns false.</p>
557    ///
558    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::isVariant() const```</span>.
559    ///
560    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#isVariant">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a variant value; otherwise returns false.</p>
561    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toVariant">toVariant</a>().</p></div>
562    #[inline(always)]
563    pub unsafe fn is_variant(&self) -> bool {
564        crate::__ffi::ctr_qt_qml_ffi_QJSValue_isVariant(self as *const crate::QJSValue)
565    }
566
567    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a special <i>value</i>.</p>
568    ///
569    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(QJSValue::SpecialValue value = …)```</span>.
570    ///
571    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a special <i>value</i>.</p></div>
572    #[inline(always)]
573    pub unsafe fn from_special_value(
574        value: crate::q_j_s_value::SpecialValue,
575    ) -> ::cpp_core::CppBox<crate::QJSValue> {
576        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue(value) };
577        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
578    }
579
580    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a boolean <i>value</i>.</p>
581    ///
582    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(bool value)```</span>.
583    ///
584    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a boolean <i>value</i>.</p></div>
585    #[inline(always)]
586    pub unsafe fn from_bool(value: bool) -> ::cpp_core::CppBox<crate::QJSValue> {
587        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue3(value) };
588        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
589    }
590
591    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a number <i>value</i>.</p>
592    ///
593    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(int value)```</span>.
594    ///
595    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-4">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a number <i>value</i>.</p></div>
596    #[inline(always)]
597    pub unsafe fn from_int(value: ::std::os::raw::c_int) -> ::cpp_core::CppBox<crate::QJSValue> {
598        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue4(value) };
599        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
600    }
601
602    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a number <i>value</i>.</p>
603    ///
604    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(unsigned int value)```</span>.
605    ///
606    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-5">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a number <i>value</i>.</p></div>
607    #[inline(always)]
608    pub unsafe fn from_uint(value: ::std::os::raw::c_uint) -> ::cpp_core::CppBox<crate::QJSValue> {
609        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue5(value) };
610        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
611    }
612
613    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a number <i>value</i>.</p>
614    ///
615    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(double value)```</span>.
616    ///
617    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-6">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a number <i>value</i>.</p></div>
618    #[inline(always)]
619    pub unsafe fn from_double(
620        value: ::std::os::raw::c_double,
621    ) -> ::cpp_core::CppBox<crate::QJSValue> {
622        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue6(value) };
623        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
624    }
625
626    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a string <i>value</i>.</p>
627    ///
628    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(const QString& value)```</span>.
629    ///
630    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-7">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a string <i>value</i>.</p></div>
631    #[inline(always)]
632    pub unsafe fn from_q_string(
633        value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
634    ) -> ::cpp_core::CppBox<crate::QJSValue> {
635        let ffi_result = {
636            crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue7(
637                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(value)
638                    .as_raw_ptr(),
639            )
640        };
641        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
642    }
643
644    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a string <i>value</i>.</p>
645    ///
646    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(const QLatin1String& value)```</span>.
647    ///
648    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-8">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a string <i>value</i>.</p></div>
649    #[inline(always)]
650    pub unsafe fn from_q_latin1_string(
651        value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QLatin1String>>,
652    ) -> ::cpp_core::CppBox<crate::QJSValue> {
653        let ffi_result = {
654            crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue8(
655                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QLatin1String>>::cast_into(value)
656                    .as_raw_ptr(),
657            )
658        };
659        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
660    }
661
662    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a string <i>value</i>.</p>
663    ///
664    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(const char* str)```</span>.
665    ///
666    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-9">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> with a string <i>value</i>.</p></div>
667    #[inline(always)]
668    pub unsafe fn from_char(
669        str: *const ::std::os::raw::c_char,
670    ) -> ::cpp_core::CppBox<crate::QJSValue> {
671        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue9(str) };
672        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
673    }
674
675    /// <p><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> supports the types defined in the <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> standard: The primitive types, which are Undefined, Null, Boolean, Number, and String; and the Object and Array types. Additionally, built-in support is provided for Qt/C++ types such as <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> and <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
676    ///
677    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue()```</span>.
678    ///
679    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> supports the types defined in the <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> standard: The primitive types, which are Undefined, Null, Boolean, Number, and String; and the Object and Array types. Additionally, built-in support is provided for Qt/C++ types such as <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> and <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
680    /// <p>For the object-based types (including Date and RegExp), use the newT() functions in <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> (e.g. <a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">QJSEngine::newObject</a>()) to create a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> of the desired type. For the primitive types, use one of the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> constructor overloads. For other types, e.g. registered gadget types such as <a href="http://doc.qt.io/qt-5/qpoint.html">QPoint</a>, you can use <a href="http://doc.qt.io/qt-5/qjsengine.html#toScriptValue">QJSEngine::toScriptValue</a>.</p>
681    /// <p>The methods named isT() (e.g. <a href="http://doc.qt.io/qt-5/qjsvalue.html#isBool">isBool</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#isUndefined">isUndefined</a>()) can be used to test if a value is of a certain type. The methods named toT() (e.g. <a href="http://doc.qt.io/qt-5/qjsvalue.html#toBool">toBool</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) can be used to convert a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> to another type. You can also use the generic qjsvalue_cast() function.</p>
682    /// <p>Object values have zero or more properties which are themselves QJSValues. Use <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">setProperty</a>() to set a property of an object, and call <a href="http://doc.qt.io/qt-5/qjsvalue.html#property">property</a>() to retrieve the value of a property.</p>
683    /// <pre class="cpp">
684    ///
685    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a></span> myEngine;
686    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue">QJSValue</a></span> myObject <span class="operator">=</span> myEngine<span class="operator">.</span>newObject();
687    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue">QJSValue</a></span> myOtherObject <span class="operator">=</span> myEngine<span class="operator">.</span>newObject();
688    ///   myObject<span class="operator">.</span>setProperty(<span class="string">"myChild"</span><span class="operator">,</span> myOtherObject);
689    ///   myObject<span class="operator">.</span>setProperty(<span class="string">"name"</span><span class="operator">,</span> <span class="string">"John Doe"</span>);
690    ///
691    /// </pre>
692    /// <p>If you want to iterate over the properties of a script object, use the <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> class.</p>
693    /// <p>Object values have an internal <code>prototype</code> property, which can be accessed with <a href="http://doc.qt.io/qt-5/qjsvalue.html#prototype">prototype</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#setPrototype">setPrototype</a>().</p>
694    /// <p>Function objects (objects for which <a href="http://doc.qt.io/qt-5/qjsvalue.html#isCallable">isCallable</a>()) returns true) can be invoked by calling <a href="http://doc.qt.io/qt-5/qjsvalue.html#call">call</a>(). Constructor functions can be used to construct new objects by calling <a href="http://doc.qt.io/qt-5/qjsvalue.html#callAsConstructor">callAsConstructor</a>().</p>
695    /// <p>Use <a href="http://doc.qt.io/qt-5/qjsvalue.html#equals">equals</a>() or <a href="http://doc.qt.io/qt-5/qjsvalue.html#strictlyEquals">strictlyEquals</a>() to compare a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> to another.</p>
696    /// <p>Note that a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> for which <a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">isObject</a>() is true only carries a reference to an actual object; copying the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> will only copy the object reference, not the object itself. If you want to clone an object (i.e. copy an object's properties to another object), you can do so with the help of a <code>for-in</code> statement in script code, or <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> in C++.</p>
697    /// <a name="working-with-arrays"></a></div>
698    #[inline(always)]
699    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QJSValue> {
700        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue11() };
701        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
702    }
703
704    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> that is a copy of <i>other</i>.</p>
705    ///
706    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValue::QJSValue(const QJSValue& other)```</span>.
707    ///
708    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#QJSValue-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> that is a copy of <i>other</i>.</p>
709    /// <p>Note that if <i>other</i> is an object (i.e., <a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">isObject</a>() would return true), then only a reference to the underlying object is copied into the new script value (i.e., the object itself is not copied).</p></div>
710    #[inline(always)]
711    pub unsafe fn new_copy(
712        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
713    ) -> ::cpp_core::CppBox<crate::QJSValue> {
714        let ffi_result = {
715            crate::__ffi::ctr_qt_qml_ffi_QJSValue_QJSValue1(
716                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(other)
717                    .as_raw_ptr(),
718            )
719        };
720        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
721    }
722
723    /// <p>Returns the value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>'s property with the given <i>name</i>. If no such property exists, an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is returned.</p>
724    ///
725    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::property(const QString& name) const```</span>.
726    ///
727    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#property">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>'s property with the given <i>name</i>. If no such property exists, an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is returned.</p>
728    /// <p>If the property is implemented using a getter function (i.e. has the PropertyGetter flag set), calling property() has side-effects on the script engine, since the getter function will be called (possibly resulting in an uncaught script exception). If an exception occurred, property() returns the value that was thrown (typically an <code>Error</code> object).</p>
729    /// <p>To access array elements, use the <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty-1">setProperty(quint32 arrayIndex, const QJSValue &amp;value)</a> overload instead.</p>
730    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">setProperty</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#hasProperty">hasProperty</a>(), and <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a>.</p></div>
731    #[inline(always)]
732    pub unsafe fn property_q_string(
733        &self,
734        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
735    ) -> ::cpp_core::CppBox<crate::QJSValue> {
736        let ffi_result = {
737            crate::__ffi::ctr_qt_qml_ffi_QJSValue_property(
738                self as *const crate::QJSValue,
739                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
740                    .as_raw_ptr(),
741            )
742        };
743        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
744    }
745
746    /// <p>This is an overloaded function.</p>
747    ///
748    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::property(quint32 arrayIndex) const```</span>.
749    ///
750    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#property-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
751    /// <p>Returns the property at the given <i>arrayIndex</i>.</p>
752    /// <p>It is possible to access elements in an array in two ways. The first is to use the array index as the property name:</p>
753    /// <pre class="cpp">
754    ///
755    ///   <a href="http://doc.qt.io/qt-5/#qDebug">qDebug</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> jsValueArray<span class="operator">.</span>property(QLatin1String(<span class="string">"4"</span>))<span class="operator">.</span>toString();
756    ///
757    /// </pre>
758    /// <p>The second is to use the overload that takes an index:</p>
759    /// <pre class="cpp">
760    ///
761    ///   <a href="http://doc.qt.io/qt-5/#qDebug">qDebug</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> jsValueArray<span class="operator">.</span>property(<span class="number">4</span>)<span class="operator">.</span>toString();
762    ///
763    /// </pre>
764    /// <p>Both of these approaches achieve the same result, except that the latter:</p>
765    /// <ul>
766    /// <li>Is easier to use (can use an integer directly)</li>
767    /// <li>Is faster (no conversion to integer)</li>
768    /// </ul>
769    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not an Array object, this function behaves as if <a href="http://doc.qt.io/qt-5/qjsvalue.html#property">property</a>() was called with the string representation of <i>arrayIndex</i>.</p></div>
770    #[inline(always)]
771    pub unsafe fn property_u32(&self, array_index: u32) -> ::cpp_core::CppBox<crate::QJSValue> {
772        let ffi_result = {
773            crate::__ffi::ctr_qt_qml_ffi_QJSValue_property1(
774                self as *const crate::QJSValue,
775                array_index,
776            )
777        };
778        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
779    }
780
781    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, returns the internal prototype (<code>__proto__</code> property) of this object; otherwise returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
782    ///
783    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValue::prototype() const```</span>.
784    ///
785    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#prototype">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, returns the internal prototype (<code>__proto__</code> property) of this object; otherwise returns an undefined <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
786    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#setPrototype">setPrototype</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">isObject</a>().</p></div>
787    #[inline(always)]
788    pub unsafe fn prototype(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
789        let ffi_result =
790            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_prototype(self as *const crate::QJSValue) };
791        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
792    }
793
794    /// <p>Sets the value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>'s property with the given <i>name</i> to the given <i>value</i>.</p>
795    ///
796    /// Calls C++ function: <span style='color: green;'>```void QJSValue::setProperty(const QString& name, const QJSValue& value)```</span>.
797    ///
798    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>'s property with the given <i>name</i> to the given <i>value</i>.</p>
799    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not an object, this function does nothing.</p>
800    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> does not already have a property with name <i>name</i>, a new property is created.</p>
801    /// <p>To modify array elements, use the <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty-1">setProperty(quint32 arrayIndex, const QJSValue &amp;value)</a> overload instead.</p>
802    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#property">property</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#deleteProperty">deleteProperty</a>().</p></div>
803    #[inline(always)]
804    pub unsafe fn set_property_q_string_q_j_s_value(
805        &self,
806        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
807        value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
808    ) {
809        crate::__ffi::ctr_qt_qml_ffi_QJSValue_setProperty(
810            self as *const crate::QJSValue as *mut crate::QJSValue,
811            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
812                .as_raw_ptr(),
813            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(value).as_raw_ptr(),
814        )
815    }
816
817    /// <p>This is an overloaded function.</p>
818    ///
819    /// Calls C++ function: <span style='color: green;'>```void QJSValue::setProperty(quint32 arrayIndex, const QJSValue& value)```</span>.
820    ///
821    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
822    /// <p>Sets the property at the given <i>arrayIndex</i> to the given <i>value</i>.</p>
823    /// <p>It is possible to modify elements in an array in two ways. The first is to use the array index as the property name:</p>
824    /// <pre class="cpp">
825    ///
826    ///   jsValueArray<span class="operator">.</span>setProperty(QLatin1String(<span class="string">"4"</span>)<span class="operator">,</span> value);
827    ///
828    /// </pre>
829    /// <p>The second is to use the overload that takes an index:</p>
830    /// <pre class="cpp">
831    ///
832    ///   jsValueArray<span class="operator">.</span>setProperty(<span class="number">4</span><span class="operator">,</span> value);
833    ///
834    /// </pre>
835    /// <p>Both of these approaches achieve the same result, except that the latter:</p>
836    /// <ul>
837    /// <li>Is easier to use (can use an integer directly)</li>
838    /// <li>Is faster (no conversion to integer)</li>
839    /// </ul>
840    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not an Array object, this function behaves as if <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">setProperty</a>() was called with the string representation of <i>arrayIndex</i>.</p>
841    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#property-1">property</a>(quint32 arrayIndex) and <a href="http://doc.qt.io/qt-5/qjsvalue.html#working-with-arrays">Working With Arrays</a>.</p></div>
842    #[inline(always)]
843    pub unsafe fn set_property_u32_q_j_s_value(
844        &self,
845        array_index: u32,
846        value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
847    ) {
848        crate::__ffi::ctr_qt_qml_ffi_QJSValue_setProperty1(
849            self as *const crate::QJSValue as *mut crate::QJSValue,
850            array_index,
851            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(value).as_raw_ptr(),
852        )
853    }
854
855    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, sets the internal prototype (<code>__proto__</code> property) of this object to be <i>prototype</i>; if the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is null, it sets the prototype to null; otherwise does nothing.</p>
856    ///
857    /// Calls C++ function: <span style='color: green;'>```void QJSValue::setPrototype(const QJSValue& prototype)```</span>.
858    ///
859    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#setPrototype">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, sets the internal prototype (<code>__proto__</code> property) of this object to be <i>prototype</i>; if the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is null, it sets the prototype to null; otherwise does nothing.</p>
860    /// <p>The internal prototype should not be confused with the public property with name "prototype"; the public prototype is usually only set on functions that act as constructors.</p>
861    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#prototype">prototype</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#isObject">isObject</a>().</p></div>
862    #[inline(always)]
863    pub unsafe fn set_prototype(
864        &self,
865        prototype: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
866    ) {
867        crate::__ffi::ctr_qt_qml_ffi_QJSValue_setPrototype(
868            self as *const crate::QJSValue as *mut crate::QJSValue,
869            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(prototype)
870                .as_raw_ptr(),
871        )
872    }
873
874    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is equal to <i>other</i> using strict comparison (no conversion), otherwise returns false. The comparison follows the behavior described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 11.9.6, "The Strict Equality Comparison Algorithm".</p>
875    ///
876    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::strictlyEquals(const QJSValue& other) const```</span>.
877    ///
878    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#strictlyEquals">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is equal to <i>other</i> using strict comparison (no conversion), otherwise returns false. The comparison follows the behavior described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 11.9.6, "The Strict Equality Comparison Algorithm".</p>
879    /// <p>If the type of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is different from the type of the <i>other</i> value, this function returns false. If the types are equal, the result depends on the type, as shown in the following table:</p>
880    /// <div class="table"><table class="generic">
881    ///  <thead><tr class="qt-style"><th>Type</th><th>Result</th></tr></thead>
882    /// <tbody><tr valign="top" class="odd"><td>Undefined</td><td>true</td></tr>
883    /// <tr valign="top" class="even"><td>Null</td><td>true</td></tr>
884    /// <tr valign="top" class="odd"><td>Boolean</td><td>true if both values are true, false otherwise</td></tr>
885    /// <tr valign="top" class="even"><td>Number</td><td>false if either value is NaN (Not-a-Number); true if values are equal, false otherwise</td></tr>
886    /// <tr valign="top" class="odd"><td>String</td><td>true if both values are exactly the same sequence of characters, false otherwise</td></tr>
887    /// <tr valign="top" class="even"><td>Object</td><td>true if both values refer to the same object, false otherwise</td></tr>
888    /// </tbody></table></div>
889    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#equals">equals</a>().</p></div>
890    #[inline(always)]
891    pub unsafe fn strictly_equals(
892        &self,
893        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
894    ) -> bool {
895        crate::__ffi::ctr_qt_qml_ffi_QJSValue_strictlyEquals(
896            self as *const crate::QJSValue,
897            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(other).as_raw_ptr(),
898        )
899    }
900
901    /// <p>Returns the boolean value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, using the conversion rules described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.2, "ToBoolean".</p>
902    ///
903    /// Calls C++ function: <span style='color: green;'>```bool QJSValue::toBool() const```</span>.
904    ///
905    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toBool">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the boolean value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, using the conversion rules described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.2, "ToBoolean".</p>
906    /// <p>Note that if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, calling this function has side effects on the script engine, since the engine will call the object's valueOf() function (and possibly <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) in an attempt to convert the object to a primitive value (possibly resulting in an uncaught script exception).</p>
907    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isBool">isBool</a>().</p></div>
908    #[inline(always)]
909    pub unsafe fn to_bool(&self) -> bool {
910        crate::__ffi::ctr_qt_qml_ffi_QJSValue_toBool(self as *const crate::QJSValue)
911    }
912
913    /// <p>Returns a <a href="http://doc.qt.io/qt-5/qdatetime.html">QDateTime</a> representation of this value, in local time. If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not a date, or the value of the date is NaN (Not-a-Number), an invalid <a href="http://doc.qt.io/qt-5/qdatetime.html">QDateTime</a> is returned.</p>
914    ///
915    /// Calls C++ function: <span style='color: green;'>```QDateTime QJSValue::toDateTime() const```</span>.
916    ///
917    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toDateTime">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a <a href="http://doc.qt.io/qt-5/qdatetime.html">QDateTime</a> representation of this value, in local time. If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is not a date, or the value of the date is NaN (Not-a-Number), an invalid <a href="http://doc.qt.io/qt-5/qdatetime.html">QDateTime</a> is returned.</p>
918    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isDate">isDate</a>().</p></div>
919    #[inline(always)]
920    pub unsafe fn to_date_time(&self) -> ::cpp_core::CppBox<::qt_core::QDateTime> {
921        let ffi_result =
922            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_toDateTime(self as *const crate::QJSValue) };
923        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
924    }
925
926    /// <p>Returns the signed 32-bit integer value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, using the conversion rules described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.5, "ToInt32".</p>
927    ///
928    /// Calls C++ function: <span style='color: green;'>```qint32 QJSValue::toInt() const```</span>.
929    ///
930    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toInt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the signed 32-bit integer value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, using the conversion rules described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.5, "ToInt32".</p>
931    /// <p>Note that if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, calling this function has side effects on the script engine, since the engine will call the object's valueOf() function (and possibly <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) in an attempt to convert the object to a primitive value (possibly resulting in an uncaught script exception).</p>
932    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toNumber">toNumber</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#toUInt">toUInt</a>().</p></div>
933    #[inline(always)]
934    pub unsafe fn to_int(&self) -> i32 {
935        crate::__ffi::ctr_qt_qml_ffi_QJSValue_toInt(self as *const crate::QJSValue)
936    }
937
938    /// <p>Returns the number value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, as defined in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.3, "ToNumber".</p>
939    ///
940    /// Calls C++ function: <span style='color: green;'>```double QJSValue::toNumber() const```</span>.
941    ///
942    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toNumber">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, as defined in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.3, "ToNumber".</p>
943    /// <p>Note that if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, calling this function has side effects on the script engine, since the engine will call the object's valueOf() function (and possibly <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) in an attempt to convert the object to a primitive value (possibly resulting in an uncaught script exception).</p>
944    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isNumber">isNumber</a>(), <a href="http://doc.qt.io/qt-5/qjsvalue.html#toInt">toInt</a>(), and <a href="http://doc.qt.io/qt-5/qjsvalue.html#toUInt">toUInt</a>().</p></div>
945    #[inline(always)]
946    pub unsafe fn to_number(&self) -> ::std::os::raw::c_double {
947        crate::__ffi::ctr_qt_qml_ffi_QJSValue_toNumber(self as *const crate::QJSValue)
948    }
949
950    /// <p>* If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a>, returns the <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> pointer * that the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> represents; otherwise, returns <code>nullptr</code>. * *</p>
951    ///
952    /// Calls C++ function: <span style='color: green;'>```const QMetaObject* QJSValue::toQMetaObject() const```</span>.
953    ///
954    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toQMetaObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>* If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a>, returns the <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> pointer * that the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> represents; otherwise, returns <code>nullptr</code>. * *</p>
955    /// <p>This function was introduced in  Qt 5.8.</p>
956    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isQMetaObject">isQMetaObject</a>().</p></div>
957    #[inline(always)]
958    pub unsafe fn to_q_meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
959        let ffi_result =
960            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_toQMetaObject(self as *const crate::QJSValue) };
961        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
962    }
963
964    /// <p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, returns the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> pointer that the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> represents; otherwise, returns <code>nullptr</code>.</p>
965    ///
966    /// Calls C++ function: <span style='color: green;'>```QObject* QJSValue::toQObject() const```</span>.
967    ///
968    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toQObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>If this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, returns the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> pointer that the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> represents; otherwise, returns <code>nullptr</code>.</p>
969    /// <p>If the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> that this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> wraps has been deleted, this function returns <code>nullptr</code> (i.e. it is possible for toQObject() to return <code>nullptr</code> even when <a href="http://doc.qt.io/qt-5/qjsvalue.html#isQObject">isQObject</a>() returns true).</p>
970    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isQObject">isQObject</a>().</p></div>
971    #[inline(always)]
972    pub unsafe fn to_q_object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
973        let ffi_result =
974            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_toQObject(self as *const crate::QJSValue) };
975        ::qt_core::QPtr::from_raw(ffi_result)
976    }
977
978    /// <p>Returns the string value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, as defined in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.8, "ToString".</p>
979    ///
980    /// Calls C++ function: <span style='color: green;'>```QString QJSValue::toString() const```</span>.
981    ///
982    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the string value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, as defined in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.8, "ToString".</p>
983    /// <p>Note that if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, calling this function has side effects on the script engine, since the engine will call the object's toString() function (and possibly valueOf()) in an attempt to convert the object to a primitive value (possibly resulting in an uncaught script exception).</p>
984    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isString">isString</a>().</p></div>
985    #[inline(always)]
986    pub unsafe fn to_string(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
987        let ffi_result =
988            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_toString(self as *const crate::QJSValue) };
989        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
990    }
991
992    /// <p>Returns the unsigned 32-bit integer value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, using the conversion rules described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.6, "ToUint32".</p>
993    ///
994    /// Calls C++ function: <span style='color: green;'>```quint32 QJSValue::toUInt() const```</span>.
995    ///
996    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toUInt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the unsigned 32-bit integer value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, using the conversion rules described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a> section 9.6, "ToUint32".</p>
997    /// <p>Note that if this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> is an object, calling this function has side effects on the script engine, since the engine will call the object's valueOf() function (and possibly <a href="http://doc.qt.io/qt-5/qjsvalue.html#toString">toString</a>()) in an attempt to convert the object to a primitive value (possibly resulting in an uncaught script exception).</p>
998    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toNumber">toNumber</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#toInt">toInt</a>().</p></div>
999    #[inline(always)]
1000    pub unsafe fn to_u_int(&self) -> u32 {
1001        crate::__ffi::ctr_qt_qml_ffi_QJSValue_toUInt(self as *const crate::QJSValue)
1002    }
1003
1004    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, if it can be converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>; otherwise returns an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>. The conversion is performed according to the following table:</p>
1005    ///
1006    /// Calls C++ function: <span style='color: green;'>```QVariant QJSValue::toVariant() const```</span>.
1007    ///
1008    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#toVariant">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> value of this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>, if it can be converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>; otherwise returns an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>. The conversion is performed according to the following table:</p>
1009    /// <div class="table"><table class="generic">
1010    ///  <thead><tr class="qt-style"><th>Input Type</th><th>Result</th></tr></thead>
1011    /// <tbody><tr valign="top" class="odd"><td>Undefined</td><td>An invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</td></tr>
1012    /// <tr valign="top" class="even"><td>Null</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing a null pointer (<a href="http://doc.qt.io/qt-5/qmetatype.html#Type-enum">QMetaType::Nullptr</a>).</td></tr>
1013    /// <tr valign="top" class="odd"><td>Boolean</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing the value of the boolean.</td></tr>
1014    /// <tr valign="top" class="even"><td>Number</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing the value of the number.</td></tr>
1015    /// <tr valign="top" class="odd"><td>String</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing the value of the string.</td></tr>
1016    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> Object</td><td>The result is the <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> value of the object (no conversion).</td></tr>
1017    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> Object</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing a pointer to the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</td></tr>
1018    /// <tr valign="top" class="even"><td>Date Object</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing the date value (<a href="http://doc.qt.io/qt-5/qjsvalue.html#toDateTime">toDateTime</a>()).</td></tr>
1019    /// <tr valign="top" class="odd"><td>RegExp Object</td><td>A <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> containing the regular expression value.</td></tr>
1020    /// <tr valign="top" class="even"><td>Array Object</td><td>The array is converted to a <a href="http://doc.qt.io/qt-5/qvariant.html#QVariantList-typedef">QVariantList</a>. Each element is converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>, recursively; cyclic references are not followed.</td></tr>
1021    /// <tr valign="top" class="odd"><td>Object</td><td>The object is converted to a <a href="http://doc.qt.io/qt-5/qvariant.html#QVariantMap-typedef">QVariantMap</a>. Each property is converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>, recursively; cyclic references are not followed.</td></tr>
1022    /// </tbody></table></div>
1023    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#isVariant">isVariant</a>().</p></div>
1024    #[inline(always)]
1025    pub unsafe fn to_variant(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
1026        let ffi_result =
1027            { crate::__ffi::ctr_qt_qml_ffi_QJSValue_toVariant(self as *const crate::QJSValue) };
1028        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1029    }
1030}
1031
1032pub mod q_qml_debugging_enabler {
1033    //! C++ type: <span style='color: green;'>```QQmlDebuggingEnabler```</span>
1034
1035    /// <p>Defines the debug connector's start behavior. You can interrupt QML engines starting while a debug client is connecting, in order to set breakpoints in or profile startup code.</p>
1036    ///
1037    /// C++ enum: <span style='color: green;'>```QQmlDebuggingEnabler::StartMode```</span>.
1038    ///
1039    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#StartMode-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines the debug connector's start behavior. You can interrupt QML engines starting while a debug client is connecting, in order to set breakpoints in or profile startup code.</p></div>
1040    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1041    #[repr(transparent)]
1042    pub struct StartMode(::std::os::raw::c_int);
1043
1044    impl From<::std::os::raw::c_int> for StartMode {
1045        fn from(value: ::std::os::raw::c_int) -> Self {
1046            StartMode(value)
1047        }
1048    }
1049
1050    impl From<StartMode> for ::std::os::raw::c_int {
1051        fn from(value: StartMode) -> Self {
1052            value.0
1053        }
1054    }
1055
1056    impl StartMode {
1057        pub fn to_int(&self) -> ::std::os::raw::c_int {
1058            self.0
1059        }
1060    }
1061
1062    impl StartMode {
1063        /// Run any QML engines as usual while the debug services are connecting. (C++ enum variant: <span style='color: green;'>```DoNotWaitForClient = 0```</span>)
1064        #[allow(non_upper_case_globals)]
1065        pub const DoNotWaitForClient: crate::q_qml_debugging_enabler::StartMode =
1066            crate::q_qml_debugging_enabler::StartMode(0);
1067        /// If a QML engine starts while the debug services are connecting, interrupt it until they are done. (C++ enum variant: <span style='color: green;'>```WaitForClient = 1```</span>)
1068        #[allow(non_upper_case_globals)]
1069        pub const WaitForClient: crate::q_qml_debugging_enabler::StartMode =
1070            crate::q_qml_debugging_enabler::StartMode(1);
1071    }
1072}
1073/// C++ class: <span style='color: green;'>```QQmlDebuggingEnabler```</span>.
1074#[repr(C)]
1075pub struct QQmlDebuggingEnabler {
1076    _unused: u8,
1077}
1078impl QQmlDebuggingEnabler {
1079    /// <p>Enables debugging for QML engines created after calling this function. The debug connector will connect to a debugger waiting on a local socket at the given <i>socketFileName</i> and block the QML engine until the connection is established if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it will not block. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1080    ///
1081    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::connectToLocalDebugger(const QString& socketFileName, QQmlDebuggingEnabler::StartMode mode = …)```</span>.
1082    ///
1083    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#connectToLocalDebugger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. The debug connector will connect to a debugger waiting on a local socket at the given <i>socketFileName</i> and block the QML engine until the connection is established if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it will not block. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1084    /// <p>This function was introduced in  Qt 5.6.</p></div>
1085    #[inline(always)]
1086    pub unsafe fn connect_to_local_debugger_2a(
1087        socket_file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1088        mode: crate::q_qml_debugging_enabler::StartMode,
1089    ) -> bool {
1090        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_connectToLocalDebugger(
1091            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(
1092                socket_file_name,
1093            )
1094            .as_raw_ptr(),
1095            mode,
1096        )
1097    }
1098
1099    /// <p>Enables debugging for QML engines created after calling this function. The debug connector will connect to a debugger waiting on a local socket at the given <i>socketFileName</i> and block the QML engine until the connection is established if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it will not block. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1100    ///
1101    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::connectToLocalDebugger(const QString& socketFileName)```</span>.
1102    ///
1103    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#connectToLocalDebugger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. The debug connector will connect to a debugger waiting on a local socket at the given <i>socketFileName</i> and block the QML engine until the connection is established if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it will not block. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1104    /// <p>This function was introduced in  Qt 5.6.</p></div>
1105    #[inline(always)]
1106    pub unsafe fn connect_to_local_debugger_1a(
1107        socket_file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1108    ) -> bool {
1109        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_connectToLocalDebugger1(
1110            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(
1111                socket_file_name,
1112            )
1113            .as_raw_ptr(),
1114        )
1115    }
1116
1117    /// Calls C++ function: <span style='color: green;'>```QQmlDebuggingEnabler& QQmlDebuggingEnabler::operator=(const QQmlDebuggingEnabler& other)```</span>.
1118    #[inline(always)]
1119    pub unsafe fn copy_from(
1120        &self,
1121        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlDebuggingEnabler>>,
1122    ) -> ::cpp_core::Ref<crate::QQmlDebuggingEnabler> {
1123        let ffi_result = {
1124            crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_operator_(
1125                self as *const crate::QQmlDebuggingEnabler as *mut crate::QQmlDebuggingEnabler,
1126                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlDebuggingEnabler>>::cast_into(
1127                    other,
1128                )
1129                .as_raw_ptr(),
1130            )
1131        };
1132        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
1133    }
1134
1135    /// <p>Retrieves the plugin keys of the debugger services provided by default. The debugger services enable a debug client to use a Qml/JavaScript debugger, in order to set breakpoints, pause execution, evaluate expressions and similar debugging tasks. Returns List of plugin keys of default debugger services.</p>
1136    ///
1137    /// Calls C++ function: <span style='color: green;'>```static QStringList QQmlDebuggingEnabler::debuggerServices()```</span>.
1138    ///
1139    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#debuggerServices">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Retrieves the plugin keys of the debugger services provided by default. The debugger services enable a debug client to use a Qml/JavaScript debugger, in order to set breakpoints, pause execution, evaluate expressions and similar debugging tasks. Returns List of plugin keys of default debugger services.</p></div>
1140    #[inline(always)]
1141    pub unsafe fn debugger_services() -> ::cpp_core::CppBox<::qt_core::QStringList> {
1142        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_debuggerServices() };
1143        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1144    }
1145
1146    /// <p>Retrieves the plugin keys of the inspector services provided by default. The inspector services enable a debug client to use a visual inspector tool for Qt Quick. Returns List of plugin keys of default inspector services.</p>
1147    ///
1148    /// Calls C++ function: <span style='color: green;'>```static QStringList QQmlDebuggingEnabler::inspectorServices()```</span>.
1149    ///
1150    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#inspectorServices">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Retrieves the plugin keys of the inspector services provided by default. The inspector services enable a debug client to use a visual inspector tool for Qt Quick. Returns List of plugin keys of default inspector services.</p></div>
1151    #[inline(always)]
1152    pub unsafe fn inspector_services() -> ::cpp_core::CppBox<::qt_core::QStringList> {
1153        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_inspectorServices() };
1154        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1155    }
1156
1157    /// <p>Retrieves the plugin keys of the debug services designed to be used with a native debugger. The native debugger will communicate with these services by directly reading and writing the application's memory. Returns List of plugin keys of debug services designed to be used with a native debugger.</p>
1158    ///
1159    /// Calls C++ function: <span style='color: green;'>```static QStringList QQmlDebuggingEnabler::nativeDebuggerServices()```</span>.
1160    ///
1161    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#nativeDebuggerServices">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Retrieves the plugin keys of the debug services designed to be used with a native debugger. The native debugger will communicate with these services by directly reading and writing the application's memory. Returns List of plugin keys of debug services designed to be used with a native debugger.</p></div>
1162    #[inline(always)]
1163    pub unsafe fn native_debugger_services() -> ::cpp_core::CppBox<::qt_core::QStringList> {
1164        let ffi_result =
1165            { crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_nativeDebuggerServices() };
1166        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1167    }
1168
1169    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlDebuggingEnabler::QQmlDebuggingEnabler(bool printWarning = …)```</span>.
1170    #[inline(always)]
1171    pub unsafe fn new_1a(print_warning: bool) -> ::cpp_core::CppBox<crate::QQmlDebuggingEnabler> {
1172        let ffi_result = {
1173            crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_QQmlDebuggingEnabler(print_warning)
1174        };
1175        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1176    }
1177
1178    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlDebuggingEnabler::QQmlDebuggingEnabler()```</span>.
1179    #[inline(always)]
1180    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QQmlDebuggingEnabler> {
1181        let ffi_result =
1182            { crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_QQmlDebuggingEnabler1() };
1183        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1184    }
1185
1186    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlDebuggingEnabler::QQmlDebuggingEnabler(const QQmlDebuggingEnabler& other)```</span>.
1187    #[inline(always)]
1188    pub unsafe fn new_copy(
1189        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlDebuggingEnabler>>,
1190    ) -> ::cpp_core::CppBox<crate::QQmlDebuggingEnabler> {
1191        let ffi_result = {
1192            crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_QQmlDebuggingEnabler2(
1193                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlDebuggingEnabler>>::cast_into(
1194                    other,
1195                )
1196                .as_raw_ptr(),
1197            )
1198        };
1199        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1200    }
1201
1202    /// <p>Retrieves the names of the profiler services provided by default. The profiler services enable a debug client to use a profiler and track the time taken by various QML and JavaScript constructs, as well as the <a href="http://doc.qt.io/qt-5/qtquick-qmlmodule.html">QtQuick</a> SceneGraph. Returns List of plugin keys of default profiler services.</p>
1203    ///
1204    /// Calls C++ function: <span style='color: green;'>```static QStringList QQmlDebuggingEnabler::profilerServices()```</span>.
1205    ///
1206    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#profilerServices">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Retrieves the names of the profiler services provided by default. The profiler services enable a debug client to use a profiler and track the time taken by various QML and JavaScript constructs, as well as the <a href="http://doc.qt.io/qt-5/qtquick-qmlmodule.html">QtQuick</a> SceneGraph. Returns List of plugin keys of default profiler services.</p></div>
1207    #[inline(always)]
1208    pub unsafe fn profiler_services() -> ::cpp_core::CppBox<::qt_core::QStringList> {
1209        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_profilerServices() };
1210        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1211    }
1212
1213    /// <p>Restricts the services available from the debug connector. The connector will scan plugins in the "qmltooling" subdirectory of the default plugin path. If this function is not called before the debug connector is enabled, all services found that way will be available to any client. If this function is called, only the services with plugin keys given in <i>services</i> will be available.</p>
1214    ///
1215    /// Calls C++ function: <span style='color: green;'>```static void QQmlDebuggingEnabler::setServices(const QStringList& services)```</span>.
1216    ///
1217    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#setServices">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Restricts the services available from the debug connector. The connector will scan plugins in the "qmltooling" subdirectory of the default plugin path. If this function is not called before the debug connector is enabled, all services found that way will be available to any client. If this function is called, only the services with plugin keys given in <i>services</i> will be available.</p>
1218    /// <p>Use this method to disable debugger and inspector services when profiling to get better performance and more realistic profiles. The debugger service will put any JavaScript engine it connects to into interpreted mode, disabling the JIT compiler.</p>
1219    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#debuggerServices">debuggerServices</a>(), <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#profilerServices">profilerServices</a>(), and <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#inspectorServices">inspectorServices</a>().</p></div>
1220    #[inline(always)]
1221    pub unsafe fn set_services(
1222        services: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
1223    ) {
1224        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_setServices(
1225            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(services)
1226                .as_raw_ptr(),
1227        )
1228    }
1229
1230    /// <p>Enables debugging for QML engines created after calling this function. A debug connector plugin specified by <i>pluginName</i> will be loaded and started using the given <i>configuration</i>. Supported configuration entries and their semantics depend on the plugin being loaded. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1231    ///
1232    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::startDebugConnector(const QString& pluginName, const QHash<QString, QVariant>& configuration = …)```</span>.
1233    ///
1234    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#startDebugConnector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. A debug connector plugin specified by <i>pluginName</i> will be loaded and started using the given <i>configuration</i>. Supported configuration entries and their semantics depend on the plugin being loaded. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1235    /// <p>This function was introduced in  Qt 5.7.</p></div>
1236    #[inline(always)]
1237    pub unsafe fn start_debug_connector_2a(
1238        plugin_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1239        configuration: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QHashOfQStringQVariant>>,
1240    ) -> bool {
1241        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_startDebugConnector(
1242            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(plugin_name)
1243                .as_raw_ptr(),
1244            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QHashOfQStringQVariant>>::cast_into(
1245                configuration,
1246            )
1247            .as_raw_ptr(),
1248        )
1249    }
1250
1251    /// <p>Enables debugging for QML engines created after calling this function. A debug connector plugin specified by <i>pluginName</i> will be loaded and started using the given <i>configuration</i>. Supported configuration entries and their semantics depend on the plugin being loaded. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1252    ///
1253    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::startDebugConnector(const QString& pluginName)```</span>.
1254    ///
1255    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#startDebugConnector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. A debug connector plugin specified by <i>pluginName</i> will be loaded and started using the given <i>configuration</i>. Supported configuration entries and their semantics depend on the plugin being loaded. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1256    /// <p>This function was introduced in  Qt 5.7.</p></div>
1257    #[inline(always)]
1258    pub unsafe fn start_debug_connector_1a(
1259        plugin_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1260    ) -> bool {
1261        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_startDebugConnector1(
1262            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(plugin_name)
1263                .as_raw_ptr(),
1264        )
1265    }
1266
1267    /// <p>Enables debugging for QML engines created after calling this function. The debug connector will listen on <i>port</i> at <i>hostName</i> and block the QML engine until it receives a connection if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it won't block and if <i>hostName</i> is not specified it will listen on all available interfaces. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1268    ///
1269    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::startTcpDebugServer(int port, QQmlDebuggingEnabler::StartMode mode = …, const QString& hostName = …)```</span>.
1270    ///
1271    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#startTcpDebugServer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. The debug connector will listen on <i>port</i> at <i>hostName</i> and block the QML engine until it receives a connection if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it won't block and if <i>hostName</i> is not specified it will listen on all available interfaces. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p></div>
1272    #[inline(always)]
1273    pub unsafe fn start_tcp_debug_server_3a(
1274        port: ::std::os::raw::c_int,
1275        mode: crate::q_qml_debugging_enabler::StartMode,
1276        host_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1277    ) -> bool {
1278        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_startTcpDebugServer(
1279            port,
1280            mode,
1281            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(host_name)
1282                .as_raw_ptr(),
1283        )
1284    }
1285
1286    /// <p>Enables debugging for QML engines created after calling this function. The debug connector will listen on <i>port</i> at <i>hostName</i> and block the QML engine until it receives a connection if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it won't block and if <i>hostName</i> is not specified it will listen on all available interfaces. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1287    ///
1288    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::startTcpDebugServer(int port, QQmlDebuggingEnabler::StartMode mode = …)```</span>.
1289    ///
1290    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#startTcpDebugServer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. The debug connector will listen on <i>port</i> at <i>hostName</i> and block the QML engine until it receives a connection if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it won't block and if <i>hostName</i> is not specified it will listen on all available interfaces. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p></div>
1291    #[inline(always)]
1292    pub unsafe fn start_tcp_debug_server_2a(
1293        port: ::std::os::raw::c_int,
1294        mode: crate::q_qml_debugging_enabler::StartMode,
1295    ) -> bool {
1296        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_startTcpDebugServer1(port, mode)
1297    }
1298
1299    /// <p>Enables debugging for QML engines created after calling this function. The debug connector will listen on <i>port</i> at <i>hostName</i> and block the QML engine until it receives a connection if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it won't block and if <i>hostName</i> is not specified it will listen on all available interfaces. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p>
1300    ///
1301    /// Calls C++ function: <span style='color: green;'>```static bool QQmlDebuggingEnabler::startTcpDebugServer(int port)```</span>.
1302    ///
1303    /// <a href="http://doc.qt.io/qt-5/qqmldebuggingenabler.html#startTcpDebugServer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables debugging for QML engines created after calling this function. The debug connector will listen on <i>port</i> at <i>hostName</i> and block the QML engine until it receives a connection if <i>mode</i> is <code>WaitForClient</code>. If <i>mode</i> is not specified it won't block and if <i>hostName</i> is not specified it will listen on all available interfaces. You can only start one debug connector at a time. A debug connector may have already been started if the -qmljsdebugger= command line argument was given. This method returns <code>true</code> if a new debug connector was successfully started, or <code>false</code> otherwise.</p></div>
1304    #[inline(always)]
1305    pub unsafe fn start_tcp_debug_server_1a(port: ::std::os::raw::c_int) -> bool {
1306        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_startTcpDebugServer2(port)
1307    }
1308}
1309
1310pub mod q_j_s_engine {
1311    //! C++ type: <span style='color: green;'>```QJSEngine```</span>
1312
1313    /// <p>This enum is used to specify extensions to be installed via <a href="http://doc.qt.io/qt-5/qjsengine.html#installExtensions">installExtensions</a>().</p>
1314    ///
1315    /// C++ enum: <span style='color: green;'>```QJSEngine::Extension```</span>.
1316    ///
1317    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#Extension-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This enum is used to specify extensions to be installed via <a href="http://doc.qt.io/qt-5/qjsengine.html#installExtensions">installExtensions</a>().</p>
1318    ///
1319    /// <p><b>TranslationExtension</b></p>
1320    /// <p>The relation between script translation functions and C++ translation functions is described in the following table:</p>
1321    /// <div class="table"><table class="generic">
1322    ///  <thead><tr class="qt-style"><th>Script Function</th><th>Corresponding C++ Function</th></tr></thead>
1323    /// <tbody><tr valign="top" class="odd"><td>qsTr()</td><td><a href="http://doc.qt.io/qt-5/qobject.html#tr">QObject::tr</a>()</td></tr>
1324    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TR_NOOP">QT_TR_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TR_NOOP">QT_TR_NOOP</a>()</td></tr>
1325    /// <tr valign="top" class="odd"><td>qsTranslate()</td><td><a href="http://doc.qt.io/qt-5/qcoreapplication.html#translate">QCoreApplication::translate</a>()</td></tr>
1326    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TRANSLATE_NOOP">QT_TRANSLATE_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TRANSLATE_NOOP">QT_TRANSLATE_NOOP</a>()</td></tr>
1327    /// <tr valign="top" class="odd"><td>qsTrId()</td><td><a href="http://doc.qt.io/qt-5/#qtTrId">qtTrId</a>()</td></tr>
1328    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TRID_NOOP">QT_TRID_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TRID_NOOP">QT_TRID_NOOP</a>()</td></tr>
1329    /// </tbody></table></div>
1330    /// <p>This flag also adds an <code>arg()</code> function to the string prototype.</p>
1331    /// <p>For more information, see the <a href="http://doc.qt.io/qt-5/internationalization.html">Internationalization with Qt</a> documentation.</p>
1332    /// <p><b>ConsoleExtension</b></p>
1333    /// <p>The <a href="http://doc.qt.io/qt-5/qtquick-debugging.html#console-api">console</a> object implements a subset of the <a href="https://developer.mozilla.org/en-US/docs/Web/API/Console">Console API</a>, which provides familiar logging functions, such as <code>console.log()</code>.</p>
1334    /// <p>The list of functions added is as follows:</p>
1335    /// <ul>
1336    /// <li><code>console.assert()</code></li>
1337    /// <li><code>console.debug()</code></li>
1338    /// <li><code>console.exception()</code></li>
1339    /// <li><code>console.info()</code></li>
1340    /// <li><code>console.log()</code> (equivalent to <code>console.debug()</code>)</li>
1341    /// <li><code>console.error()</code></li>
1342    /// <li><code>console.time()</code></li>
1343    /// <li><code>console.timeEnd()</code></li>
1344    /// <li><code>console.trace()</code></li>
1345    /// <li><code>console.count()</code></li>
1346    /// <li><code>console.warn()</code></li>
1347    /// <li><code>print()</code> (equivalent to <code>console.debug()</code>)</li>
1348    /// </ul>
1349    /// <p>For more information, see the <a href="http://doc.qt.io/qt-5/qtquick-debugging.html#console-api">Console API</a> documentation.</p>
1350    /// <p><b>GarbageCollectionExtension</b></p>
1351    /// <p>The <code>gc()</code> function is equivalent to calling <a href="http://doc.qt.io/qt-5/qjsengine.html#collectGarbage">collectGarbage</a>().</p>
1352    /// <p>The Extensions type is a typedef for <a href="http://doc.qt.io/qt-5/qflags.html">QFlags</a>&lt;Extension&gt;. It stores an OR combination of Extension values.</p></div>
1353    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1354    #[repr(transparent)]
1355    pub struct Extension(::std::os::raw::c_int);
1356
1357    impl From<::std::os::raw::c_int> for Extension {
1358        fn from(value: ::std::os::raw::c_int) -> Self {
1359            Extension(value)
1360        }
1361    }
1362
1363    impl From<Extension> for ::std::os::raw::c_int {
1364        fn from(value: Extension) -> Self {
1365            value.0
1366        }
1367    }
1368
1369    impl Extension {
1370        pub fn to_int(&self) -> ::std::os::raw::c_int {
1371            self.0
1372        }
1373    }
1374
1375    impl Extension {
1376        /// Indicates that translation functions (<code>qsTr()</code>, for example) should be installed. (C++ enum variant: <span style='color: green;'>```TranslationExtension = 1```</span>)
1377        #[allow(non_upper_case_globals)]
1378        pub const TranslationExtension: crate::q_j_s_engine::Extension =
1379            crate::q_j_s_engine::Extension(1);
1380        /// Indicates that console functions (<code>console.log()</code>, for example) should be installed. (C++ enum variant: <span style='color: green;'>```ConsoleExtension = 2```</span>)
1381        #[allow(non_upper_case_globals)]
1382        pub const ConsoleExtension: crate::q_j_s_engine::Extension =
1383            crate::q_j_s_engine::Extension(2);
1384        /// Indicates that garbage collection functions (<code>gc()</code>, for example) should be installed. (C++ enum variant: <span style='color: green;'>```GarbageCollectionExtension = 4```</span>)
1385        #[allow(non_upper_case_globals)]
1386        pub const GarbageCollectionExtension: crate::q_j_s_engine::Extension =
1387            crate::q_j_s_engine::Extension(4);
1388        /// Indicates that all extension should be installed. (C++ enum variant: <span style='color: green;'>```AllExtensions = -1```</span>)
1389        #[allow(non_upper_case_globals)]
1390        pub const AllExtensions: crate::q_j_s_engine::Extension =
1391            crate::q_j_s_engine::Extension(-1);
1392    }
1393
1394    impl From<crate::q_j_s_engine::Extension> for ::qt_core::QFlags<crate::q_j_s_engine::Extension> {
1395        fn from(value: crate::q_j_s_engine::Extension) -> Self {
1396            Self::from(value.to_int())
1397        }
1398    }
1399
1400    impl<T: Into<::qt_core::QFlags<crate::q_j_s_engine::Extension>>> std::ops::BitOr<T>
1401        for crate::q_j_s_engine::Extension
1402    {
1403        type Output = ::qt_core::QFlags<crate::q_j_s_engine::Extension>;
1404        fn bitor(self, rhs: T) -> ::qt_core::QFlags<crate::q_j_s_engine::Extension> {
1405            Into::<::qt_core::QFlags<crate::q_j_s_engine::Extension>>::into(self) | rhs
1406        }
1407    }
1408}
1409/// <a name="evaluating-scripts"></a>
1410///
1411/// C++ class: <span style='color: green;'>```QJSEngine```</span>.
1412///
1413/// <a href="http://doc.qt.io/qt-5/qjsengine.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><a name="evaluating-scripts"></a></div>
1414#[repr(C)]
1415pub struct QJSEngine {
1416    _unused: u8,
1417}
1418impl QJSEngine {
1419    /// <p>Runs the garbage collector.</p>
1420    ///
1421    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::collectGarbage()```</span>.
1422    ///
1423    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#collectGarbage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Runs the garbage collector.</p>
1424    /// <p>The garbage collector will attempt to reclaim memory by locating and disposing of objects that are no longer reachable in the script environment.</p>
1425    /// <p>Normally you don't need to call this function; the garbage collector will automatically be invoked when the <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> decides that it's wise to do so (i.e. when a certain number of new objects have been created). However, you can call this function to explicitly request that garbage collection should be performed as soon as possible.</p></div>
1426    #[inline(always)]
1427    pub unsafe fn collect_garbage(&self) {
1428        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_collectGarbage(
1429            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1430        )
1431    }
1432
1433    /// <p>Evaluates <i>program</i>, using <i>lineNumber</i> as the base line number, and returns the result of the evaluation.</p>
1434    ///
1435    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::evaluate(const QString& program, const QString& fileName = …, int lineNumber = …)```</span>.
1436    ///
1437    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#evaluate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Evaluates <i>program</i>, using <i>lineNumber</i> as the base line number, and returns the result of the evaluation.</p>
1438    /// <p>The script code will be evaluated in the context of the global object.</p>
1439    /// <p>The evaluation of <i>program</i> can cause an <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">exception</a> in the engine; in this case the return value will be the exception that was thrown (typically an <code>Error</code> object; see <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>()).</p>
1440    /// <p><i>lineNumber</i> is used to specify a starting line number for <i>program</i>; line number information reported by the engine that pertains to this evaluation will be based on this argument. For example, if <i>program</i> consists of two lines of code, and the statement on the second line causes a script exception, the exception line number would be <i>lineNumber</i> plus one. When no starting line number is specified, line numbers will be 1-based.</p>
1441    /// <p><i>fileName</i> is used for error reporting. For example, in error objects the file name is accessible through the "fileName" property if it is provided with this function.</p>
1442    /// <p><b>Note: </b>If an exception was thrown and the exception value is not an Error instance (i.e., <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>() returns <code>false</code>), the exception value will still be returned, but there is currently no API for detecting that an exception did occur in this case.</p></div>
1443    #[inline(always)]
1444    pub unsafe fn evaluate_3a(
1445        &self,
1446        program: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1447        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1448        line_number: ::std::os::raw::c_int,
1449    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1450        let ffi_result = {
1451            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_evaluate(
1452                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1453                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(program)
1454                    .as_raw_ptr(),
1455                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
1456                    .as_raw_ptr(),
1457                line_number,
1458            )
1459        };
1460        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1461    }
1462
1463    /// <p>Evaluates <i>program</i>, using <i>lineNumber</i> as the base line number, and returns the result of the evaluation.</p>
1464    ///
1465    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::evaluate(const QString& program, const QString& fileName = …)```</span>.
1466    ///
1467    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#evaluate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Evaluates <i>program</i>, using <i>lineNumber</i> as the base line number, and returns the result of the evaluation.</p>
1468    /// <p>The script code will be evaluated in the context of the global object.</p>
1469    /// <p>The evaluation of <i>program</i> can cause an <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">exception</a> in the engine; in this case the return value will be the exception that was thrown (typically an <code>Error</code> object; see <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>()).</p>
1470    /// <p><i>lineNumber</i> is used to specify a starting line number for <i>program</i>; line number information reported by the engine that pertains to this evaluation will be based on this argument. For example, if <i>program</i> consists of two lines of code, and the statement on the second line causes a script exception, the exception line number would be <i>lineNumber</i> plus one. When no starting line number is specified, line numbers will be 1-based.</p>
1471    /// <p><i>fileName</i> is used for error reporting. For example, in error objects the file name is accessible through the "fileName" property if it is provided with this function.</p>
1472    /// <p><b>Note: </b>If an exception was thrown and the exception value is not an Error instance (i.e., <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>() returns <code>false</code>), the exception value will still be returned, but there is currently no API for detecting that an exception did occur in this case.</p></div>
1473    #[inline(always)]
1474    pub unsafe fn evaluate_2a(
1475        &self,
1476        program: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1477        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1478    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1479        let ffi_result = {
1480            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_evaluate1(
1481                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1482                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(program)
1483                    .as_raw_ptr(),
1484                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
1485                    .as_raw_ptr(),
1486            )
1487        };
1488        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1489    }
1490
1491    /// <p>Evaluates <i>program</i>, using <i>lineNumber</i> as the base line number, and returns the result of the evaluation.</p>
1492    ///
1493    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::evaluate(const QString& program)```</span>.
1494    ///
1495    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#evaluate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Evaluates <i>program</i>, using <i>lineNumber</i> as the base line number, and returns the result of the evaluation.</p>
1496    /// <p>The script code will be evaluated in the context of the global object.</p>
1497    /// <p>The evaluation of <i>program</i> can cause an <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">exception</a> in the engine; in this case the return value will be the exception that was thrown (typically an <code>Error</code> object; see <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>()).</p>
1498    /// <p><i>lineNumber</i> is used to specify a starting line number for <i>program</i>; line number information reported by the engine that pertains to this evaluation will be based on this argument. For example, if <i>program</i> consists of two lines of code, and the statement on the second line causes a script exception, the exception line number would be <i>lineNumber</i> plus one. When no starting line number is specified, line numbers will be 1-based.</p>
1499    /// <p><i>fileName</i> is used for error reporting. For example, in error objects the file name is accessible through the "fileName" property if it is provided with this function.</p>
1500    /// <p><b>Note: </b>If an exception was thrown and the exception value is not an Error instance (i.e., <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>() returns <code>false</code>), the exception value will still be returned, but there is currently no API for detecting that an exception did occur in this case.</p></div>
1501    #[inline(always)]
1502    pub unsafe fn evaluate_1a(
1503        &self,
1504        program: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1505    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1506        let ffi_result = {
1507            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_evaluate2(
1508                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1509                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(program)
1510                    .as_raw_ptr(),
1511            )
1512        };
1513        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1514    }
1515
1516    /// <p>Returns this engine's Global Object.</p>
1517    ///
1518    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::globalObject() const```</span>.
1519    ///
1520    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns this engine's Global Object.</p>
1521    /// <p>By default, the Global Object contains the built-in objects that are part of <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a>, such as Math, Date and String. Additionally, you can set properties of the Global Object to make your own extensions available to all script code. Non-local variables in script code will be created as properties of the Global Object, as well as local variables in global code.</p></div>
1522    #[inline(always)]
1523    pub unsafe fn global_object(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
1524        let ffi_result = {
1525            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_globalObject(self as *const crate::QJSEngine)
1526        };
1527        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1528    }
1529
1530    /// <p>Imports the module located at <i>fileName</i> and returns a module namespace object that contains all exported variables, constants and functions as properties.</p>
1531    ///
1532    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::importModule(const QString& fileName)```</span>.
1533    ///
1534    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#importModule">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Imports the module located at <i>fileName</i> and returns a module namespace object that contains all exported variables, constants and functions as properties.</p>
1535    /// <p>If this is the first time the module is imported in the engine, the file is loaded from the specified location in either the local file system or the Qt resource system and evaluated as an ECMAScript module. The file is expected to be encoded in UTF-8 text.</p>
1536    /// <p>Subsequent imports of the same module will return the previously imported instance. Modules are singletons and remain around until the engine is destroyed.</p>
1537    /// <p>The specified <i>fileName</i> will internally be normalized using <a href="http://doc.qt.io/qt-5/qfileinfo.html#canonicalFilePath">QFileInfo::canonicalFilePath</a>(). That means that multiple imports of the same file on disk using different relative paths will load the file only once.</p>
1538    /// <p><b>Note: </b>If an exception is thrown during the loading of the module, the return value will be the exception (typically an <code>Error</code> object; see <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>()).</p><p>This function was introduced in  Qt 5.12.</p></div>
1539    #[inline(always)]
1540    #[cfg_attr(
1541        feature = "ritual_rustdoc_nightly",
1542        doc(cfg(any(
1543            cpp_lib_version = "5.13.0",
1544            cpp_lib_version = "5.12.2",
1545            cpp_lib_version = "5.14.0"
1546        )))
1547    )]
1548    #[cfg(any(
1549        any(
1550            cpp_lib_version = "5.13.0",
1551            cpp_lib_version = "5.12.2",
1552            cpp_lib_version = "5.14.0"
1553        ),
1554        feature = "ritual_rustdoc"
1555    ))]
1556    pub unsafe fn import_module(
1557        &self,
1558        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1559    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1560        let ffi_result = {
1561            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_importModule(
1562                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1563                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
1564                    .as_raw_ptr(),
1565            )
1566        };
1567        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1568    }
1569
1570    /// <p>Installs JavaScript <i>extensions</i> to add functionality that is not available in a standard ECMAScript implementation.</p>
1571    ///
1572    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::installExtensions(QFlags<QJSEngine::Extension> extensions, const QJSValue& object = …)```</span>.
1573    ///
1574    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#installExtensions">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Installs JavaScript <i>extensions</i> to add functionality that is not available in a standard ECMAScript implementation.</p>
1575    /// <p>The extensions are installed on the given <i>object</i>, or on the <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">Global Object</a> if no object is specified.</p>
1576    /// <p>Several extensions can be installed at once by <code>OR</code>-ing the enum values:</p>
1577    /// <pre class="cpp">
1578    ///
1579    ///   installExtensions(<span class="type"><a href="http://doc.qt.io/qt-5/qjsengine.html#QJSEngine">QJSEngine</a></span><span class="operator">::</span>TranslationExtension <span class="operator">|</span> <span class="type"><a href="http://doc.qt.io/qt-5/qjsengine.html#QJSEngine">QJSEngine</a></span><span class="operator">::</span>ConsoleExtension);
1580    ///
1581    /// </pre>
1582    /// <p>This function was introduced in  Qt 5.6.</p>
1583    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#Extension-enum">Extension</a>.</p></div>
1584    #[inline(always)]
1585    pub unsafe fn install_extensions_2a(
1586        &self,
1587        extensions: ::qt_core::QFlags<crate::q_j_s_engine::Extension>,
1588        object: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
1589    ) {
1590        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_installExtensions(
1591            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1592            extensions.to_int(),
1593            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(object)
1594                .as_raw_ptr(),
1595        )
1596    }
1597
1598    /// <p>Installs JavaScript <i>extensions</i> to add functionality that is not available in a standard ECMAScript implementation.</p>
1599    ///
1600    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::installExtensions(QFlags<QJSEngine::Extension> extensions)```</span>.
1601    ///
1602    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#installExtensions">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Installs JavaScript <i>extensions</i> to add functionality that is not available in a standard ECMAScript implementation.</p>
1603    /// <p>The extensions are installed on the given <i>object</i>, or on the <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">Global Object</a> if no object is specified.</p>
1604    /// <p>Several extensions can be installed at once by <code>OR</code>-ing the enum values:</p>
1605    /// <pre class="cpp">
1606    ///
1607    ///   installExtensions(<span class="type"><a href="http://doc.qt.io/qt-5/qjsengine.html#QJSEngine">QJSEngine</a></span><span class="operator">::</span>TranslationExtension <span class="operator">|</span> <span class="type"><a href="http://doc.qt.io/qt-5/qjsengine.html#QJSEngine">QJSEngine</a></span><span class="operator">::</span>ConsoleExtension);
1608    ///
1609    /// </pre>
1610    /// <p>This function was introduced in  Qt 5.6.</p>
1611    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#Extension-enum">Extension</a>.</p></div>
1612    #[inline(always)]
1613    pub unsafe fn install_extensions_1a(
1614        &self,
1615        extensions: ::qt_core::QFlags<crate::q_j_s_engine::Extension>,
1616    ) {
1617        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_installExtensions1(
1618            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1619            extensions.to_int(),
1620        )
1621    }
1622
1623    /// <p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
1624    ///
1625    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::installTranslatorFunctions(const QJSValue& object = …)```</span>.
1626    ///
1627    /// <a href="http://doc.qt.io/qt-5/qjsengine-obsolete.html#installTranslatorFunctions">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
1628    /// <p>Installs translator functions on the given <i>object</i>, or on the Global Object if no object is specified.</p>
1629    /// <p>The relation between script translator functions and C++ translator functions is described in the following table:</p>
1630    /// <div class="table"><table class="generic">
1631    ///  <thead><tr class="qt-style"><th>Script Function</th><th>Corresponding C++ Function</th></tr></thead>
1632    /// <tbody><tr valign="top" class="odd"><td>qsTr()</td><td><a href="http://doc.qt.io/qt-5/qobject.html#tr">QObject::tr</a>()</td></tr>
1633    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TR_NOOP">QT_TR_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TR_NOOP">QT_TR_NOOP</a>()</td></tr>
1634    /// <tr valign="top" class="odd"><td>qsTranslate()</td><td><a href="http://doc.qt.io/qt-5/qcoreapplication.html#translate">QCoreApplication::translate</a>()</td></tr>
1635    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TRANSLATE_NOOP">QT_TRANSLATE_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TRANSLATE_NOOP">QT_TRANSLATE_NOOP</a>()</td></tr>
1636    /// <tr valign="top" class="odd"><td>qsTrId()</td><td><a href="http://doc.qt.io/qt-5/#qtTrId">qtTrId</a>()</td></tr>
1637    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TRID_NOOP">QT_TRID_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TRID_NOOP">QT_TRID_NOOP</a>()</td></tr>
1638    /// </tbody></table></div>
1639    /// <p>It also adds an arg() method to the string prototype.</p>
1640    /// <p>This function was introduced in  Qt 5.4.</p>
1641    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/internationalization.html">Internationalization with Qt</a>.</p></div>
1642    #[inline(always)]
1643    pub unsafe fn install_translator_functions_1a(
1644        &self,
1645        object: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
1646    ) {
1647        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_installTranslatorFunctions(
1648            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1649            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(object)
1650                .as_raw_ptr(),
1651        )
1652    }
1653
1654    /// <p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
1655    ///
1656    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::installTranslatorFunctions()```</span>.
1657    ///
1658    /// <a href="http://doc.qt.io/qt-5/qjsengine-obsolete.html#installTranslatorFunctions">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
1659    /// <p>Installs translator functions on the given <i>object</i>, or on the Global Object if no object is specified.</p>
1660    /// <p>The relation between script translator functions and C++ translator functions is described in the following table:</p>
1661    /// <div class="table"><table class="generic">
1662    ///  <thead><tr class="qt-style"><th>Script Function</th><th>Corresponding C++ Function</th></tr></thead>
1663    /// <tbody><tr valign="top" class="odd"><td>qsTr()</td><td><a href="http://doc.qt.io/qt-5/qobject.html#tr">QObject::tr</a>()</td></tr>
1664    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TR_NOOP">QT_TR_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TR_NOOP">QT_TR_NOOP</a>()</td></tr>
1665    /// <tr valign="top" class="odd"><td>qsTranslate()</td><td><a href="http://doc.qt.io/qt-5/qcoreapplication.html#translate">QCoreApplication::translate</a>()</td></tr>
1666    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TRANSLATE_NOOP">QT_TRANSLATE_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TRANSLATE_NOOP">QT_TRANSLATE_NOOP</a>()</td></tr>
1667    /// <tr valign="top" class="odd"><td>qsTrId()</td><td><a href="http://doc.qt.io/qt-5/#qtTrId">qtTrId</a>()</td></tr>
1668    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/#QT_TRID_NOOP">QT_TRID_NOOP</a>()</td><td><a href="http://doc.qt.io/qt-5/#QT_TRID_NOOP">QT_TRID_NOOP</a>()</td></tr>
1669    /// </tbody></table></div>
1670    /// <p>It also adds an arg() method to the string prototype.</p>
1671    /// <p>This function was introduced in  Qt 5.4.</p>
1672    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/internationalization.html">Internationalization with Qt</a>.</p></div>
1673    #[inline(always)]
1674    pub unsafe fn install_translator_functions_0a(&self) {
1675        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_installTranslatorFunctions1(
1676            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1677        )
1678    }
1679
1680    /// <p>Returns whether JavaScript execution is currently interrupted.</p>
1681    ///
1682    /// Calls C++ function: <span style='color: green;'>```bool QJSEngine::isInterrupted() const```</span>.
1683    ///
1684    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#isInterrupted">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether JavaScript execution is currently interrupted.</p>
1685    /// <p>This function was introduced in  Qt 5.14.</p>
1686    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#setInterrupted">setInterrupted</a>().</p></div>
1687    #[inline(always)]
1688    #[cfg_attr(
1689        feature = "ritual_rustdoc_nightly",
1690        doc(cfg(cpp_lib_version = "5.14.0"))
1691    )]
1692    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
1693    pub unsafe fn is_interrupted(&self) -> bool {
1694        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_isInterrupted(self as *const crate::QJSEngine)
1695    }
1696
1697    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QJSEngine::metaObject() const```</span>.
1698    #[inline(always)]
1699    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
1700        let ffi_result =
1701            { crate::__ffi::ctr_qt_qml_ffi_QJSEngine_metaObject(self as *const crate::QJSEngine) };
1702        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
1703    }
1704
1705    /// <p>Constructs a <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> object.</p>
1706    ///
1707    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSEngine::QJSEngine()```</span>.
1708    ///
1709    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#QJSEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> object.</p>
1710    /// <p>The <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">globalObject</a>() is initialized to have properties as described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a>, Section 15.1.</p></div>
1711    #[inline(always)]
1712    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QJSEngine> {
1713        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSEngine_QJSEngine() };
1714        ::qt_core::QBox::from_raw(ffi_result)
1715    }
1716
1717    /// <p>Constructs a <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> object with the given <i>parent</i>.</p>
1718    ///
1719    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSEngine::QJSEngine(QObject* parent)```</span>.
1720    ///
1721    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#QJSEngine-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> object with the given <i>parent</i>.</p>
1722    /// <p>The <a href="http://doc.qt.io/qt-5/qjsengine.html#globalObject">globalObject</a>() is initialized to have properties as described in <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm#">ECMA-262</a>, Section 15.1.</p></div>
1723    #[inline(always)]
1724    pub unsafe fn new_1a(
1725        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
1726    ) -> ::qt_core::QBox<crate::QJSEngine> {
1727        let ffi_result = {
1728            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_QJSEngine1(
1729                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
1730                    .as_raw_ptr() as *mut ::qt_core::QObject,
1731            )
1732        };
1733        ::qt_core::QBox::from_raw(ffi_result)
1734    }
1735
1736    /// <p>Creates a JavaScript object of class Array with the given <i>length</i>.</p>
1737    ///
1738    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newArray(unsigned int length = …)```</span>.
1739    ///
1740    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object of class Array with the given <i>length</i>.</p>
1741    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">newObject</a>().</p></div>
1742    #[inline(always)]
1743    pub unsafe fn new_array_1a(
1744        &self,
1745        length: ::std::os::raw::c_uint,
1746    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1747        let ffi_result = {
1748            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newArray(
1749                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1750                length,
1751            )
1752        };
1753        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1754    }
1755
1756    /// <p>Creates a JavaScript object of class Array with the given <i>length</i>.</p>
1757    ///
1758    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newArray()```</span>.
1759    ///
1760    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object of class Array with the given <i>length</i>.</p>
1761    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">newObject</a>().</p></div>
1762    #[inline(always)]
1763    pub unsafe fn new_array_0a(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
1764        let ffi_result = {
1765            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newArray1(
1766                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1767            )
1768        };
1769        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1770    }
1771
1772    /// <p>Creates a JavaScript object of class Error.</p>
1773    ///
1774    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newErrorObject(QJSValue::ErrorType errorType, const QString& message = …)```</span>.
1775    ///
1776    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newErrorObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object of class Error.</p>
1777    /// <p>The prototype of the created object will be <i>errorType</i>.</p>
1778    /// <p>This function was introduced in  Qt 5.12.</p>
1779    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">newObject</a>(), <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">throwError</a>(), and <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>().</p></div>
1780    #[inline(always)]
1781    #[cfg_attr(
1782        feature = "ritual_rustdoc_nightly",
1783        doc(cfg(any(
1784            cpp_lib_version = "5.13.0",
1785            cpp_lib_version = "5.12.2",
1786            cpp_lib_version = "5.14.0"
1787        )))
1788    )]
1789    #[cfg(any(
1790        any(
1791            cpp_lib_version = "5.13.0",
1792            cpp_lib_version = "5.12.2",
1793            cpp_lib_version = "5.14.0"
1794        ),
1795        feature = "ritual_rustdoc"
1796    ))]
1797    pub unsafe fn new_error_object_2a(
1798        &self,
1799        error_type: crate::q_j_s_value::ErrorType,
1800        message: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
1801    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1802        let ffi_result = {
1803            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newErrorObject(
1804                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1805                error_type,
1806                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(message)
1807                    .as_raw_ptr(),
1808            )
1809        };
1810        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1811    }
1812
1813    /// <p>Creates a JavaScript object of class Error.</p>
1814    ///
1815    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newErrorObject(QJSValue::ErrorType errorType)```</span>.
1816    ///
1817    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newErrorObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object of class Error.</p>
1818    /// <p>The prototype of the created object will be <i>errorType</i>.</p>
1819    /// <p>This function was introduced in  Qt 5.12.</p>
1820    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">newObject</a>(), <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">throwError</a>(), and <a href="http://doc.qt.io/qt-5/qjsvalue.html#isError">QJSValue::isError</a>().</p></div>
1821    #[inline(always)]
1822    #[cfg_attr(
1823        feature = "ritual_rustdoc_nightly",
1824        doc(cfg(any(
1825            cpp_lib_version = "5.13.0",
1826            cpp_lib_version = "5.12.2",
1827            cpp_lib_version = "5.14.0"
1828        )))
1829    )]
1830    #[cfg(any(
1831        any(
1832            cpp_lib_version = "5.13.0",
1833            cpp_lib_version = "5.12.2",
1834            cpp_lib_version = "5.14.0"
1835        ),
1836        feature = "ritual_rustdoc"
1837    ))]
1838    pub unsafe fn new_error_object_1a(
1839        &self,
1840        error_type: crate::q_j_s_value::ErrorType,
1841    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1842        let ffi_result = {
1843            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newErrorObject1(
1844                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1845                error_type,
1846            )
1847        };
1848        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1849    }
1850
1851    /// <p>Creates a JavaScript object of class Object.</p>
1852    ///
1853    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newObject()```</span>.
1854    ///
1855    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object of class Object.</p>
1856    /// <p>The prototype of the created object will be the Object prototype object.</p>
1857    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newArray">newArray</a>() and <a href="http://doc.qt.io/qt-5/qjsvalue.html#setProperty">QJSValue::setProperty</a>().</p></div>
1858    #[inline(always)]
1859    pub unsafe fn new_object(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
1860        let ffi_result = {
1861            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newObject(
1862                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1863            )
1864        };
1865        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1866    }
1867
1868    /// <p>Creates a JavaScript object that wraps the given <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> The <i>metaObject</i> must outlive the script engine. It is recommended to only use this method with static metaobjects.</p>
1869    ///
1870    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newQMetaObject(const QMetaObject* metaObject)```</span>.
1871    ///
1872    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newQMetaObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object that wraps the given <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> The <i>metaObject</i> must outlive the script engine. It is recommended to only use this method with static metaobjects.</p>
1873    /// <p>When called as a constructor, a new instance of the class will be created. Only constructors exposed by <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a> will be visible from the script engine.</p>
1874    /// <p>This function was introduced in  Qt 5.8.</p>
1875    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#newQObject">newQObject</a>() and <a href="http://doc.qt.io/qt-5/qjsengine.html#qobject-integration">QObject Integration</a>.</p></div>
1876    #[inline(always)]
1877    pub unsafe fn new_q_meta_object(
1878        &self,
1879        meta_object: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QMetaObject>>,
1880    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1881        let ffi_result = {
1882            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newQMetaObject(
1883                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1884                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QMetaObject>>::cast_into(
1885                    meta_object,
1886                )
1887                .as_raw_ptr(),
1888            )
1889        };
1890        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1891    }
1892
1893    /// <p>Creates a JavaScript object that wraps the given <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>object</i>, using JavaScriptOwnership.</p>
1894    ///
1895    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSEngine::newQObject(QObject* object)```</span>.
1896    ///
1897    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#newQObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a JavaScript object that wraps the given <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>object</i>, using JavaScriptOwnership.</p>
1898    /// <p>Signals and slots, properties and children of <i>object</i> are available as properties of the created <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
1899    /// <p>If <i>object</i> is a null pointer, this function returns a null value.</p>
1900    /// <p>If a default prototype has been registered for the <i>object</i>'s class (or its superclass, recursively), the prototype of the new script object will be set to be that default prototype.</p>
1901    /// <p>If the given <i>object</i> is deleted outside of the engine's control, any attempt to access the deleted <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>'s members through the JavaScript wrapper object (either by script code or C++) will result in a <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">script exception</a>.</p>
1902    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalue.html#toQObject">QJSValue::toQObject</a>().</p></div>
1903    #[inline(always)]
1904    pub unsafe fn new_q_object(
1905        &self,
1906        object: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
1907    ) -> ::cpp_core::CppBox<crate::QJSValue> {
1908        let ffi_result = {
1909            crate::__ffi::ctr_qt_qml_ffi_QJSEngine_newQObject(
1910                self as *const crate::QJSEngine as *mut crate::QJSEngine,
1911                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(object)
1912                    .as_raw_ptr() as *mut ::qt_core::QObject,
1913            )
1914        };
1915        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
1916    }
1917
1918    /// Calls C++ function: <span style='color: green;'>```virtual int QJSEngine::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
1919    #[inline(always)]
1920    pub unsafe fn qt_metacall(
1921        &self,
1922        arg1: ::qt_core::q_meta_object::Call,
1923        arg2: ::std::os::raw::c_int,
1924        arg3: *mut *mut ::std::ffi::c_void,
1925    ) -> ::std::os::raw::c_int {
1926        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_qt_metacall(
1927            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1928            arg1,
1929            arg2,
1930            arg3,
1931        )
1932    }
1933
1934    /// Calls C++ function: <span style='color: green;'>```virtual void* QJSEngine::qt_metacast(const char* arg1)```</span>.
1935    #[inline(always)]
1936    pub unsafe fn qt_metacast(
1937        &self,
1938        arg1: *const ::std::os::raw::c_char,
1939    ) -> *mut ::std::ffi::c_void {
1940        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_qt_metacast(
1941            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1942            arg1,
1943        )
1944    }
1945
1946    /// <p>Interrupts or re-enables JavaScript execution.</p>
1947    ///
1948    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::setInterrupted(bool interrupted)```</span>.
1949    ///
1950    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#setInterrupted">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Interrupts or re-enables JavaScript execution.</p>
1951    /// <p>If <i>interrupted</i> is <code>true</code>, any JavaScript executed by this engine immediately aborts and returns an error object until this function is called again with a value of <code>false</code> for <i>interrupted</i>.</p>
1952    /// <p>This function is thread safe. You may call it from a different thread in order to interrupt, for example, an infinite loop in JavaScript.</p>
1953    /// <p>This function was introduced in  Qt 5.14.</p>
1954    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#isInterrupted">isInterrupted</a>().</p></div>
1955    #[inline(always)]
1956    #[cfg_attr(
1957        feature = "ritual_rustdoc_nightly",
1958        doc(cfg(cpp_lib_version = "5.14.0"))
1959    )]
1960    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
1961    pub unsafe fn set_interrupted(&self, interrupted: bool) {
1962        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_setInterrupted(
1963            self as *const crate::QJSEngine as *mut crate::QJSEngine,
1964            interrupted,
1965        )
1966    }
1967
1968    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
1969    #[inline(always)]
1970    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
1971        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSEngine_staticMetaObject() };
1972        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
1973            .expect("attempted to construct a null Ref")
1974    }
1975
1976    /// <p>Throws a run-time error (exception) with the given <i>message</i>.</p>
1977    ///
1978    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::throwError(const QString& message)```</span>.
1979    ///
1980    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Throws a run-time error (exception) with the given <i>message</i>.</p>
1981    /// <p>This method is the C++ counterpart of a <code>throw()</code> expression in JavaScript. It enables C++ code to report run-time errors to <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a>. Therefore it should only be called from C++ code that was invoked by a JavaScript function through <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a>.</p>
1982    /// <p>When returning from C++, the engine will interrupt the normal flow of execution and call the the next pre-registered exception handler with an error object that contains the given <i>message</i>. The error object will point to the location of the top-most context on the JavaScript caller stack; specifically, it will have properties <code>lineNumber</code>, <code>fileName</code> and <code>stack</code>. These properties are described in <a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">Script Exceptions</a>.</p>
1983    /// <p>In the following example a C++ method in <i>FileAccess.cpp</i> throws an error in <i>qmlFile.qml</i> at the position where <code>readFileAsText()</code> is called:</p>
1984    /// <pre class="cpp">
1985    ///
1986    ///   <span class="comment">// qmlFile.qml</span>
1987    ///   function someFunction() {
1988    /// &#32;   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
1989    /// &#32;   var text <span class="operator">=</span> FileAccess<span class="operator">.</span>readFileAsText(<span class="string">"/path/to/file.txt"</span>);
1990    ///   }
1991    ///
1992    /// </pre>
1993    /// <pre class="cpp">
1994    ///
1995    ///   <span class="comment">// FileAccess.cpp</span>
1996    ///   <span class="comment">// Assuming that FileAccess is a QObject-derived class that has been</span>
1997    ///   <span class="comment">// registered as a singleton type and provides an invokable method</span>
1998    ///   <span class="comment">// readFileAsText()</span>
1999    ///
2000    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a></span> FileAccess<span class="operator">::</span>readFileAsText(<span class="keyword">const</span> <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> <span class="operator">&amp;</span> filePath) {
2001    /// &#32;   <span class="type"><a href="http://doc.qt.io/qt-5/qfile.html">QFile</a></span> file(filePath);
2002    ///
2003    /// &#32;   <span class="keyword">if</span> (<span class="operator">!</span>file<span class="operator">.</span>open(<span class="type"><a href="http://doc.qt.io/qt-5/qiodevice.html">QIODevice</a></span><span class="operator">::</span>ReadOnly)) {
2004    /// &#32;     jsEngine<span class="operator">-</span><span class="operator">&gt;</span>throwError(file<span class="operator">.</span>errorString());
2005    /// &#32;     <span class="keyword">return</span> <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span>();
2006    /// &#32;   }
2007    ///
2008    /// &#32;   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2009    /// &#32;   <span class="keyword">return</span> content;
2010    ///   }
2011    ///
2012    /// </pre>
2013    /// <p>It is also possible to catch the thrown error in JavaScript:</p>
2014    /// <pre class="cpp">
2015    ///
2016    ///   <span class="comment">// qmlFile.qml</span>
2017    ///   function someFunction() {
2018    /// &#32;   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2019    /// &#32;   var text;
2020    /// &#32;   <span class="keyword">try</span> {
2021    /// &#32;     text <span class="operator">=</span> FileAccess<span class="operator">.</span>readFileAsText(<span class="string">"/path/to/file.txt"</span>);
2022    /// &#32;   } <span class="keyword">catch</span> (error) {
2023    /// &#32;     console<span class="operator">.</span>warn(<span class="string">"In "</span> <span class="operator">+</span> error<span class="operator">.</span>fileName <span class="operator">+</span> <span class="string">":"</span> <span class="operator">+</span> <span class="string">"error.lineNumber"</span> <span class="operator">+</span>
2024    /// &#32;   &#32;   &#32;   &#32;      <span class="string">": "</span> <span class="operator">+</span> error<span class="operator">.</span>message);
2025    /// &#32;   }
2026    ///   }
2027    ///
2028    /// </pre>
2029    /// <p>If you need a more specific run-time error to describe an exception, you can use the <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError-1">throwError(QJSValue::ErrorType errorType, const QString &amp;message)</a> overload.</p>
2030    /// <p>This function was introduced in  Qt 5.12.</p>
2031    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">Script Exceptions</a>.</p></div>
2032    #[inline(always)]
2033    #[cfg_attr(
2034        feature = "ritual_rustdoc_nightly",
2035        doc(cfg(any(
2036            cpp_lib_version = "5.13.0",
2037            cpp_lib_version = "5.12.2",
2038            cpp_lib_version = "5.14.0"
2039        )))
2040    )]
2041    #[cfg(any(
2042        any(
2043            cpp_lib_version = "5.13.0",
2044            cpp_lib_version = "5.12.2",
2045            cpp_lib_version = "5.14.0"
2046        ),
2047        feature = "ritual_rustdoc"
2048    ))]
2049    pub unsafe fn throw_error_q_string(
2050        &self,
2051        message: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
2052    ) {
2053        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_throwError(
2054            self as *const crate::QJSEngine as *mut crate::QJSEngine,
2055            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(message)
2056                .as_raw_ptr(),
2057        )
2058    }
2059
2060    /// <p>This function overloads <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">throwError</a>().</p>
2061    ///
2062    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::throwError(QJSValue::ErrorType errorType, const QString& message = …)```</span>.
2063    ///
2064    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function overloads <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">throwError</a>().</p>
2065    /// <p>Throws a run-time error (exception) with the given <i>errorType</i> and <i>message</i>.</p>
2066    /// <pre class="cpp">
2067    ///
2068    ///   <span class="comment">// Assuming that DataEntry is a QObject-derived class that has been</span>
2069    ///   <span class="comment">// registered as a singleton type and provides an invokable method</span>
2070    ///   <span class="comment">// setAge().</span>
2071    ///
2072    ///   <span class="type">void</span> DataEntry<span class="operator">::</span>setAge(<span class="type">int</span> age) {
2073    /// &#32;   <span class="keyword">if</span> (age <span class="operator">&lt;</span> <span class="number">0</span> <span class="operator">|</span><span class="operator">|</span> age <span class="operator">&gt;</span> <span class="number">200</span>) {
2074    /// &#32;     jsEngine<span class="operator">-</span><span class="operator">&gt;</span>throwError(<span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a></span><span class="operator">::</span>RangeError<span class="operator">,</span>
2075    /// &#32;   &#32;   &#32;   &#32;   &#32;   &#32;      <span class="string">"Age must be between 0 and 200"</span>);
2076    /// &#32;   }
2077    /// &#32;   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2078    ///   }
2079    ///
2080    /// </pre>
2081    /// <p>This function was introduced in  Qt 5.12.</p>
2082    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">Script Exceptions</a> and <a href="http://doc.qt.io/qt-5/qjsengine.html#newErrorObject">newErrorObject</a>().</p></div>
2083    #[inline(always)]
2084    #[cfg_attr(
2085        feature = "ritual_rustdoc_nightly",
2086        doc(cfg(any(
2087            cpp_lib_version = "5.13.0",
2088            cpp_lib_version = "5.12.2",
2089            cpp_lib_version = "5.14.0"
2090        )))
2091    )]
2092    #[cfg(any(
2093        any(
2094            cpp_lib_version = "5.13.0",
2095            cpp_lib_version = "5.12.2",
2096            cpp_lib_version = "5.14.0"
2097        ),
2098        feature = "ritual_rustdoc"
2099    ))]
2100    pub unsafe fn throw_error_error_type_q_string(
2101        &self,
2102        error_type: crate::q_j_s_value::ErrorType,
2103        message: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
2104    ) {
2105        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_throwError1(
2106            self as *const crate::QJSEngine as *mut crate::QJSEngine,
2107            error_type,
2108            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(message)
2109                .as_raw_ptr(),
2110        )
2111    }
2112
2113    /// <p>This function overloads <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">throwError</a>().</p>
2114    ///
2115    /// Calls C++ function: <span style='color: green;'>```void QJSEngine::throwError(QJSValue::ErrorType errorType)```</span>.
2116    ///
2117    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function overloads <a href="http://doc.qt.io/qt-5/qjsengine.html#throwError">throwError</a>().</p>
2118    /// <p>Throws a run-time error (exception) with the given <i>errorType</i> and <i>message</i>.</p>
2119    /// <pre class="cpp">
2120    ///
2121    ///   <span class="comment">// Assuming that DataEntry is a QObject-derived class that has been</span>
2122    ///   <span class="comment">// registered as a singleton type and provides an invokable method</span>
2123    ///   <span class="comment">// setAge().</span>
2124    ///
2125    ///   <span class="type">void</span> DataEntry<span class="operator">::</span>setAge(<span class="type">int</span> age) {
2126    /// &#32;   <span class="keyword">if</span> (age <span class="operator">&lt;</span> <span class="number">0</span> <span class="operator">|</span><span class="operator">|</span> age <span class="operator">&gt;</span> <span class="number">200</span>) {
2127    /// &#32;     jsEngine<span class="operator">-</span><span class="operator">&gt;</span>throwError(<span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a></span><span class="operator">::</span>RangeError<span class="operator">,</span>
2128    /// &#32;   &#32;   &#32;   &#32;   &#32;   &#32;      <span class="string">"Age must be between 0 and 200"</span>);
2129    /// &#32;   }
2130    /// &#32;   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2131    ///   }
2132    ///
2133    /// </pre>
2134    /// <p>This function was introduced in  Qt 5.12.</p>
2135    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsengine.html#script-exceptions">Script Exceptions</a> and <a href="http://doc.qt.io/qt-5/qjsengine.html#newErrorObject">newErrorObject</a>().</p></div>
2136    #[inline(always)]
2137    #[cfg_attr(
2138        feature = "ritual_rustdoc_nightly",
2139        doc(cfg(any(
2140            cpp_lib_version = "5.13.0",
2141            cpp_lib_version = "5.12.2",
2142            cpp_lib_version = "5.14.0"
2143        )))
2144    )]
2145    #[cfg(any(
2146        any(
2147            cpp_lib_version = "5.13.0",
2148            cpp_lib_version = "5.12.2",
2149            cpp_lib_version = "5.14.0"
2150        ),
2151        feature = "ritual_rustdoc"
2152    ))]
2153    pub unsafe fn throw_error_error_type(&self, error_type: crate::q_j_s_value::ErrorType) {
2154        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_throwError2(
2155            self as *const crate::QJSEngine as *mut crate::QJSEngine,
2156            error_type,
2157        )
2158    }
2159
2160    /// Calls C++ function: <span style='color: green;'>```static QString QJSEngine::tr(const char* s, const char* c, int n)```</span>.
2161    #[inline(always)]
2162    pub unsafe fn tr(
2163        s: *const ::std::os::raw::c_char,
2164        c: *const ::std::os::raw::c_char,
2165        n: ::std::os::raw::c_int,
2166    ) -> ::cpp_core::CppBox<::qt_core::QString> {
2167        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSEngine_tr(s, c, n) };
2168        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2169    }
2170
2171    /// Calls C++ function: <span style='color: green;'>```static QString QJSEngine::trUtf8(const char* s, const char* c, int n)```</span>.
2172    #[inline(always)]
2173    pub unsafe fn tr_utf8(
2174        s: *const ::std::os::raw::c_char,
2175        c: *const ::std::os::raw::c_char,
2176        n: ::std::os::raw::c_int,
2177    ) -> ::cpp_core::CppBox<::qt_core::QString> {
2178        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QJSEngine_trUtf8(s, c, n) };
2179        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2180    }
2181}
2182
2183/// <p>The <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> constructor takes a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as argument. After construction, the iterator is located at the very beginning of the sequence of properties. Here's how to iterate over all the properties of a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>:</p>
2184///
2185/// C++ class: <span style='color: green;'>```QJSValueIterator```</span>.
2186///
2187/// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> constructor takes a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a> as argument. After construction, the iterator is located at the very beginning of the sequence of properties. Here's how to iterate over all the properties of a <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>:</p>
2188/// <pre class="cpp">
2189///
2190///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a></span> object;
2191///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2192///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#QJSValueIterator">QJSValueIterator</a></span> it(object);
2193///   <span class="keyword">while</span> (it<span class="operator">.</span>hasNext()) {
2194/// &#32;     it<span class="operator">.</span>next();
2195/// &#32;     <a href="http://doc.qt.io/qt-5/#qDebug">qDebug</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> it<span class="operator">.</span>name() <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">": "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> it<span class="operator">.</span>value()<span class="operator">.</span>toString();
2196///   }
2197///
2198/// </pre>
2199/// <p>The <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">next</a>() advances the iterator. The <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#name">name</a>() and <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#value">value</a>() functions return the name and value of the last item that was jumped over.</p>
2200/// <p>Note that <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html">QJSValueIterator</a> only iterates over the <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>'s own properties; i.e. it does not follow the prototype chain. You can use a loop like this to follow the prototype chain:</p>
2201/// <pre class="cpp">
2202///
2203///   <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a></span> obj <span class="operator">=</span> <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>; <span class="comment">// the object to iterate over</span>
2204///   <span class="keyword">while</span> (obj<span class="operator">.</span>isObject()) {
2205/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#QJSValueIterator">QJSValueIterator</a></span> it(obj);
2206/// &#32;     <span class="keyword">while</span> (it<span class="operator">.</span>hasNext()) {
2207/// &#32;   &#32;     it<span class="operator">.</span>next();
2208/// &#32;   &#32;     <a href="http://doc.qt.io/qt-5/#qDebug">qDebug</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> it<span class="operator">.</span>name();
2209/// &#32;     }
2210/// &#32;     obj <span class="operator">=</span> obj<span class="operator">.</span>prototype();
2211///   }
2212///
2213/// </pre></div>
2214#[repr(C)]
2215pub struct QJSValueIterator {
2216    _unused: u8,
2217}
2218impl QJSValueIterator {
2219    /// <p>Makes the iterator operate on <i>object</i>. The iterator is set to be at the front of the sequence of properties (before the first property).</p>
2220    ///
2221    /// Calls C++ function: <span style='color: green;'>```QJSValueIterator& QJSValueIterator::operator=(QJSValue& value)```</span>.
2222    ///
2223    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Makes the iterator operate on <i>object</i>. The iterator is set to be at the front of the sequence of properties (before the first property).</p></div>
2224    #[inline(always)]
2225    pub unsafe fn copy_from(
2226        &self,
2227        value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
2228    ) -> ::cpp_core::Ref<crate::QJSValueIterator> {
2229        let ffi_result = {
2230            crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_operator_(
2231                self as *const crate::QJSValueIterator as *mut crate::QJSValueIterator,
2232                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(value)
2233                    .as_raw_ptr() as *mut crate::QJSValue,
2234            )
2235        };
2236        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
2237    }
2238
2239    /// <p>Returns true if there is at least one item ahead of the iterator (i.e. the iterator is <i>not</i> at the back of the property sequence); otherwise returns false.</p>
2240    ///
2241    /// Calls C++ function: <span style='color: green;'>```bool QJSValueIterator::hasNext() const```</span>.
2242    ///
2243    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#hasNext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if there is at least one item ahead of the iterator (i.e. the iterator is <i>not</i> at the back of the property sequence); otherwise returns false.</p>
2244    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">next</a>().</p></div>
2245    #[inline(always)]
2246    pub unsafe fn has_next(&self) -> bool {
2247        crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_hasNext(
2248            self as *const crate::QJSValueIterator,
2249        )
2250    }
2251
2252    /// <p>Returns the name of the last property that was jumped over using <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">next</a>().</p>
2253    ///
2254    /// Calls C++ function: <span style='color: green;'>```QString QJSValueIterator::name() const```</span>.
2255    ///
2256    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#name">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the name of the last property that was jumped over using <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">next</a>().</p>
2257    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#value">value</a>().</p></div>
2258    #[inline(always)]
2259    pub unsafe fn name(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
2260        let ffi_result = {
2261            crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_name(
2262                self as *const crate::QJSValueIterator,
2263            )
2264        };
2265        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2266    }
2267
2268    /// <p>Constructs an iterator for traversing <i>object</i>. The iterator is set to be at the front of the sequence of properties (before the first property).</p>
2269    ///
2270    /// Calls C++ function: <span style='color: green;'>```[constructor] void QJSValueIterator::QJSValueIterator(const QJSValue& value)```</span>.
2271    ///
2272    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#QJSValueIterator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an iterator for traversing <i>object</i>. The iterator is set to be at the front of the sequence of properties (before the first property).</p></div>
2273    #[inline(always)]
2274    pub unsafe fn new(
2275        value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
2276    ) -> ::cpp_core::CppBox<crate::QJSValueIterator> {
2277        let ffi_result = {
2278            crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_QJSValueIterator(
2279                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(value)
2280                    .as_raw_ptr(),
2281            )
2282        };
2283        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2284    }
2285
2286    /// <p>Advances the iterator by one position. Returns true if there was at least one item ahead of the iterator (i.e. the iterator was <i>not</i> already at the back of the property sequence); otherwise returns false.</p>
2287    ///
2288    /// Calls C++ function: <span style='color: green;'>```bool QJSValueIterator::next()```</span>.
2289    ///
2290    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Advances the iterator by one position. Returns true if there was at least one item ahead of the iterator (i.e. the iterator was <i>not</i> already at the back of the property sequence); otherwise returns false.</p>
2291    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#hasNext">hasNext</a>() and <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#name">name</a>().</p></div>
2292    #[inline(always)]
2293    pub unsafe fn next(&self) -> bool {
2294        crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_next(
2295            self as *const crate::QJSValueIterator as *mut crate::QJSValueIterator,
2296        )
2297    }
2298
2299    /// <p>Returns the value of the last property that was jumped over using <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">next</a>().</p>
2300    ///
2301    /// Calls C++ function: <span style='color: green;'>```QJSValue QJSValueIterator::value() const```</span>.
2302    ///
2303    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value of the last property that was jumped over using <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#next">next</a>().</p>
2304    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#name">name</a>().</p></div>
2305    #[inline(always)]
2306    pub unsafe fn value(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
2307        let ffi_result = {
2308            crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_value(
2309                self as *const crate::QJSValueIterator,
2310            )
2311        };
2312        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2313    }
2314}
2315
2316/// <p><a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a> provides a mechanism for classes instantiated by a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to receive notification at key points in their creation.</p>
2317///
2318/// C++ class: <span style='color: green;'>```QQmlParserStatus```</span>.
2319///
2320/// <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a> provides a mechanism for classes instantiated by a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to receive notification at key points in their creation.</p>
2321/// <p>This class is often used for optimization purposes, as it allows you to defer an expensive operation until after all the properties have been set on an object. For example, QML's <a href="http://doc.qt.io/qt-5/qml-qtquick-text.html">Text</a> element uses the parser status to defer text layout until all of its properties have been set (we don't want to layout when the <code>text</code> is assigned, and then relayout when the <code>font</code> is assigned, and relayout again when the <code>width</code> is assigned, and so on).</p>
2322/// <p>Be aware that <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a> methods are only called when a class is instantiated by a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>. If you create the same class directly from C++, these methods will not be called automatically. To avoid this problem, it is recommended that you start deferring operations from <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html#classBegin">classBegin</a> instead of from the initial creation of your class. This will still prevent multiple revaluations during initial binding assignment in QML, but will not defer operations invoked from C++.</p>
2323/// <p>To use <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a>, you must inherit both a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>-derived class and <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a>, and use the <a href="http://doc.qt.io/qt-5/qobject.html#Q_INTERFACES">Q_INTERFACES</a>() macro.</p>
2324/// <pre class="cpp">
2325///
2326///   <span class="keyword">class</span> MyObject : <span class="keyword">public</span> <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span><span class="operator">,</span> <span class="keyword">public</span> <span class="type">QQmlParserStatus</span>
2327///   {
2328/// &#32;     Q_OBJECT
2329/// &#32;     Q_INTERFACES(<span class="type">QQmlParserStatus</span>)
2330///
2331///   <span class="keyword">public</span>:
2332/// &#32;     MyObject(<span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span> <span class="operator">*</span>parent <span class="operator">=</span> <span class="number">0</span>);
2333/// &#32;     <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2334/// &#32;     <span class="type">void</span> classBegin();
2335/// &#32;     <span class="type">void</span> componentComplete();
2336///   }
2337///
2338/// </pre></div>
2339#[repr(C)]
2340pub struct QQmlParserStatus {
2341    _unused: u8,
2342}
2343impl QQmlParserStatus {
2344    /// <p>Invoked after class creation, but before any properties have been set.</p>
2345    ///
2346    /// Calls C++ function: <span style='color: green;'>```pure virtual void QQmlParserStatus::classBegin()```</span>.
2347    ///
2348    /// <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html#classBegin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Invoked after class creation, but before any properties have been set.</p></div>
2349    #[inline(always)]
2350    pub unsafe fn class_begin(&self) {
2351        crate::__ffi::ctr_qt_qml_ffi_QQmlParserStatus_classBegin(
2352            self as *const crate::QQmlParserStatus as *mut crate::QQmlParserStatus,
2353        )
2354    }
2355
2356    /// <p>Invoked after the root component that caused this instantiation has completed construction. At this point all static values and binding values have been assigned to the class.</p>
2357    ///
2358    /// Calls C++ function: <span style='color: green;'>```pure virtual void QQmlParserStatus::componentComplete()```</span>.
2359    ///
2360    /// <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html#componentComplete">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Invoked after the root component that caused this instantiation has completed construction. At this point all static values and binding values have been assigned to the class.</p></div>
2361    #[inline(always)]
2362    pub unsafe fn component_complete(&self) {
2363        crate::__ffi::ctr_qt_qml_ffi_QQmlParserStatus_componentComplete(
2364            self as *const crate::QQmlParserStatus as *mut crate::QQmlParserStatus,
2365        )
2366    }
2367
2368    /// <p><a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a> provides a mechanism for classes instantiated by a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to receive notification at key points in their creation.</p>
2369    ///
2370    /// Calls C++ function: <span style='color: green;'>```QQmlParserStatus& QQmlParserStatus::operator=(const QQmlParserStatus& other)```</span>.
2371    ///
2372    /// <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a> provides a mechanism for classes instantiated by a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to receive notification at key points in their creation.</p>
2373    /// <p>This class is often used for optimization purposes, as it allows you to defer an expensive operation until after all the properties have been set on an object. For example, QML's <a href="http://doc.qt.io/qt-5/qml-qtquick-text.html">Text</a> element uses the parser status to defer text layout until all of its properties have been set (we don't want to layout when the <code>text</code> is assigned, and then relayout when the <code>font</code> is assigned, and relayout again when the <code>width</code> is assigned, and so on).</p>
2374    /// <p>Be aware that <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a> methods are only called when a class is instantiated by a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>. If you create the same class directly from C++, these methods will not be called automatically. To avoid this problem, it is recommended that you start deferring operations from <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html#classBegin">classBegin</a> instead of from the initial creation of your class. This will still prevent multiple revaluations during initial binding assignment in QML, but will not defer operations invoked from C++.</p>
2375    /// <p>To use <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a>, you must inherit both a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>-derived class and <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html">QQmlParserStatus</a>, and use the <a href="http://doc.qt.io/qt-5/qobject.html#Q_INTERFACES">Q_INTERFACES</a>() macro.</p>
2376    /// <pre class="cpp">
2377    ///
2378    ///   <span class="keyword">class</span> MyObject : <span class="keyword">public</span> <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span><span class="operator">,</span> <span class="keyword">public</span> <span class="type">QQmlParserStatus</span>
2379    ///   {
2380    /// &#32;     Q_OBJECT
2381    /// &#32;     Q_INTERFACES(<span class="type">QQmlParserStatus</span>)
2382    ///
2383    ///   <span class="keyword">public</span>:
2384    /// &#32;     MyObject(<span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span> <span class="operator">*</span>parent <span class="operator">=</span> <span class="number">0</span>);
2385    /// &#32;     <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
2386    /// &#32;     <span class="type">void</span> classBegin();
2387    /// &#32;     <span class="type">void</span> componentComplete();
2388    ///   }
2389    ///
2390    /// </pre></div>
2391    #[inline(always)]
2392    pub unsafe fn copy_from(
2393        &self,
2394        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlParserStatus>>,
2395    ) -> ::cpp_core::Ref<crate::QQmlParserStatus> {
2396        let ffi_result = {
2397            crate::__ffi::ctr_qt_qml_ffi_QQmlParserStatus_operator_(
2398                self as *const crate::QQmlParserStatus as *mut crate::QQmlParserStatus,
2399                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlParserStatus>>::cast_into(other)
2400                    .as_raw_ptr(),
2401            )
2402        };
2403        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
2404    }
2405}
2406
2407/// <p>See <a href="http://doc.qt.io/qt-5/qtqml-cppintegration-definetypes.html#property-value-sources">Property Value Sources</a> for information on writing custom property value sources.</p>
2408///
2409/// C++ class: <span style='color: green;'>```QQmlPropertyValueSource```</span>.
2410///
2411/// <a href="http://doc.qt.io/qt-5/qqmlpropertyvaluesource.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>See <a href="http://doc.qt.io/qt-5/qtqml-cppintegration-definetypes.html#property-value-sources">Property Value Sources</a> for information on writing custom property value sources.</p></div>
2412#[repr(C)]
2413pub struct QQmlPropertyValueSource {
2414    _unused: u8,
2415}
2416impl QQmlPropertyValueSource {
2417    /// <p>See <a href="http://doc.qt.io/qt-5/qtqml-cppintegration-definetypes.html#property-value-sources">Property Value Sources</a> for information on writing custom property value sources.</p>
2418    ///
2419    /// Calls C++ function: <span style='color: green;'>```QQmlPropertyValueSource& QQmlPropertyValueSource::operator=(const QQmlPropertyValueSource& other)```</span>.
2420    ///
2421    /// <a href="http://doc.qt.io/qt-5/qqmlpropertyvaluesource.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>See <a href="http://doc.qt.io/qt-5/qtqml-cppintegration-definetypes.html#property-value-sources">Property Value Sources</a> for information on writing custom property value sources.</p></div>
2422    #[inline(always)]
2423    pub unsafe fn copy_from(
2424        &self,
2425        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlPropertyValueSource>>,
2426    ) -> ::cpp_core::Ref<crate::QQmlPropertyValueSource> {
2427        let ffi_result = {
2428            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyValueSource_operator_(
2429                self as *const crate::QQmlPropertyValueSource
2430                    as *mut crate::QQmlPropertyValueSource,
2431                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlPropertyValueSource>>::cast_into(
2432                    other,
2433                )
2434                .as_raw_ptr(),
2435            )
2436        };
2437        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
2438    }
2439
2440    /// <p>Set the target <i>property</i> for the value source. This method will be called by the QML engine when assigning a value source.</p>
2441    ///
2442    /// Calls C++ function: <span style='color: green;'>```pure virtual void QQmlPropertyValueSource::setTarget(const QQmlProperty& arg1)```</span>.
2443    ///
2444    /// <a href="http://doc.qt.io/qt-5/qqmlpropertyvaluesource.html#setTarget">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the target <i>property</i> for the value source. This method will be called by the QML engine when assigning a value source.</p></div>
2445    #[inline(always)]
2446    pub unsafe fn set_target(
2447        &self,
2448        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlProperty>>,
2449    ) {
2450        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyValueSource_setTarget(
2451            self as *const crate::QQmlPropertyValueSource as *mut crate::QQmlPropertyValueSource,
2452            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlProperty>>::cast_into(arg1)
2453                .as_raw_ptr(),
2454        )
2455    }
2456}
2457
2458/// <p><a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> allows C++ programs to read from, and assign values to a QML list property in a simple and type-safe way. A <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> can be created by passing an object and property name or through a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> instance. These two are equivalent:</p>
2459///
2460/// C++ class: <span style='color: green;'>```QQmlListReference```</span>.
2461///
2462/// <a href="http://doc.qt.io/qt-5/qqmllistreference.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> allows C++ programs to read from, and assign values to a QML list property in a simple and type-safe way. A <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> can be created by passing an object and property name or through a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> instance. These two are equivalent:</p>
2463/// <pre class="cpp">
2464///
2465///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmllistreference.html#QQmlListReference">QQmlListReference</a></span> ref1(object<span class="operator">,</span> <span class="string">"children"</span>);
2466///
2467///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a></span> ref2(object<span class="operator">,</span> <span class="string">"children"</span>);
2468///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmllistreference.html#QQmlListReference">QQmlListReference</a></span> ref2 <span class="operator">=</span> qvariant_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qqmllistreference.html#QQmlListReference">QQmlListReference</a></span><span class="operator">&gt;</span>(ref2<span class="operator">.</span>read());
2469///
2470/// </pre>
2471/// <p>Not all QML list properties support all operations. A set of methods, <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canAppend">canAppend</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canAt">canAt</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canClear">canClear</a>() and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canCount">canCount</a>() allow programs to query whether an operation is supported on a given property.</p>
2472/// <p>QML list properties are type-safe. Only <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>'s that derive from the correct base class can be assigned to the list. The <a href="http://doc.qt.io/qt-5/qqmllistreference.html#listElementType">listElementType</a>() method can be used to query the <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> of the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> type supported. Attempting to add objects of the incorrect type to a list property will fail.</p>
2473/// <p>Like with normal lists, when accessing a list element by index, it is the callers responsibility to ensure that it does not request an out of range element using the <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>() method before calling <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>().</p></div>
2474#[repr(C)]
2475pub struct QQmlListReference {
2476    _unused: u8,
2477}
2478impl QQmlListReference {
2479    /// <p>Appends <i>object</i> to the list. Returns true if the operation succeeded, otherwise false.</p>
2480    ///
2481    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::append(QObject* arg1) const```</span>.
2482    ///
2483    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>object</i> to the list. Returns true if the operation succeeded, otherwise false.</p>
2484    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#canAppend">canAppend</a>().</p></div>
2485    #[inline(always)]
2486    pub unsafe fn append(
2487        &self,
2488        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
2489    ) -> bool {
2490        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_append(
2491            self as *const crate::QQmlListReference,
2492            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
2493                .as_raw_ptr() as *mut ::qt_core::QObject,
2494        )
2495    }
2496
2497    /// <p>Returns the list element at <i>index</i>, or 0 if the operation failed.</p>
2498    ///
2499    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlListReference::at(int arg1) const```</span>.
2500    ///
2501    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list element at <i>index</i>, or 0 if the operation failed.</p>
2502    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#canAt">canAt</a>().</p></div>
2503    #[inline(always)]
2504    pub unsafe fn at(&self, arg1: ::std::os::raw::c_int) -> ::qt_core::QPtr<::qt_core::QObject> {
2505        let ffi_result = {
2506            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_at(
2507                self as *const crate::QQmlListReference,
2508                arg1,
2509            )
2510        };
2511        ::qt_core::QPtr::from_raw(ffi_result)
2512    }
2513
2514    /// <p>Returns true if the list property can be appended to, otherwise false. Returns false if the reference is invalid.</p>
2515    ///
2516    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::canAppend() const```</span>.
2517    ///
2518    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canAppend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the list property can be appended to, otherwise false. Returns false if the reference is invalid.</p>
2519    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#append">append</a>().</p></div>
2520    #[inline(always)]
2521    pub unsafe fn can_append(&self) -> bool {
2522        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_canAppend(
2523            self as *const crate::QQmlListReference,
2524        )
2525    }
2526
2527    /// <p>Returns true if the list property can queried by index, otherwise false. Returns false if the reference is invalid.</p>
2528    ///
2529    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::canAt() const```</span>.
2530    ///
2531    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the list property can queried by index, otherwise false. Returns false if the reference is invalid.</p>
2532    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>().</p></div>
2533    #[inline(always)]
2534    pub unsafe fn can_at(&self) -> bool {
2535        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_canAt(
2536            self as *const crate::QQmlListReference,
2537        )
2538    }
2539
2540    /// <p>Returns true if the list property can be cleared, otherwise false. Returns false if the reference is invalid.</p>
2541    ///
2542    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::canClear() const```</span>.
2543    ///
2544    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canClear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the list property can be cleared, otherwise false. Returns false if the reference is invalid.</p>
2545    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#clear">clear</a>().</p></div>
2546    #[inline(always)]
2547    pub unsafe fn can_clear(&self) -> bool {
2548        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_canClear(
2549            self as *const crate::QQmlListReference,
2550        )
2551    }
2552
2553    /// <p>Returns true if the list property can be queried for its element count, otherwise false. Returns false if the reference is invalid.</p>
2554    ///
2555    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::canCount() const```</span>.
2556    ///
2557    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#canCount">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the list property can be queried for its element count, otherwise false. Returns false if the reference is invalid.</p>
2558    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>().</p></div>
2559    #[inline(always)]
2560    pub unsafe fn can_count(&self) -> bool {
2561        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_canCount(
2562            self as *const crate::QQmlListReference,
2563        )
2564    }
2565
2566    /// <p>Clears the list. Returns true if the operation succeeded, otherwise false.</p>
2567    ///
2568    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::clear() const```</span>.
2569    ///
2570    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clears the list. Returns true if the operation succeeded, otherwise false.</p>
2571    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#canClear">canClear</a>().</p></div>
2572    #[inline(always)]
2573    pub unsafe fn clear(&self) -> bool {
2574        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_clear(
2575            self as *const crate::QQmlListReference,
2576        )
2577    }
2578
2579    /// Calls C++ function: <span style='color: green;'>```QQmlListReference& QQmlListReference::operator=(const QQmlListReference& arg1)```</span>.
2580    #[inline(always)]
2581    pub unsafe fn copy_from(
2582        &self,
2583        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlListReference>>,
2584    ) -> ::cpp_core::Ref<crate::QQmlListReference> {
2585        let ffi_result = {
2586            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_operator_(
2587                self as *const crate::QQmlListReference as *mut crate::QQmlListReference,
2588                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlListReference>>::cast_into(arg1)
2589                    .as_raw_ptr(),
2590            )
2591        };
2592        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
2593    }
2594
2595    /// <p>Returns the number of objects in the list, or 0 if the operation failed.</p>
2596    ///
2597    /// Calls C++ function: <span style='color: green;'>```int QQmlListReference::count() const```</span>.
2598    ///
2599    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of objects in the list, or 0 if the operation failed.</p></div>
2600    #[inline(always)]
2601    pub unsafe fn count(&self) -> ::std::os::raw::c_int {
2602        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_count(
2603            self as *const crate::QQmlListReference,
2604        )
2605    }
2606
2607    /// <p>Return true if <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#clear">clear</a>() are implemented, so you can manipulate the list.</p>
2608    ///
2609    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::isManipulable() const```</span>.
2610    ///
2611    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#isManipulable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return true if <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#clear">clear</a>() are implemented, so you can manipulate the list.</p>
2612    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#isReadable">isReadable</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#append">append</a>(), and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#clear">clear</a>().</p></div>
2613    #[inline(always)]
2614    pub unsafe fn is_manipulable(&self) -> bool {
2615        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_isManipulable(
2616            self as *const crate::QQmlListReference,
2617        )
2618    }
2619
2620    /// <p>Return true if <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>() are implemented, so you can access the elements.</p>
2621    ///
2622    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::isReadable() const```</span>.
2623    ///
2624    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#isReadable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return true if <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>() are implemented, so you can access the elements.</p>
2625    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmllistreference.html#isManipulable">isManipulable</a>(), <a href="http://doc.qt.io/qt-5/qqmllistreference.html#at">at</a>(), and <a href="http://doc.qt.io/qt-5/qqmllistreference.html#count">count</a>().</p></div>
2626    #[inline(always)]
2627    pub unsafe fn is_readable(&self) -> bool {
2628        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_isReadable(
2629            self as *const crate::QQmlListReference,
2630        )
2631    }
2632
2633    /// <p>Returns true if the instance refers to a valid list property, otherwise false.</p>
2634    ///
2635    /// Calls C++ function: <span style='color: green;'>```bool QQmlListReference::isValid() const```</span>.
2636    ///
2637    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#isValid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the instance refers to a valid list property, otherwise false.</p></div>
2638    #[inline(always)]
2639    pub unsafe fn is_valid(&self) -> bool {
2640        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_isValid(
2641            self as *const crate::QQmlListReference,
2642        )
2643    }
2644
2645    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> for the elements stored in the list property, or <code>nullptr</code> if the reference is invalid.</p>
2646    ///
2647    /// Calls C++ function: <span style='color: green;'>```const QMetaObject* QQmlListReference::listElementType() const```</span>.
2648    ///
2649    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#listElementType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> for the elements stored in the list property, or <code>nullptr</code> if the reference is invalid.</p>
2650    /// <p>The <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> can be used ahead of time to determine whether a given instance can be added to a list.</p></div>
2651    #[inline(always)]
2652    pub unsafe fn list_element_type(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
2653        let ffi_result = {
2654            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_listElementType(
2655                self as *const crate::QQmlListReference,
2656            )
2657        };
2658        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
2659    }
2660
2661    /// <p>Constructs an invalid instance.</p>
2662    ///
2663    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlListReference::QQmlListReference()```</span>.
2664    ///
2665    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#QQmlListReference">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an invalid instance.</p></div>
2666    #[inline(always)]
2667    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QQmlListReference> {
2668        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_QQmlListReference() };
2669        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2670    }
2671
2672    /// <p>Constructs a <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> for <i>object</i>'s <i>property</i>. If <i>property</i> is not a list property, an invalid <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> is created. If <i>object</i> is destroyed after the reference is constructed, it will automatically become invalid. That is, it is safe to hold <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> instances even after <i>object</i> is deleted.</p>
2673    ///
2674    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlListReference::QQmlListReference(QObject* arg1, const char* property, QQmlEngine* arg3 = …)```</span>.
2675    ///
2676    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#QQmlListReference-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> for <i>object</i>'s <i>property</i>. If <i>property</i> is not a list property, an invalid <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> is created. If <i>object</i> is destroyed after the reference is constructed, it will automatically become invalid. That is, it is safe to hold <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> instances even after <i>object</i> is deleted.</p>
2677    /// <p>Passing <i>engine</i> is required to access some QML created list properties. If in doubt, and an engine is available, pass it.</p></div>
2678    #[inline(always)]
2679    pub unsafe fn new_3a(
2680        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
2681        property: *const ::std::os::raw::c_char,
2682        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
2683    ) -> ::cpp_core::CppBox<crate::QQmlListReference> {
2684        let ffi_result = {
2685            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_QQmlListReference1(
2686                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
2687                    .as_raw_ptr() as *mut ::qt_core::QObject,
2688                property,
2689                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg3)
2690                    .as_raw_ptr() as *mut crate::QQmlEngine,
2691            )
2692        };
2693        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2694    }
2695
2696    /// <p>Constructs a <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> for <i>object</i>'s <i>property</i>. If <i>property</i> is not a list property, an invalid <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> is created. If <i>object</i> is destroyed after the reference is constructed, it will automatically become invalid. That is, it is safe to hold <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> instances even after <i>object</i> is deleted.</p>
2697    ///
2698    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlListReference::QQmlListReference(QObject* arg1, const char* property)```</span>.
2699    ///
2700    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#QQmlListReference-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> for <i>object</i>'s <i>property</i>. If <i>property</i> is not a list property, an invalid <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> is created. If <i>object</i> is destroyed after the reference is constructed, it will automatically become invalid. That is, it is safe to hold <a href="http://doc.qt.io/qt-5/qqmllistreference.html">QQmlListReference</a> instances even after <i>object</i> is deleted.</p>
2701    /// <p>Passing <i>engine</i> is required to access some QML created list properties. If in doubt, and an engine is available, pass it.</p></div>
2702    #[inline(always)]
2703    pub unsafe fn new_2a(
2704        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
2705        property: *const ::std::os::raw::c_char,
2706    ) -> ::cpp_core::CppBox<crate::QQmlListReference> {
2707        let ffi_result = {
2708            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_QQmlListReference3(
2709                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
2710                    .as_raw_ptr() as *mut ::qt_core::QObject,
2711                property,
2712            )
2713        };
2714        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2715    }
2716
2717    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlListReference::QQmlListReference(const QQmlListReference& arg1)```</span>.
2718    #[inline(always)]
2719    pub unsafe fn new_copy(
2720        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlListReference>>,
2721    ) -> ::cpp_core::CppBox<crate::QQmlListReference> {
2722        let ffi_result = {
2723            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_QQmlListReference2(
2724                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlListReference>>::cast_into(arg1)
2725                    .as_raw_ptr(),
2726            )
2727        };
2728        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2729    }
2730
2731    /// <p>Returns the list property's object. Returns <code>nullptr</code> if the reference is invalid.</p>
2732    ///
2733    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlListReference::object() const```</span>.
2734    ///
2735    /// <a href="http://doc.qt.io/qt-5/qqmllistreference.html#object">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list property's object. Returns <code>nullptr</code> if the reference is invalid.</p></div>
2736    #[inline(always)]
2737    pub unsafe fn object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
2738        let ffi_result = {
2739            crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_object(
2740                self as *const crate::QQmlListReference,
2741            )
2742        };
2743        ::qt_core::QPtr::from_raw(ffi_result)
2744    }
2745}
2746
2747pub mod qt_qml;
2748pub mod q_qml_abstract_url_interceptor {
2749    //! C++ type: <span style='color: green;'>```QQmlAbstractUrlInterceptor```</span>
2750
2751    /// <p>Specifies where URL interception is taking place.</p>
2752    ///
2753    /// C++ enum: <span style='color: green;'>```QQmlAbstractUrlInterceptor::DataType```</span>.
2754    ///
2755    /// <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html#DataType-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies where URL interception is taking place.</p>
2756    /// <p>Because QML loads qmldir files for locating types, there are two URLs involved in loading a QML type. The URL of the (possibly implicit) qmldir used for locating the type and the URL of the file which defines the type. Intercepting both leads to either complex URL replacement or double URL replacements for the same file.</p></div>
2757    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
2758    #[repr(transparent)]
2759    pub struct DataType(::std::os::raw::c_int);
2760
2761    impl From<::std::os::raw::c_int> for DataType {
2762        fn from(value: ::std::os::raw::c_int) -> Self {
2763            DataType(value)
2764        }
2765    }
2766
2767    impl From<DataType> for ::std::os::raw::c_int {
2768        fn from(value: DataType) -> Self {
2769            value.0
2770        }
2771    }
2772
2773    impl DataType {
2774        pub fn to_int(&self) -> ::std::os::raw::c_int {
2775            self.0
2776        }
2777    }
2778
2779    impl DataType {
2780        /// The URL being intercepted is for a Qml file. Intercepting this, but not the Qmldir file, leaves the base dir of a QML file untouched and acts like replacing the file with another file. (C++ enum variant: <span style='color: green;'>```QmlFile = 0```</span>)
2781        #[allow(non_upper_case_globals)]
2782        pub const QmlFile: crate::q_qml_abstract_url_interceptor::DataType =
2783            crate::q_qml_abstract_url_interceptor::DataType(0);
2784        /// The URL being intercepted is an import for a Javascript file. (C++ enum variant: <span style='color: green;'>```JavaScriptFile = 1```</span>)
2785        #[allow(non_upper_case_globals)]
2786        pub const JavaScriptFile: crate::q_qml_abstract_url_interceptor::DataType =
2787            crate::q_qml_abstract_url_interceptor::DataType(1);
2788        /// The URL being intercepted is for a Qmldir file. Intercepting this, but not the QmlFile, allows for swapping out entire sub trees. (C++ enum variant: <span style='color: green;'>```QmldirFile = 2```</span>)
2789        #[allow(non_upper_case_globals)]
2790        pub const QmldirFile: crate::q_qml_abstract_url_interceptor::DataType =
2791            crate::q_qml_abstract_url_interceptor::DataType(2);
2792        /// The URL being intercepted is a url property in a QML file, and not being used to load a file through the engine. (C++ enum variant: <span style='color: green;'>```UrlString = 4096```</span>)
2793        #[allow(non_upper_case_globals)]
2794        pub const UrlString: crate::q_qml_abstract_url_interceptor::DataType =
2795            crate::q_qml_abstract_url_interceptor::DataType(4096);
2796    }
2797}
2798/// <p><a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> is an interface which can be used to alter URLs before they are used by the QML engine. This is primarily useful for altering file urls into other file urls, such as selecting different graphical assets for the current platform.</p>
2799///
2800/// C++ class: <span style='color: green;'>```QQmlAbstractUrlInterceptor```</span>.
2801///
2802/// <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> is an interface which can be used to alter URLs before they are used by the QML engine. This is primarily useful for altering file urls into other file urls, such as selecting different graphical assets for the current platform.</p>
2803/// <p>Relative URLs are intercepted after being resolved against the file path of the current QML context. URL interception also occurs after setting the base path for a loaded QML file. This means that the content loaded for that QML file uses the intercepted URL, but inside the file the pre-intercepted URL is used for resolving relative paths. This allows for interception of .qml file loading without needing all paths (or local types) inside intercepted content to insert a different relative path.</p>
2804/// <p>Compared to setNetworkAccessManagerFactory, <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> affects all URLs and paths, including local files and embedded resource files. <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> is synchronous, and for asynchronous files must return a url with an asynchronous scheme (such as http or a custom scheme handled by your own custom QNetworkAccessManager). You can use a <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> to change file URLs into networked URLs which are handled by your own custom QNetworkAccessManager.</p>
2805/// <p>To implement support for a custom networked scheme, see setNetworkAccessManagerFactory.</p></div>
2806#[repr(C)]
2807pub struct QQmlAbstractUrlInterceptor {
2808    _unused: u8,
2809}
2810impl QQmlAbstractUrlInterceptor {
2811    /// <p><a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> is an interface which can be used to alter URLs before they are used by the QML engine. This is primarily useful for altering file urls into other file urls, such as selecting different graphical assets for the current platform.</p>
2812    ///
2813    /// Calls C++ function: <span style='color: green;'>```QQmlAbstractUrlInterceptor& QQmlAbstractUrlInterceptor::operator=(const QQmlAbstractUrlInterceptor& other)```</span>.
2814    ///
2815    /// <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> is an interface which can be used to alter URLs before they are used by the QML engine. This is primarily useful for altering file urls into other file urls, such as selecting different graphical assets for the current platform.</p>
2816    /// <p>Relative URLs are intercepted after being resolved against the file path of the current QML context. URL interception also occurs after setting the base path for a loaded QML file. This means that the content loaded for that QML file uses the intercepted URL, but inside the file the pre-intercepted URL is used for resolving relative paths. This allows for interception of .qml file loading without needing all paths (or local types) inside intercepted content to insert a different relative path.</p>
2817    /// <p>Compared to setNetworkAccessManagerFactory, <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> affects all URLs and paths, including local files and embedded resource files. <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> is synchronous, and for asynchronous files must return a url with an asynchronous scheme (such as http or a custom scheme handled by your own custom QNetworkAccessManager). You can use a <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a> to change file URLs into networked URLs which are handled by your own custom QNetworkAccessManager.</p>
2818    /// <p>To implement support for a custom networked scheme, see setNetworkAccessManagerFactory.</p></div>
2819    #[inline(always)]
2820    pub unsafe fn copy_from(
2821        &self,
2822        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlAbstractUrlInterceptor>>,
2823    ) -> ::cpp_core::Ref<crate::QQmlAbstractUrlInterceptor> {
2824        let ffi_result = {
2825            crate::__ffi::ctr_qt_qml_ffi_QQmlAbstractUrlInterceptor_operator_(self as *const crate::QQmlAbstractUrlInterceptor as *mut crate::QQmlAbstractUrlInterceptor, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlAbstractUrlInterceptor>>::cast_into(other).as_raw_ptr())
2826        };
2827        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
2828    }
2829
2830    /// <p>A pure virtual function where you can intercept the <i>url</i>. The returned value is taken as the new value for the url. The type of url being intercepted is given by the <i>type</i> variable.</p>
2831    ///
2832    /// Calls C++ function: <span style='color: green;'>```pure virtual QUrl QQmlAbstractUrlInterceptor::intercept(const QUrl& path, QQmlAbstractUrlInterceptor::DataType type)```</span>.
2833    ///
2834    /// <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html#intercept">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A pure virtual function where you can intercept the <i>url</i>. The returned value is taken as the new value for the url. The type of url being intercepted is given by the <i>type</i> variable.</p>
2835    /// <p>Your implementation of this function must be thread-safe, as it can be called from multiple threads at the same time.</p></div>
2836    #[inline(always)]
2837    pub unsafe fn intercept(
2838        &self,
2839        path: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
2840        type_: crate::q_qml_abstract_url_interceptor::DataType,
2841    ) -> ::cpp_core::CppBox<::qt_core::QUrl> {
2842        let ffi_result = {
2843            crate::__ffi::ctr_qt_qml_ffi_QQmlAbstractUrlInterceptor_intercept(
2844                self as *const crate::QQmlAbstractUrlInterceptor
2845                    as *mut crate::QQmlAbstractUrlInterceptor,
2846                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(path)
2847                    .as_raw_ptr(),
2848                type_,
2849            )
2850        };
2851        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2852    }
2853}
2854
2855/// <p><a href="http://doc.qt.io/qt-5/qqmlerror.html">QQmlError</a> includes a textual description of the error, as well as location information (the file, line, and column). The <a href="http://doc.qt.io/qt-5/qqmlerror.html#toString">toString</a>() method creates a single-line, human-readable string containing all of this information, for example:</p>
2856///
2857/// C++ class: <span style='color: green;'>```QQmlError```</span>.
2858///
2859/// <a href="http://doc.qt.io/qt-5/qqmlerror.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlerror.html">QQmlError</a> includes a textual description of the error, as well as location information (the file, line, and column). The <a href="http://doc.qt.io/qt-5/qqmlerror.html#toString">toString</a>() method creates a single-line, human-readable string containing all of this information, for example:</p>
2860/// <pre class="cpp">
2861///
2862///   file:<span class="comment">///home/user/test.qml:7:8: Invalid property assignment: double expected</span>
2863///
2864/// </pre>
2865/// <p>You can use <a href="http://doc.qt.io/qt-5/#qDebug">qDebug</a>(), <a href="http://doc.qt.io/qt-5/#qInfo">qInfo</a>(), or <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>() to output errors to the console. This method will attempt to open the file indicated by the error and include additional contextual information.</p>
2866/// <pre class="cpp">
2867///
2868///   file:<span class="comment">///home/user/test.qml:7:8: Invalid property assignment: double expected</span>
2869/// &#32;   &#32;     y: <span class="string">"hello"</span>
2870/// &#32;   &#32;   &#32;    <span class="operator">^</span>
2871///
2872/// </pre></div>
2873#[repr(C)]
2874pub struct QQmlError {
2875    _unused: u8,
2876}
2877impl QQmlError {
2878    /// <p>Returns the error column number.</p>
2879    ///
2880    /// Calls C++ function: <span style='color: green;'>```int QQmlError::column() const```</span>.
2881    ///
2882    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#column">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the error column number.</p>
2883    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#setColumn">setColumn</a>().</p></div>
2884    #[inline(always)]
2885    pub unsafe fn column(&self) -> ::std::os::raw::c_int {
2886        crate::__ffi::ctr_qt_qml_ffi_QQmlError_column(self as *const crate::QQmlError)
2887    }
2888
2889    /// <p>Assigns <i>other</i> to this error object.</p>
2890    ///
2891    /// Calls C++ function: <span style='color: green;'>```QQmlError& QQmlError::operator=(const QQmlError& arg1)```</span>.
2892    ///
2893    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this error object.</p></div>
2894    #[inline(always)]
2895    pub unsafe fn copy_from(
2896        &self,
2897        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
2898    ) -> ::cpp_core::Ref<crate::QQmlError> {
2899        let ffi_result = {
2900            crate::__ffi::ctr_qt_qml_ffi_QQmlError_operator_(
2901                self as *const crate::QQmlError as *mut crate::QQmlError,
2902                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(arg1)
2903                    .as_raw_ptr(),
2904            )
2905        };
2906        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
2907    }
2908
2909    /// <p>Returns the error description.</p>
2910    ///
2911    /// Calls C++ function: <span style='color: green;'>```QString QQmlError::description() const```</span>.
2912    ///
2913    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#description">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the error description.</p>
2914    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#setDescription">setDescription</a>().</p></div>
2915    #[inline(always)]
2916    pub unsafe fn description(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
2917        let ffi_result =
2918            { crate::__ffi::ctr_qt_qml_ffi_QQmlError_description(self as *const crate::QQmlError) };
2919        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2920    }
2921
2922    /// <p>Returns true if this error is valid, otherwise false.</p>
2923    ///
2924    /// Calls C++ function: <span style='color: green;'>```bool QQmlError::isValid() const```</span>.
2925    ///
2926    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#isValid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this error is valid, otherwise false.</p></div>
2927    #[inline(always)]
2928    pub unsafe fn is_valid(&self) -> bool {
2929        crate::__ffi::ctr_qt_qml_ffi_QQmlError_isValid(self as *const crate::QQmlError)
2930    }
2931
2932    /// <p>Returns the error line number.</p>
2933    ///
2934    /// Calls C++ function: <span style='color: green;'>```int QQmlError::line() const```</span>.
2935    ///
2936    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#line">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the error line number.</p>
2937    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#setLine">setLine</a>().</p></div>
2938    #[inline(always)]
2939    pub unsafe fn line(&self) -> ::std::os::raw::c_int {
2940        crate::__ffi::ctr_qt_qml_ffi_QQmlError_line(self as *const crate::QQmlError)
2941    }
2942
2943    /// <p>Returns the message type.</p>
2944    ///
2945    /// Calls C++ function: <span style='color: green;'>```QtMsgType QQmlError::messageType() const```</span>.
2946    ///
2947    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#messageType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the message type.</p>
2948    /// <p>This function was introduced in  Qt 5.9.</p>
2949    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#setMessageType">setMessageType</a>().</p></div>
2950    #[inline(always)]
2951    pub unsafe fn message_type(&self) -> ::qt_core::QtMsgType {
2952        crate::__ffi::ctr_qt_qml_ffi_QQmlError_messageType(self as *const crate::QQmlError)
2953    }
2954
2955    /// <p>Creates an empty error object.</p>
2956    ///
2957    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlError::QQmlError()```</span>.
2958    ///
2959    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#QQmlError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates an empty error object.</p></div>
2960    #[inline(always)]
2961    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QQmlError> {
2962        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlError_QQmlError() };
2963        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2964    }
2965
2966    /// <p>Creates a copy of <i>other</i>.</p>
2967    ///
2968    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlError::QQmlError(const QQmlError& arg1)```</span>.
2969    ///
2970    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#QQmlError-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a copy of <i>other</i>.</p></div>
2971    #[inline(always)]
2972    pub unsafe fn new_copy(
2973        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
2974    ) -> ::cpp_core::CppBox<crate::QQmlError> {
2975        let ffi_result = {
2976            crate::__ffi::ctr_qt_qml_ffi_QQmlError_QQmlError1(
2977                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(arg1)
2978                    .as_raw_ptr(),
2979            )
2980        };
2981        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2982    }
2983
2984    /// <p>Returns the nearest object where this error occurred. Exceptions in bound property expressions set this to the object to which the property belongs. It will be 0 for all other exceptions.</p>
2985    ///
2986    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlError::object() const```</span>.
2987    ///
2988    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#object">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the nearest object where this error occurred. Exceptions in bound property expressions set this to the object to which the property belongs. It will be 0 for all other exceptions.</p>
2989    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#setObject">setObject</a>().</p></div>
2990    #[inline(always)]
2991    pub unsafe fn object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
2992        let ffi_result =
2993            { crate::__ffi::ctr_qt_qml_ffi_QQmlError_object(self as *const crate::QQmlError) };
2994        ::qt_core::QPtr::from_raw(ffi_result)
2995    }
2996
2997    /// <p>Sets the error <i>column</i> number.</p>
2998    ///
2999    /// Calls C++ function: <span style='color: green;'>```void QQmlError::setColumn(int arg1)```</span>.
3000    ///
3001    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#setColumn">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the error <i>column</i> number.</p>
3002    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#column">column</a>().</p></div>
3003    #[inline(always)]
3004    pub unsafe fn set_column(&self, arg1: ::std::os::raw::c_int) {
3005        crate::__ffi::ctr_qt_qml_ffi_QQmlError_setColumn(
3006            self as *const crate::QQmlError as *mut crate::QQmlError,
3007            arg1,
3008        )
3009    }
3010
3011    /// <p>Sets the error <i>description</i>.</p>
3012    ///
3013    /// Calls C++ function: <span style='color: green;'>```void QQmlError::setDescription(const QString& arg1)```</span>.
3014    ///
3015    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#setDescription">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the error <i>description</i>.</p>
3016    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#description">description</a>().</p></div>
3017    #[inline(always)]
3018    pub unsafe fn set_description(
3019        &self,
3020        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3021    ) {
3022        crate::__ffi::ctr_qt_qml_ffi_QQmlError_setDescription(
3023            self as *const crate::QQmlError as *mut crate::QQmlError,
3024            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg1)
3025                .as_raw_ptr(),
3026        )
3027    }
3028
3029    /// <p>Sets the error <i>line</i> number.</p>
3030    ///
3031    /// Calls C++ function: <span style='color: green;'>```void QQmlError::setLine(int arg1)```</span>.
3032    ///
3033    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#setLine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the error <i>line</i> number.</p>
3034    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#line">line</a>().</p></div>
3035    #[inline(always)]
3036    pub unsafe fn set_line(&self, arg1: ::std::os::raw::c_int) {
3037        crate::__ffi::ctr_qt_qml_ffi_QQmlError_setLine(
3038            self as *const crate::QQmlError as *mut crate::QQmlError,
3039            arg1,
3040        )
3041    }
3042
3043    /// <p>Sets the <i>messageType</i> for this message. The message type determines which <a href="http://doc.qt.io/qt-5/qdebug.html">QDebug</a> handlers are responsible for receiving the message.</p>
3044    ///
3045    /// Calls C++ function: <span style='color: green;'>```void QQmlError::setMessageType(QtMsgType messageType)```</span>.
3046    ///
3047    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#setMessageType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>messageType</i> for this message. The message type determines which <a href="http://doc.qt.io/qt-5/qdebug.html">QDebug</a> handlers are responsible for receiving the message.</p>
3048    /// <p>This function was introduced in  Qt 5.9.</p>
3049    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#messageType">messageType</a>().</p></div>
3050    #[inline(always)]
3051    pub unsafe fn set_message_type(&self, message_type: ::qt_core::QtMsgType) {
3052        crate::__ffi::ctr_qt_qml_ffi_QQmlError_setMessageType(
3053            self as *const crate::QQmlError as *mut crate::QQmlError,
3054            message_type,
3055        )
3056    }
3057
3058    /// <p>Sets the nearest <i>object</i> where this error occurred.</p>
3059    ///
3060    /// Calls C++ function: <span style='color: green;'>```void QQmlError::setObject(QObject* arg1)```</span>.
3061    ///
3062    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#setObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the nearest <i>object</i> where this error occurred.</p>
3063    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#object">object</a>().</p></div>
3064    #[inline(always)]
3065    pub unsafe fn set_object(
3066        &self,
3067        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
3068    ) {
3069        crate::__ffi::ctr_qt_qml_ffi_QQmlError_setObject(
3070            self as *const crate::QQmlError as *mut crate::QQmlError,
3071            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
3072                .as_raw_ptr() as *mut ::qt_core::QObject,
3073        )
3074    }
3075
3076    /// <p>Sets the <i>url</i> for the file that caused this error.</p>
3077    ///
3078    /// Calls C++ function: <span style='color: green;'>```void QQmlError::setUrl(const QUrl& arg1)```</span>.
3079    ///
3080    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#setUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>url</i> for the file that caused this error.</p>
3081    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#url">url</a>().</p></div>
3082    #[inline(always)]
3083    pub unsafe fn set_url(
3084        &self,
3085        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
3086    ) {
3087        crate::__ffi::ctr_qt_qml_ffi_QQmlError_setUrl(
3088            self as *const crate::QQmlError as *mut crate::QQmlError,
3089            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1).as_raw_ptr(),
3090        )
3091    }
3092
3093    /// <p>Returns the error as a human readable string.</p>
3094    ///
3095    /// Calls C++ function: <span style='color: green;'>```QString QQmlError::toString() const```</span>.
3096    ///
3097    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#toString">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the error as a human readable string.</p></div>
3098    #[inline(always)]
3099    pub unsafe fn to_string(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
3100        let ffi_result =
3101            { crate::__ffi::ctr_qt_qml_ffi_QQmlError_toString(self as *const crate::QQmlError) };
3102        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3103    }
3104
3105    /// <p>Returns the url for the file that caused this error.</p>
3106    ///
3107    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlError::url() const```</span>.
3108    ///
3109    /// <a href="http://doc.qt.io/qt-5/qqmlerror.html#url">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the url for the file that caused this error.</p>
3110    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlerror.html#setUrl">setUrl</a>().</p></div>
3111    #[inline(always)]
3112    pub unsafe fn url(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
3113        let ffi_result =
3114            { crate::__ffi::ctr_qt_qml_ffi_QQmlError_url(self as *const crate::QQmlError) };
3115        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3116    }
3117}
3118
3119pub mod q_qml_image_provider_base {
3120    //! C++ type: <span style='color: green;'>```QQmlImageProviderBase```</span>
3121
3122    /// <p>Defines the type of image supported by this image provider.</p>
3123    ///
3124    /// C++ enum: <span style='color: green;'>```QQmlImageProviderBase::ImageType```</span>.
3125    ///
3126    /// <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html#ImageType-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines the type of image supported by this image provider.</p></div>
3127    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
3128    #[repr(transparent)]
3129    pub struct ImageType(::std::os::raw::c_int);
3130
3131    impl From<::std::os::raw::c_int> for ImageType {
3132        fn from(value: ::std::os::raw::c_int) -> Self {
3133            ImageType(value)
3134        }
3135    }
3136
3137    impl From<ImageType> for ::std::os::raw::c_int {
3138        fn from(value: ImageType) -> Self {
3139            value.0
3140        }
3141    }
3142
3143    impl ImageType {
3144        pub fn to_int(&self) -> ::std::os::raw::c_int {
3145            self.0
3146        }
3147    }
3148
3149    impl ImageType {
3150        /// The Image Provider provides <a href="http://doc.qt.io/qt-5/qimage.html">QImage</a> images. The <a href="http://doc.qt.io/qt-5/qquickimageprovider.html#requestImage">QQuickImageProvider::requestImage</a>() method will be called for all image requests. (C++ enum variant: <span style='color: green;'>```Image = 0```</span>)
3151        #[allow(non_upper_case_globals)]
3152        pub const Image: crate::q_qml_image_provider_base::ImageType =
3153            crate::q_qml_image_provider_base::ImageType(0);
3154        /// The Image Provider provides <a href="http://doc.qt.io/qt-5/qpixmap.html">QPixmap</a> images. The <a href="http://doc.qt.io/qt-5/qquickimageprovider.html#requestPixmap">QQuickImageProvider::requestPixmap</a>() method will be called for all image requests. (C++ enum variant: <span style='color: green;'>```Pixmap = 1```</span>)
3155        #[allow(non_upper_case_globals)]
3156        pub const Pixmap: crate::q_qml_image_provider_base::ImageType =
3157            crate::q_qml_image_provider_base::ImageType(1);
3158        /// The Image Provider provides <a href="http://doc.qt.io/qt-5/qsgtextureprovider.html">QSGTextureProvider</a> based images. The <a href="http://doc.qt.io/qt-5/qquickimageprovider.html#requestTexture">QQuickImageProvider::requestTexture</a>() method will be called for all image requests. (C++ enum variant: <span style='color: green;'>```Texture = 2```</span>)
3159        #[allow(non_upper_case_globals)]
3160        pub const Texture: crate::q_qml_image_provider_base::ImageType =
3161            crate::q_qml_image_provider_base::ImageType(2);
3162        /// C++ enum variant: <span style='color: green;'>```Invalid = 3```</span>
3163        #[allow(non_upper_case_globals)]
3164        pub const Invalid: crate::q_qml_image_provider_base::ImageType =
3165            crate::q_qml_image_provider_base::ImageType(3);
3166        /// The Image provider provides <a href="http://doc.qt.io/qt-5/qquicktexturefactory.html">QQuickTextureFactory</a> based images. Should only be used in <a href="http://doc.qt.io/qt-5/qquickasyncimageprovider.html">QQuickAsyncImageProvider</a> or its subclasses. The <a href="http://doc.qt.io/qt-5/qquickasyncimageprovider.html#requestImageResponse">QQuickAsyncImageProvider::requestImageResponse</a>() method will be called for all image requests. Since Qt 5.6 (C++ enum variant: <span style='color: green;'>```ImageResponse = 4```</span>)
3167        #[allow(non_upper_case_globals)]
3168        pub const ImageResponse: crate::q_qml_image_provider_base::ImageType =
3169            crate::q_qml_image_provider_base::ImageType(4);
3170    }
3171
3172    /// <p>Defines specific requirements or features of this image provider.</p>
3173    ///
3174    /// C++ enum: <span style='color: green;'>```QQmlImageProviderBase::Flag```</span>.
3175    ///
3176    /// <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html#Flag-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines specific requirements or features of this image provider.</p>
3177    ///
3178    /// <p>The Flags type is a typedef for <a href="http://doc.qt.io/qt-5/qflags.html">QFlags</a>&lt;Flag&gt;. It stores an OR combination of Flag values.</p></div>
3179    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
3180    #[repr(transparent)]
3181    pub struct Flag(::std::os::raw::c_int);
3182
3183    impl From<::std::os::raw::c_int> for Flag {
3184        fn from(value: ::std::os::raw::c_int) -> Self {
3185            Flag(value)
3186        }
3187    }
3188
3189    impl From<Flag> for ::std::os::raw::c_int {
3190        fn from(value: Flag) -> Self {
3191            value.0
3192        }
3193    }
3194
3195    impl Flag {
3196        pub fn to_int(&self) -> ::std::os::raw::c_int {
3197            self.0
3198        }
3199    }
3200
3201    impl Flag {
3202        /// Ensures that image requests to the provider are run in a separate thread, which allows the provider to spend as much time as needed on producing the image without blocking the main thread. (C++ enum variant: <span style='color: green;'>```ForceAsynchronousImageLoading = 1```</span>)
3203        #[allow(non_upper_case_globals)]
3204        pub const ForceAsynchronousImageLoading: crate::q_qml_image_provider_base::Flag =
3205            crate::q_qml_image_provider_base::Flag(1);
3206    }
3207
3208    impl From<crate::q_qml_image_provider_base::Flag>
3209        for ::qt_core::QFlags<crate::q_qml_image_provider_base::Flag>
3210    {
3211        fn from(value: crate::q_qml_image_provider_base::Flag) -> Self {
3212            Self::from(value.to_int())
3213        }
3214    }
3215
3216    impl<T: Into<::qt_core::QFlags<crate::q_qml_image_provider_base::Flag>>> std::ops::BitOr<T>
3217        for crate::q_qml_image_provider_base::Flag
3218    {
3219        type Output = ::qt_core::QFlags<crate::q_qml_image_provider_base::Flag>;
3220        fn bitor(self, rhs: T) -> ::qt_core::QFlags<crate::q_qml_image_provider_base::Flag> {
3221            Into::<::qt_core::QFlags<crate::q_qml_image_provider_base::Flag>>::into(self) | rhs
3222        }
3223    }
3224}
3225/// <p>Image providers must be registered with the QML engine. The only information the QML engine knows about image providers is the type of image data they provide. To use an image provider to acquire image data, you must cast the <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">QQmlImageProviderBase</a> pointer to a <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a> pointer.</p>
3226///
3227/// C++ class: <span style='color: green;'>```QQmlImageProviderBase```</span>.
3228///
3229/// <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Image providers must be registered with the QML engine. The only information the QML engine knows about image providers is the type of image data they provide. To use an image provider to acquire image data, you must cast the <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">QQmlImageProviderBase</a> pointer to a <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a> pointer.</p></div>
3230#[repr(C)]
3231pub struct QQmlImageProviderBase {
3232    _unused: u8,
3233}
3234impl QQmlImageProviderBase {
3235    /// <p>Image providers must be registered with the QML engine. The only information the QML engine knows about image providers is the type of image data they provide. To use an image provider to acquire image data, you must cast the <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">QQmlImageProviderBase</a> pointer to a <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a> pointer.</p>
3236    ///
3237    /// Calls C++ function: <span style='color: green;'>```QQmlImageProviderBase& QQmlImageProviderBase::operator=(const QQmlImageProviderBase& other)```</span>.
3238    ///
3239    /// <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Image providers must be registered with the QML engine. The only information the QML engine knows about image providers is the type of image data they provide. To use an image provider to acquire image data, you must cast the <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">QQmlImageProviderBase</a> pointer to a <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a> pointer.</p></div>
3240    #[inline(always)]
3241    pub unsafe fn copy_from(
3242        &self,
3243        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlImageProviderBase>>,
3244    ) -> ::cpp_core::Ref<crate::QQmlImageProviderBase> {
3245        let ffi_result = {
3246            crate::__ffi::ctr_qt_qml_ffi_QQmlImageProviderBase_operator_(
3247                self as *const crate::QQmlImageProviderBase as *mut crate::QQmlImageProviderBase,
3248                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlImageProviderBase>>::cast_into(
3249                    other,
3250                )
3251                .as_raw_ptr(),
3252            )
3253        };
3254        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
3255    }
3256
3257    /// <p>Implement this to return the properties of this image provider.</p>
3258    ///
3259    /// Calls C++ function: <span style='color: green;'>```pure virtual QFlags<QQmlImageProviderBase::Flag> QQmlImageProviderBase::flags() const```</span>.
3260    ///
3261    /// <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html#flags">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Implement this to return the properties of this image provider.</p></div>
3262    #[inline(always)]
3263    pub unsafe fn flags(&self) -> ::qt_core::QFlags<crate::q_qml_image_provider_base::Flag> {
3264        let ffi_result = {
3265            crate::__ffi::ctr_qt_qml_ffi_QQmlImageProviderBase_flags(
3266                self as *const crate::QQmlImageProviderBase,
3267            )
3268        };
3269        ::qt_core::QFlags::from(ffi_result)
3270    }
3271
3272    /// <p>Implement this method to return the image type supported by this image provider.</p>
3273    ///
3274    /// Calls C++ function: <span style='color: green;'>```pure virtual QQmlImageProviderBase::ImageType QQmlImageProviderBase::imageType() const```</span>.
3275    ///
3276    /// <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html#imageType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Implement this method to return the image type supported by this image provider.</p></div>
3277    #[inline(always)]
3278    pub unsafe fn image_type(&self) -> crate::q_qml_image_provider_base::ImageType {
3279        crate::__ffi::ctr_qt_qml_ffi_QQmlImageProviderBase_imageType(
3280            self as *const crate::QQmlImageProviderBase,
3281        )
3282    }
3283}
3284
3285pub mod q_qml_engine {
3286    //! C++ type: <span style='color: green;'>```QQmlEngine```</span>
3287
3288    /// <p>ObjectOwnership controls whether or not QML automatically destroys the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> when the corresponding JavaScript object is garbage collected by the engine. The two ownership options are:</p>
3289    ///
3290    /// C++ enum: <span style='color: green;'>```QQmlEngine::ObjectOwnership```</span>.
3291    ///
3292    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#ObjectOwnership-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>ObjectOwnership controls whether or not QML automatically destroys the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> when the corresponding JavaScript object is garbage collected by the engine. The two ownership options are:</p>
3293    ///
3294    /// <p>Generally an application doesn't need to set an object's ownership explicitly. QML uses a heuristic to set the default ownership. By default, an object that is created by QML has JavaScriptOwnership. The exception to this are the root objects created by calling <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() or <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#beginCreate">QQmlComponent::beginCreate</a>(), which have CppOwnership by default. The ownership of these root-level objects is considered to have been transferred to the C++ caller.</p>
3295    /// <p>Objects not-created by QML have CppOwnership by default. The exception to this are objects returned from C++ method calls; their ownership will be set to JavaScriptOwnership. This applies only to explicit invocations of <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a> methods or slots, but not to property getter invocations.</p>
3296    /// <p>Calling <a href="http://doc.qt.io/qt-5/qqmlengine.html#setObjectOwnership">setObjectOwnership</a>() overrides the default ownership heuristic used by QML.</p></div>
3297    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
3298    #[repr(transparent)]
3299    pub struct ObjectOwnership(::std::os::raw::c_int);
3300
3301    impl From<::std::os::raw::c_int> for ObjectOwnership {
3302        fn from(value: ::std::os::raw::c_int) -> Self {
3303            ObjectOwnership(value)
3304        }
3305    }
3306
3307    impl From<ObjectOwnership> for ::std::os::raw::c_int {
3308        fn from(value: ObjectOwnership) -> Self {
3309            value.0
3310        }
3311    }
3312
3313    impl ObjectOwnership {
3314        pub fn to_int(&self) -> ::std::os::raw::c_int {
3315            self.0
3316        }
3317    }
3318
3319    impl ObjectOwnership {
3320        /// The object is owned by C++ code and QML will never delete it. The JavaScript destroy() method cannot be used on these objects. This option is similar to <a href="http://doc.qt.io/qt-5/qscriptengine.html#ValueOwnership-enum">QScriptEngine::QtOwnership</a>. (C++ enum variant: <span style='color: green;'>```CppOwnership = 0```</span>)
3321        #[allow(non_upper_case_globals)]
3322        pub const CppOwnership: crate::q_qml_engine::ObjectOwnership =
3323            crate::q_qml_engine::ObjectOwnership(0);
3324        /// The object is owned by JavaScript. When the object is returned to QML as the return value of a method call, QML will track it and delete it if there are no remaining JavaScript references to it and it has no <a href="http://doc.qt.io/qt-5/qobject.html#parent">QObject::parent</a>(). An object tracked by one <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> will be deleted during that <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>'s destructor. Thus, JavaScript references between objects with JavaScriptOwnership from two different engines will not be valid if one of these engines is deleted. This option is similar to <a href="http://doc.qt.io/qt-5/qscriptengine.html#ValueOwnership-enum">QScriptEngine::ScriptOwnership</a>. (C++ enum variant: <span style='color: green;'>```JavaScriptOwnership = 1```</span>)
3325        #[allow(non_upper_case_globals)]
3326        pub const JavaScriptOwnership: crate::q_qml_engine::ObjectOwnership =
3327            crate::q_qml_engine::ObjectOwnership(1);
3328    }
3329}
3330/// <p>Each QML component is instantiated in a <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>'s are essential for passing data to QML components. In QML, contexts are arranged hierarchically and this hierarchy is managed by the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p>
3331///
3332/// C++ class: <span style='color: green;'>```QQmlEngine```</span>.
3333///
3334/// <a href="http://doc.qt.io/qt-5/qqmlengine.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Each QML component is instantiated in a <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>'s are essential for passing data to QML components. In QML, contexts are arranged hierarchically and this hierarchy is managed by the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p>
3335/// <p>Prior to creating any QML components, an application must have created a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to gain access to a QML context. The following example shows how to create a simple Text item.</p>
3336/// <pre class="cpp">
3337///
3338///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html#QQmlEngine">QQmlEngine</a></span> engine;
3339///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a></span> component(<span class="operator">&amp;</span>engine);
3340///   component<span class="operator">.</span>setData(<span class="string">"import QtQuick 2.0\nText { text: \"Hello world!\" }"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>());
3341///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span>item <span class="operator">=</span> qobject_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span><span class="operator">&gt;</span>(component<span class="operator">.</span>create());
3342///
3343///   <span class="comment">//add item to view, etc</span>
3344///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
3345///
3346/// </pre>
3347/// <p>In this case, the Text item will be created in the engine's <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a>.</p></div>
3348#[repr(C)]
3349pub struct QQmlEngine {
3350    _unused: u8,
3351}
3352impl QQmlEngine {
3353    /// <p>Refreshes all binding expressions that use strings marked for translation.</p>
3354    ///
3355    /// Returns a built-in Qt slot `QQmlEngine::retranslate` that can be passed to `qt_core::Signal::connect`.
3356    ///
3357    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#retranslate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Refreshes all binding expressions that use strings marked for translation.</p>
3358    /// <p>Call this function after you have installed a new translator with <a href="http://doc.qt.io/qt-5/qcoreapplication.html#installTranslator">QCoreApplication::installTranslator</a>, to ensure that your user-interface shows up-to-date translations.</p>
3359    /// <p><b>Note: </b>Due to a limitation in the implementation, this function refreshes all the engine's bindings, not only those that use strings marked for translation. This may be optimized in a future release.</p><p>This function was introduced in  Qt 5.10.</p></div>
3360    #[inline(always)]
3361    pub fn slot_retranslate(&self) -> ::qt_core::Receiver<()> {
3362        unsafe {
3363            ::qt_core::Receiver::new(
3364                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3365                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1retranslate()\0"),
3366            )
3367        }
3368    }
3369
3370    /// <p>This signal is emitted when the QML loaded by the engine would like to quit.</p>
3371    ///
3372    /// Returns a built-in Qt signal `QQmlEngine::quit` that can be passed to `qt_core::Signal::connect`.
3373    ///
3374    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#quit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the QML loaded by the engine would like to quit.</p>
3375    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#exit">exit</a>().</p></div>
3376    #[inline(always)]
3377    pub fn quit(&self) -> ::qt_core::Signal<()> {
3378        unsafe {
3379            ::qt_core::Signal::new(
3380                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3381                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2quit()\0"),
3382            )
3383        }
3384    }
3385
3386    /// <p>This signal is emitted when the QML loaded by the engine would like to exit from the event loop with the specified return code <i>retCode</i>.</p>
3387    ///
3388    /// Returns a built-in Qt signal `QQmlEngine::exit` that can be passed to `qt_core::Signal::connect`.
3389    ///
3390    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#exit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the QML loaded by the engine would like to exit from the event loop with the specified return code <i>retCode</i>.</p>
3391    /// <p>This function was introduced in  Qt 5.8.</p>
3392    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#quit">quit</a>().</p></div>
3393    #[inline(always)]
3394    pub fn exit(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
3395        unsafe {
3396            ::qt_core::Signal::new(
3397                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3398                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2exit(int)\0"),
3399            )
3400        }
3401    }
3402
3403    /// <p>This signal is emitted when <i>warnings</i> messages are generated by QML.</p>
3404    ///
3405    /// Returns a built-in Qt signal `QQmlEngine::warnings` that can be passed to `qt_core::Signal::connect`.
3406    ///
3407    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#warnings">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when <i>warnings</i> messages are generated by QML.</p></div>
3408    #[inline(always)]
3409    pub fn warnings(&self) -> ::qt_core::Signal<(*const crate::QListOfQQmlError,)> {
3410        unsafe {
3411            ::qt_core::Signal::new(
3412                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3413                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
3414                    b"2warnings(QList< QQmlError > const &)\0",
3415                ),
3416            )
3417        }
3418    }
3419
3420    /// <p>Sets the <i>provider</i> to use for images requested via the <i>image</i>: url scheme, with host <i>providerId</i>. The <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> takes ownership of <i>provider</i>.</p>
3421    ///
3422    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::addImageProvider(const QString& id, QQmlImageProviderBase* arg2)```</span>.
3423    ///
3424    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#addImageProvider">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>provider</i> to use for images requested via the <i>image</i>: url scheme, with host <i>providerId</i>. The <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> takes ownership of <i>provider</i>.</p>
3425    /// <p>Image providers enable support for pixmap and threaded image requests. See the <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a> documentation for details on implementing and using image providers.</p>
3426    /// <p>All required image providers should be added to the engine before any QML sources files are loaded.</p>
3427    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#removeImageProvider">removeImageProvider</a>(), <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a>, and <a href="http://doc.qt.io/qt-5/qqmlimageproviderbase.html">QQmlImageProviderBase</a>.</p></div>
3428    #[inline(always)]
3429    pub unsafe fn add_image_provider(
3430        &self,
3431        id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3432        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlImageProviderBase>>,
3433    ) {
3434        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_addImageProvider(
3435            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3436            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(id).as_raw_ptr(),
3437            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlImageProviderBase>>::cast_into(arg2)
3438                .as_raw_ptr() as *mut crate::QQmlImageProviderBase,
3439        )
3440    }
3441
3442    /// <p>Adds <i>path</i> as a directory where the engine searches for installed modules in a URL-based directory structure.</p>
3443    ///
3444    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::addImportPath(const QString& dir)```</span>.
3445    ///
3446    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#addImportPath">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds <i>path</i> as a directory where the engine searches for installed modules in a URL-based directory structure.</p>
3447    /// <p>The <i>path</i> may be a local filesystem directory, a <a href="http://doc.qt.io/qt-5/resources.html">Qt Resource</a> path (<code>:/imports</code>), a <a href="http://doc.qt.io/qt-5/resources.html">Qt Resource</a> url (<code>qrc:/imports</code>) or a URL.</p>
3448    /// <p>The <i>path</i> will be converted into canonical form before it is added to the import path list.</p>
3449    /// <p>The newly added <i>path</i> will be first in the <a href="http://doc.qt.io/qt-5/qqmlengine.html#importPathList">importPathList</a>().</p>
3450    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setImportPathList">setImportPathList</a>() and <a href="http://doc.qt.io/qt-5/qtqml-modules-topic.html#">QML Modules</a>.</p></div>
3451    #[inline(always)]
3452    pub unsafe fn add_import_path(
3453        &self,
3454        dir: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3455    ) {
3456        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_addImportPath(
3457            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3458            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(dir)
3459                .as_raw_ptr(),
3460        )
3461    }
3462
3463    /// Calls C++ function: <span style='color: green;'>```bool QQmlEngine::addNamedBundle(const QString& name, const QString& fileName)```</span>.
3464    #[inline(always)]
3465    pub unsafe fn add_named_bundle(
3466        &self,
3467        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3468        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3469    ) -> bool {
3470        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_addNamedBundle(
3471            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3472            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
3473                .as_raw_ptr(),
3474            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
3475                .as_raw_ptr(),
3476        )
3477    }
3478
3479    /// <p>Adds <i>path</i> as a directory where the engine searches for native plugins for imported modules (referenced in the <code>qmldir</code> file).</p>
3480    ///
3481    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::addPluginPath(const QString& dir)```</span>.
3482    ///
3483    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#addPluginPath">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds <i>path</i> as a directory where the engine searches for native plugins for imported modules (referenced in the <code>qmldir</code> file).</p>
3484    /// <p>By default, the list contains only <code>.</code>, i.e. the engine searches in the directory of the <code>qmldir</code> file itself.</p>
3485    /// <p>The newly added <i>path</i> will be first in the <a href="http://doc.qt.io/qt-5/qqmlengine.html#pluginPathList">pluginPathList</a>().</p>
3486    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setPluginPathList">setPluginPathList</a>().</p></div>
3487    #[inline(always)]
3488    pub unsafe fn add_plugin_path(
3489        &self,
3490        dir: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3491    ) {
3492        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_addPluginPath(
3493            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3494            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(dir)
3495                .as_raw_ptr(),
3496        )
3497    }
3498
3499    /// <p>Return the base URL for this engine. The base URL is only used to resolve components when a relative URL is passed to the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> constructor.</p>
3500    ///
3501    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlEngine::baseUrl() const```</span>.
3502    ///
3503    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the base URL for this engine. The base URL is only used to resolve components when a relative URL is passed to the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> constructor.</p>
3504    /// <p>If a base URL has not been explicitly set, this method returns the application's current working directory.</p>
3505    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setBaseUrl">setBaseUrl</a>().</p></div>
3506    #[inline(always)]
3507    pub unsafe fn base_url(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
3508        let ffi_result =
3509            { crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_baseUrl(self as *const crate::QQmlEngine) };
3510        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3511    }
3512
3513    /// <p>Clears the engine's internal component cache.</p>
3514    ///
3515    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::clearComponentCache()```</span>.
3516    ///
3517    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#clearComponentCache">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clears the engine's internal component cache.</p>
3518    /// <p>This function causes the property metadata of all components previously loaded by the engine to be destroyed. All previously loaded components and the property bindings for all extant objects created from those components will cease to function.</p>
3519    /// <p>This function returns the engine to a state where it does not contain any loaded component data. This may be useful in order to reload a smaller subset of the previous component set, or to load a new version of a previously loaded component.</p>
3520    /// <p>Once the component cache has been cleared, components must be loaded before any new objects can be created.</p>
3521    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#trimComponentCache">trimComponentCache</a>().</p></div>
3522    #[inline(always)]
3523    pub unsafe fn clear_component_cache(&self) {
3524        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_clearComponentCache(
3525            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3526        )
3527    }
3528
3529    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> for the <i>object</i>, or 0 if no context has been set.</p>
3530    ///
3531    /// Calls C++ function: <span style='color: green;'>```static QQmlContext* QQmlEngine::contextForObject(const QObject* arg1)```</span>.
3532    ///
3533    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#contextForObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> for the <i>object</i>, or 0 if no context has been set.</p>
3534    /// <p>When the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> instantiates a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, the context is set automatically.</p>
3535    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setContextForObject">setContextForObject</a>(), <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlContext">qmlContext</a>(), and <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlEngine">qmlEngine</a>().</p></div>
3536    #[inline(always)]
3537    pub unsafe fn context_for_object(
3538        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
3539    ) -> ::qt_core::QPtr<crate::QQmlContext> {
3540        let ffi_result = {
3541            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_contextForObject(
3542                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
3543                    .as_raw_ptr(),
3544            )
3545        };
3546        ::qt_core::QPtr::from_raw(ffi_result)
3547    }
3548
3549    /// <p>Returns the image provider set for <i>providerId</i> if found; otherwise returns <code>nullptr</code>.</p>
3550    ///
3551    /// Calls C++ function: <span style='color: green;'>```QQmlImageProviderBase* QQmlEngine::imageProvider(const QString& id) const```</span>.
3552    ///
3553    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#imageProvider">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the image provider set for <i>providerId</i> if found; otherwise returns <code>nullptr</code>.</p>
3554    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a>.</p></div>
3555    #[inline(always)]
3556    pub unsafe fn image_provider(
3557        &self,
3558        id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3559    ) -> ::cpp_core::Ptr<crate::QQmlImageProviderBase> {
3560        let ffi_result = {
3561            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_imageProvider(
3562                self as *const crate::QQmlEngine,
3563                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(id)
3564                    .as_raw_ptr(),
3565            )
3566        };
3567        ::cpp_core::Ptr::from_raw(ffi_result)
3568    }
3569
3570    /// <p>Returns the list of directories where the engine searches for installed modules in a URL-based directory structure.</p>
3571    ///
3572    /// Calls C++ function: <span style='color: green;'>```QStringList QQmlEngine::importPathList() const```</span>.
3573    ///
3574    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#importPathList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of directories where the engine searches for installed modules in a URL-based directory structure.</p>
3575    /// <p>For example, if <code>/opt/MyApp/lib/imports</code> is in the path, then QML that imports <code>com.mycompany.Feature</code> will cause the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to look in <code>/opt/MyApp/lib/imports/com/mycompany/Feature/</code> for the components provided by that module. A <code>qmldir</code> file is required for defining the type version mapping and possibly QML extensions plugins.</p>
3576    /// <p>By default, the list contains the directory of the application executable, paths specified in the <code>QML2_IMPORT_PATH</code> environment variable, and the builtin <code>Qml2ImportsPath</code> from <a href="http://doc.qt.io/qt-5/qlibraryinfo.html">QLibraryInfo</a>.</p>
3577    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#addImportPath">addImportPath</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#setImportPathList">setImportPathList</a>().</p></div>
3578    #[inline(always)]
3579    pub unsafe fn import_path_list(&self) -> ::cpp_core::CppBox<::qt_core::QStringList> {
3580        let ffi_result = {
3581            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_importPathList(self as *const crate::QQmlEngine)
3582        };
3583        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3584    }
3585
3586    /// <p>Imports the plugin named <i>filePath</i> with the <i>uri</i> provided. Returns true if the plugin was successfully imported; otherwise returns false.</p>
3587    ///
3588    /// Calls C++ function: <span style='color: green;'>```bool QQmlEngine::importPlugin(const QString& filePath, const QString& uri, QList<QQmlError>* errors)```</span>.
3589    ///
3590    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#importPlugin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Imports the plugin named <i>filePath</i> with the <i>uri</i> provided. Returns true if the plugin was successfully imported; otherwise returns false.</p>
3591    /// <p>On failure and if non-null, the <i>errors</i> list will have any errors which occurred prepended to it.</p>
3592    /// <p>The plugin has to be a Qt plugin which implements the <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html">QQmlExtensionPlugin</a> interface.</p></div>
3593    #[inline(always)]
3594    pub unsafe fn import_plugin(
3595        &self,
3596        file_path: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3597        uri: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3598        errors: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QListOfQQmlError>>,
3599    ) -> bool {
3600        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_importPlugin(
3601            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3602            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_path)
3603                .as_raw_ptr(),
3604            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(uri)
3605                .as_raw_ptr(),
3606            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QListOfQQmlError>>::cast_into(errors)
3607                .as_raw_ptr() as *mut crate::QListOfQQmlError,
3608        )
3609    }
3610
3611    /// <p>Returns the currently set incubation controller, or 0 if no controller has been set.</p>
3612    ///
3613    /// Calls C++ function: <span style='color: green;'>```QQmlIncubationController* QQmlEngine::incubationController() const```</span>.
3614    ///
3615    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#incubationController">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the currently set incubation controller, or 0 if no controller has been set.</p>
3616    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setIncubationController">setIncubationController</a>().</p></div>
3617    #[inline(always)]
3618    pub unsafe fn incubation_controller(&self) -> ::cpp_core::Ptr<crate::QQmlIncubationController> {
3619        let ffi_result = {
3620            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_incubationController(
3621                self as *const crate::QQmlEngine,
3622            )
3623        };
3624        ::cpp_core::Ptr::from_raw(ffi_result)
3625    }
3626
3627    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlEngine::metaObject() const```</span>.
3628    #[inline(always)]
3629    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
3630        let ffi_result = {
3631            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_metaObject(self as *const crate::QQmlEngine)
3632        };
3633        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3634    }
3635
3636    /// <p>Returns the current <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html">QQmlNetworkAccessManagerFactory</a>.</p>
3637    ///
3638    /// Calls C++ function: <span style='color: green;'>```QQmlNetworkAccessManagerFactory* QQmlEngine::networkAccessManagerFactory() const```</span>.
3639    ///
3640    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#networkAccessManagerFactory">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html">QQmlNetworkAccessManagerFactory</a>.</p>
3641    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setNetworkAccessManagerFactory">setNetworkAccessManagerFactory</a>().</p></div>
3642    #[inline(always)]
3643    pub unsafe fn network_access_manager_factory(
3644        &self,
3645    ) -> ::cpp_core::Ptr<crate::QQmlNetworkAccessManagerFactory> {
3646        let ffi_result = {
3647            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_networkAccessManagerFactory(
3648                self as *const crate::QQmlEngine,
3649            )
3650        };
3651        ::cpp_core::Ptr::from_raw(ffi_result)
3652    }
3653
3654    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> with the given <i>parent</i>.</p>
3655    ///
3656    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlEngine::QQmlEngine(QObject* p = …)```</span>.
3657    ///
3658    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#QQmlEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> with the given <i>parent</i>.</p></div>
3659    #[inline(always)]
3660    pub unsafe fn new_1a(
3661        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
3662    ) -> ::qt_core::QBox<crate::QQmlEngine> {
3663        let ffi_result = {
3664            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_QQmlEngine(
3665                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(p)
3666                    .as_raw_ptr() as *mut ::qt_core::QObject,
3667            )
3668        };
3669        ::qt_core::QBox::from_raw(ffi_result)
3670    }
3671
3672    /// <p>Each QML component is instantiated in a <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>'s are essential for passing data to QML components. In QML, contexts are arranged hierarchically and this hierarchy is managed by the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p>
3673    ///
3674    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlEngine::QQmlEngine()```</span>.
3675    ///
3676    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Each QML component is instantiated in a <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>'s are essential for passing data to QML components. In QML, contexts are arranged hierarchically and this hierarchy is managed by the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p>
3677    /// <p>Prior to creating any QML components, an application must have created a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to gain access to a QML context. The following example shows how to create a simple Text item.</p>
3678    /// <pre class="cpp">
3679    ///
3680    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html#QQmlEngine">QQmlEngine</a></span> engine;
3681    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a></span> component(<span class="operator">&amp;</span>engine);
3682    ///   component<span class="operator">.</span>setData(<span class="string">"import QtQuick 2.0\nText { text: \"Hello world!\" }"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>());
3683    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span>item <span class="operator">=</span> qobject_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span><span class="operator">&gt;</span>(component<span class="operator">.</span>create());
3684    ///
3685    ///   <span class="comment">//add item to view, etc</span>
3686    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
3687    ///
3688    /// </pre>
3689    /// <p>In this case, the Text item will be created in the engine's <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a>.</p></div>
3690    #[inline(always)]
3691    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QQmlEngine> {
3692        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_QQmlEngine1() };
3693        ::qt_core::QBox::from_raw(ffi_result)
3694    }
3695
3696    /// <p>Returns the ownership of <i>object</i>.</p>
3697    ///
3698    /// Calls C++ function: <span style='color: green;'>```static QQmlEngine::ObjectOwnership QQmlEngine::objectOwnership(QObject* arg1)```</span>.
3699    ///
3700    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#objectOwnership">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the ownership of <i>object</i>.</p>
3701    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setObjectOwnership">setObjectOwnership</a>().</p></div>
3702    #[inline(always)]
3703    pub unsafe fn object_ownership(
3704        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
3705    ) -> crate::q_qml_engine::ObjectOwnership {
3706        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_objectOwnership(
3707            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
3708                .as_raw_ptr() as *mut ::qt_core::QObject,
3709        )
3710    }
3711
3712    /// <p>Returns the file path where a <a href="http://doc.qt.io/qt-5/qtquick-localstorage-qmlmodule.html">Local Storage</a> database with the identifier <i>databaseName</i> is (or would be) located.</p>
3713    ///
3714    /// Calls C++ function: <span style='color: green;'>```QString QQmlEngine::offlineStorageDatabaseFilePath(const QString& databaseName) const```</span>.
3715    ///
3716    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#offlineStorageDatabaseFilePath">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the file path where a <a href="http://doc.qt.io/qt-5/qtquick-localstorage-qmlmodule.html">Local Storage</a> database with the identifier <i>databaseName</i> is (or would be) located.</p>
3717    /// <p>This function was introduced in  Qt 5.9.</p>
3718    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qtquick-localstorage-qmlmodule.html#opendatabasesync">LocalStorage.openDatabaseSync</a>().</p></div>
3719    #[inline(always)]
3720    pub unsafe fn offline_storage_database_file_path(
3721        &self,
3722        database_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3723    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3724        let ffi_result = {
3725            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_offlineStorageDatabaseFilePath(
3726                self as *const crate::QQmlEngine,
3727                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(
3728                    database_name,
3729                )
3730                .as_raw_ptr(),
3731            )
3732        };
3733        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3734    }
3735
3736    /// <p>This property holds the directory for storing offline user data</p>
3737    ///
3738    /// Calls C++ function: <span style='color: green;'>```QString QQmlEngine::offlineStoragePath() const```</span>.
3739    ///
3740    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#offlineStoragePath-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the directory for storing offline user data</p>
3741    /// <p>Returns the directory where SQL and other offline storage is placed.</p>
3742    /// <p>The SQL databases created with openDatabase() are stored here.</p>
3743    /// <p>The default is QML/OfflineStorage in the platform-standard user application data directory.</p>
3744    /// <p>Note that the path may not currently exist on the filesystem, so callers wanting to <i>create</i> new files at this location should create it first - see <a href="http://doc.qt.io/qt-5/qdir.html#mkpath">QDir::mkpath</a>().</p>
3745    /// <p><b>Access functions:</b></p>
3746    /// <div class="table"><table class="alignedsummary">
3747    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>offlineStoragePath</b></span>() const</td></tr>
3748    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setOfflineStoragePath</b></span>(const QString &amp;<i>dir</i>)</td></tr>
3749    /// </tbody></table></div></div>
3750    #[inline(always)]
3751    pub unsafe fn offline_storage_path(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
3752        let ffi_result = {
3753            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_offlineStoragePath(
3754                self as *const crate::QQmlEngine,
3755            )
3756        };
3757        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3758    }
3759
3760    /// <p>Returns true if warning messages will be output to stderr in addition to being emitted by the <a href="http://doc.qt.io/qt-5/qqmlengine.html#warnings">warnings</a>() signal, otherwise false.</p>
3761    ///
3762    /// Calls C++ function: <span style='color: green;'>```bool QQmlEngine::outputWarningsToStandardError() const```</span>.
3763    ///
3764    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#outputWarningsToStandardError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if warning messages will be output to stderr in addition to being emitted by the <a href="http://doc.qt.io/qt-5/qqmlengine.html#warnings">warnings</a>() signal, otherwise false.</p>
3765    /// <p>The default value is true.</p>
3766    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#setOutputWarningsToStandardError">setOutputWarningsToStandardError</a>().</p></div>
3767    #[inline(always)]
3768    pub unsafe fn output_warnings_to_standard_error(&self) -> bool {
3769        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_outputWarningsToStandardError(
3770            self as *const crate::QQmlEngine,
3771        )
3772    }
3773
3774    /// <p>Returns the list of directories where the engine searches for native plugins for imported modules (referenced in the <code>qmldir</code> file).</p>
3775    ///
3776    /// Calls C++ function: <span style='color: green;'>```QStringList QQmlEngine::pluginPathList() const```</span>.
3777    ///
3778    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#pluginPathList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of directories where the engine searches for native plugins for imported modules (referenced in the <code>qmldir</code> file).</p>
3779    /// <p>By default, the list contains only <code>.</code>, i.e. the engine searches in the directory of the <code>qmldir</code> file itself.</p>
3780    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#addPluginPath">addPluginPath</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#setPluginPathList">setPluginPathList</a>().</p></div>
3781    #[inline(always)]
3782    pub unsafe fn plugin_path_list(&self) -> ::cpp_core::CppBox<::qt_core::QStringList> {
3783        let ffi_result = {
3784            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_pluginPathList(self as *const crate::QQmlEngine)
3785        };
3786        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3787    }
3788
3789    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlEngine::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
3790    #[inline(always)]
3791    pub unsafe fn qt_metacall(
3792        &self,
3793        arg1: ::qt_core::q_meta_object::Call,
3794        arg2: ::std::os::raw::c_int,
3795        arg3: *mut *mut ::std::ffi::c_void,
3796    ) -> ::std::os::raw::c_int {
3797        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_qt_metacall(
3798            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3799            arg1,
3800            arg2,
3801            arg3,
3802        )
3803    }
3804
3805    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlEngine::qt_metacast(const char* arg1)```</span>.
3806    #[inline(always)]
3807    pub unsafe fn qt_metacast(
3808        &self,
3809        arg1: *const ::std::os::raw::c_char,
3810    ) -> *mut ::std::ffi::c_void {
3811        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_qt_metacast(
3812            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3813            arg1,
3814        )
3815    }
3816
3817    /// <p>Removes the image provider for <i>providerId</i>.</p>
3818    ///
3819    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::removeImageProvider(const QString& id)```</span>.
3820    ///
3821    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#removeImageProvider">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the image provider for <i>providerId</i>.</p>
3822    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#addImageProvider">addImageProvider</a>() and <a href="http://doc.qt.io/qt-5/qquickimageprovider.html">QQuickImageProvider</a>.</p></div>
3823    #[inline(always)]
3824    pub unsafe fn remove_image_provider(
3825        &self,
3826        id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
3827    ) {
3828        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_removeImageProvider(
3829            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3830            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(id).as_raw_ptr(),
3831        )
3832    }
3833
3834    /// <p>Refreshes all binding expressions that use strings marked for translation.</p>
3835    ///
3836    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlEngine::retranslate()```</span>.
3837    ///
3838    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#retranslate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Refreshes all binding expressions that use strings marked for translation.</p>
3839    /// <p>Call this function after you have installed a new translator with <a href="http://doc.qt.io/qt-5/qcoreapplication.html#installTranslator">QCoreApplication::installTranslator</a>, to ensure that your user-interface shows up-to-date translations.</p>
3840    /// <p><b>Note: </b>Due to a limitation in the implementation, this function refreshes all the engine's bindings, not only those that use strings marked for translation. This may be optimized in a future release.</p><p>This function was introduced in  Qt 5.10.</p></div>
3841    #[inline(always)]
3842    #[cfg_attr(
3843        feature = "ritual_rustdoc_nightly",
3844        doc(cfg(any(
3845            cpp_lib_version = "5.13.0",
3846            cpp_lib_version = "5.11.3",
3847            cpp_lib_version = "5.12.2",
3848            cpp_lib_version = "5.14.0"
3849        )))
3850    )]
3851    #[cfg(any(
3852        any(
3853            cpp_lib_version = "5.13.0",
3854            cpp_lib_version = "5.11.3",
3855            cpp_lib_version = "5.12.2",
3856            cpp_lib_version = "5.14.0"
3857        ),
3858        feature = "ritual_rustdoc"
3859    ))]
3860    pub unsafe fn retranslate(&self) {
3861        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_retranslate(
3862            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3863        )
3864    }
3865
3866    /// <p>Returns the engine's root context.</p>
3867    ///
3868    /// Calls C++ function: <span style='color: green;'>```QQmlContext* QQmlEngine::rootContext() const```</span>.
3869    ///
3870    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the engine's root context.</p>
3871    /// <p>The root context is automatically created by the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>. Data that should be available to all QML component instances instantiated by the engine should be put in the root context.</p>
3872    /// <p>Additional data that should only be available to a subset of component instances should be added to sub-contexts parented to the root context.</p></div>
3873    #[inline(always)]
3874    pub unsafe fn root_context(&self) -> ::qt_core::QPtr<crate::QQmlContext> {
3875        let ffi_result = {
3876            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_rootContext(self as *const crate::QQmlEngine)
3877        };
3878        ::qt_core::QPtr::from_raw(ffi_result)
3879    }
3880
3881    /// <p>Set the base URL for this engine to <i>url</i>.</p>
3882    ///
3883    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setBaseUrl(const QUrl& arg1)```</span>.
3884    ///
3885    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setBaseUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the base URL for this engine to <i>url</i>.</p>
3886    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">baseUrl</a>().</p></div>
3887    #[inline(always)]
3888    pub unsafe fn set_base_url(
3889        &self,
3890        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
3891    ) {
3892        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setBaseUrl(
3893            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3894            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1).as_raw_ptr(),
3895        )
3896    }
3897
3898    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> for the <i>object</i> to <i>context</i>. If the <i>object</i> already has a context, a warning is output, but the context is not changed.</p>
3899    ///
3900    /// Calls C++ function: <span style='color: green;'>```static void QQmlEngine::setContextForObject(QObject* arg1, QQmlContext* arg2)```</span>.
3901    ///
3902    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setContextForObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> for the <i>object</i> to <i>context</i>. If the <i>object</i> already has a context, a warning is output, but the context is not changed.</p>
3903    /// <p>When the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> instantiates a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, the context is set automatically.</p>
3904    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#contextForObject">contextForObject</a>().</p></div>
3905    #[inline(always)]
3906    pub unsafe fn set_context_for_object(
3907        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
3908        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
3909    ) {
3910        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setContextForObject(
3911            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
3912                .as_raw_ptr() as *mut ::qt_core::QObject,
3913            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg2)
3914                .as_raw_ptr() as *mut crate::QQmlContext,
3915        )
3916    }
3917
3918    /// <p>Sets <i>paths</i> as the list of directories where the engine searches for installed modules in a URL-based directory structure.</p>
3919    ///
3920    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setImportPathList(const QStringList& paths)```</span>.
3921    ///
3922    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setImportPathList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets <i>paths</i> as the list of directories where the engine searches for installed modules in a URL-based directory structure.</p>
3923    /// <p>By default, the list contains the directory of the application executable, paths specified in the <code>QML2_IMPORT_PATH</code> environment variable, and the builtin <code>Qml2ImportsPath</code> from <a href="http://doc.qt.io/qt-5/qlibraryinfo.html">QLibraryInfo</a>.</p>
3924    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#importPathList">importPathList</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#addImportPath">addImportPath</a>().</p></div>
3925    #[inline(always)]
3926    pub unsafe fn set_import_path_list(
3927        &self,
3928        paths: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
3929    ) {
3930        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setImportPathList(
3931            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3932            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(paths)
3933                .as_raw_ptr(),
3934        )
3935    }
3936
3937    /// <p>Sets the engine's incubation <i>controller</i>. The engine can only have one active controller and it does not take ownership of it.</p>
3938    ///
3939    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setIncubationController(QQmlIncubationController* arg1)```</span>.
3940    ///
3941    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setIncubationController">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the engine's incubation <i>controller</i>. The engine can only have one active controller and it does not take ownership of it.</p>
3942    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#incubationController">incubationController</a>().</p></div>
3943    #[inline(always)]
3944    pub unsafe fn set_incubation_controller(
3945        &self,
3946        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlIncubationController>>,
3947    ) {
3948        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setIncubationController(
3949            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
3950            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlIncubationController>>::cast_into(
3951                arg1,
3952            )
3953            .as_raw_ptr() as *mut crate::QQmlIncubationController,
3954        )
3955    }
3956
3957    /// <p>Sets the <i>factory</i> to use for creating QNetworkAccessManager(s).</p>
3958    ///
3959    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setNetworkAccessManagerFactory(QQmlNetworkAccessManagerFactory* arg1)```</span>.
3960    ///
3961    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setNetworkAccessManagerFactory">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>factory</i> to use for creating QNetworkAccessManager(s).</p>
3962    /// <p>QNetworkAccessManager is used for all network access by QML. By implementing a factory it is possible to create custom QNetworkAccessManager with specialized caching, proxy and cookie support.</p>
3963    /// <p>The factory must be set before executing the engine.</p>
3964    /// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> does not take ownership of the factory.</p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#networkAccessManagerFactory">networkAccessManagerFactory</a>().</p></div>
3965    #[inline(always)]
3966    pub unsafe fn set_network_access_manager_factory(
3967        &self,
3968        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlNetworkAccessManagerFactory>>,
3969    ) {
3970        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setNetworkAccessManagerFactory(self as *const crate::QQmlEngine as *mut crate::QQmlEngine, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlNetworkAccessManagerFactory>>::cast_into(arg1).as_raw_ptr() as *mut crate::QQmlNetworkAccessManagerFactory)
3971    }
3972
3973    /// <p>Sets the <i>ownership</i> of <i>object</i>.</p>
3974    ///
3975    /// Calls C++ function: <span style='color: green;'>```static void QQmlEngine::setObjectOwnership(QObject* arg1, QQmlEngine::ObjectOwnership arg2)```</span>.
3976    ///
3977    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setObjectOwnership">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>ownership</i> of <i>object</i>.</p>
3978    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#objectOwnership">objectOwnership</a>().</p></div>
3979    #[inline(always)]
3980    pub unsafe fn set_object_ownership(
3981        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
3982        arg2: crate::q_qml_engine::ObjectOwnership,
3983    ) {
3984        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setObjectOwnership(
3985            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
3986                .as_raw_ptr() as *mut ::qt_core::QObject,
3987            arg2,
3988        )
3989    }
3990
3991    /// <p>This property holds the directory for storing offline user data</p>
3992    ///
3993    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setOfflineStoragePath(const QString& dir)```</span>.
3994    ///
3995    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#offlineStoragePath-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the directory for storing offline user data</p>
3996    /// <p>Returns the directory where SQL and other offline storage is placed.</p>
3997    /// <p>The SQL databases created with openDatabase() are stored here.</p>
3998    /// <p>The default is QML/OfflineStorage in the platform-standard user application data directory.</p>
3999    /// <p>Note that the path may not currently exist on the filesystem, so callers wanting to <i>create</i> new files at this location should create it first - see <a href="http://doc.qt.io/qt-5/qdir.html#mkpath">QDir::mkpath</a>().</p>
4000    /// <p><b>Access functions:</b></p>
4001    /// <div class="table"><table class="alignedsummary">
4002    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>offlineStoragePath</b></span>() const</td></tr>
4003    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setOfflineStoragePath</b></span>(const QString &amp;<i>dir</i>)</td></tr>
4004    /// </tbody></table></div></div>
4005    #[inline(always)]
4006    pub unsafe fn set_offline_storage_path(
4007        &self,
4008        dir: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
4009    ) {
4010        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setOfflineStoragePath(
4011            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
4012            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(dir)
4013                .as_raw_ptr(),
4014        )
4015    }
4016
4017    /// <p>Set whether warning messages will be output to stderr to <i>enabled</i>.</p>
4018    ///
4019    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setOutputWarningsToStandardError(bool arg1)```</span>.
4020    ///
4021    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setOutputWarningsToStandardError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set whether warning messages will be output to stderr to <i>enabled</i>.</p>
4022    /// <p>If <i>enabled</i> is true, any warning messages generated by QML will be output to stderr and emitted by the <a href="http://doc.qt.io/qt-5/qqmlengine.html#warnings">warnings</a>() signal. If <i>enabled</i> is false, only the <a href="http://doc.qt.io/qt-5/qqmlengine.html#warnings">warnings</a>() signal will be emitted. This allows applications to handle warning output themselves.</p>
4023    /// <p>The default value is true.</p>
4024    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#outputWarningsToStandardError">outputWarningsToStandardError</a>().</p></div>
4025    #[inline(always)]
4026    pub unsafe fn set_output_warnings_to_standard_error(&self, arg1: bool) {
4027        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setOutputWarningsToStandardError(
4028            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
4029            arg1,
4030        )
4031    }
4032
4033    /// <p>Sets the list of directories where the engine searches for native plugins for imported modules (referenced in the <code>qmldir</code> file) to <i>paths</i>.</p>
4034    ///
4035    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setPluginPathList(const QStringList& paths)```</span>.
4036    ///
4037    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#setPluginPathList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the list of directories where the engine searches for native plugins for imported modules (referenced in the <code>qmldir</code> file) to <i>paths</i>.</p>
4038    /// <p>By default, the list contains only <code>.</code>, i.e. the engine searches in the directory of the <code>qmldir</code> file itself.</p>
4039    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#pluginPathList">pluginPathList</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#addPluginPath">addPluginPath</a>().</p></div>
4040    #[inline(always)]
4041    pub unsafe fn set_plugin_path_list(
4042        &self,
4043        paths: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
4044    ) {
4045        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setPluginPathList(
4046            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
4047            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(paths)
4048                .as_raw_ptr(),
4049        )
4050    }
4051
4052    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::setUrlInterceptor(QQmlAbstractUrlInterceptor* urlInterceptor)```</span>.
4053    #[inline(always)]
4054    pub unsafe fn set_url_interceptor(
4055        &self,
4056        url_interceptor: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlAbstractUrlInterceptor>>,
4057    ) {
4058        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_setUrlInterceptor(
4059            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
4060            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlAbstractUrlInterceptor>>::cast_into(
4061                url_interceptor,
4062            )
4063            .as_raw_ptr() as *mut crate::QQmlAbstractUrlInterceptor,
4064        )
4065    }
4066
4067    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
4068    #[inline(always)]
4069    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
4070        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_staticMetaObject() };
4071        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
4072            .expect("attempted to construct a null Ref")
4073    }
4074
4075    /// Calls C++ function: <span style='color: green;'>```static QString QQmlEngine::tr(const char* s, const char* c, int n)```</span>.
4076    #[inline(always)]
4077    pub unsafe fn tr(
4078        s: *const ::std::os::raw::c_char,
4079        c: *const ::std::os::raw::c_char,
4080        n: ::std::os::raw::c_int,
4081    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4082        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_tr(s, c, n) };
4083        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4084    }
4085
4086    /// Calls C++ function: <span style='color: green;'>```static QString QQmlEngine::trUtf8(const char* s, const char* c, int n)```</span>.
4087    #[inline(always)]
4088    pub unsafe fn tr_utf8(
4089        s: *const ::std::os::raw::c_char,
4090        c: *const ::std::os::raw::c_char,
4091        n: ::std::os::raw::c_int,
4092    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4093        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_trUtf8(s, c, n) };
4094        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4095    }
4096
4097    /// <p>Trims the engine's internal component cache.</p>
4098    ///
4099    /// Calls C++ function: <span style='color: green;'>```void QQmlEngine::trimComponentCache()```</span>.
4100    ///
4101    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#trimComponentCache">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Trims the engine's internal component cache.</p>
4102    /// <p>This function causes the property metadata of any loaded components which are not currently in use to be destroyed.</p>
4103    /// <p>A component is considered to be in use if there are any extant instances of the component itself, any instances of other components that use the component, or any objects instantiated by any of those components.</p>
4104    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#clearComponentCache">clearComponentCache</a>().</p></div>
4105    #[inline(always)]
4106    pub unsafe fn trim_component_cache(&self) {
4107        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_trimComponentCache(
4108            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
4109        )
4110    }
4111
4112    /// Calls C++ function: <span style='color: green;'>```QQmlAbstractUrlInterceptor* QQmlEngine::urlInterceptor() const```</span>.
4113    #[inline(always)]
4114    pub unsafe fn url_interceptor(&self) -> ::cpp_core::Ptr<crate::QQmlAbstractUrlInterceptor> {
4115        let ffi_result = {
4116            crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_urlInterceptor(self as *const crate::QQmlEngine)
4117        };
4118        ::cpp_core::Ptr::from_raw(ffi_result)
4119    }
4120}
4121
4122/// <p>This class combines a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> and <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to provide a convenient way to load a single QML file. It also exposes some central application functionality to QML, which a C++/QML hybrid application would normally control from C++.</p>
4123///
4124/// C++ class: <span style='color: green;'>```QQmlApplicationEngine```</span>.
4125///
4126/// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This class combines a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> and <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to provide a convenient way to load a single QML file. It also exposes some central application functionality to QML, which a C++/QML hybrid application would normally control from C++.</p>
4127/// <p>It can be used like so:</p>
4128/// <pre class="cpp">
4129///
4130///   <span class="preprocessor">#include &lt;QGuiApplication&gt;</span>
4131///   <span class="preprocessor">#include &lt;QQmlApplicationEngine&gt;</span>
4132///
4133///   <span class="type">int</span> main(<span class="type">int</span> argc<span class="operator">,</span> <span class="type">char</span> <span class="operator">*</span>argv<span class="operator">[</span><span class="operator">]</span>)
4134///   {
4135/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qguiapplication.html">QGuiApplication</a></span> app(argc<span class="operator">,</span> argv);
4136/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine">QQmlApplicationEngine</a></span> engine(<span class="string">"main.qml"</span>);
4137/// &#32;     <span class="keyword">return</span> app<span class="operator">.</span>exec();
4138///   }
4139///
4140/// </pre>
4141/// <p>Unlike <a href="http://doc.qt.io/qt-5/qquickview.html">QQuickView</a>, <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> does not automatically create a root window. If you are using visual items from Qt Quick, you will need to place them inside of a <a href="http://doc.qt.io/qt-5/qml-qtquick-window-window.html">Window</a>.</p>
4142/// <p>You can also use <a href="http://doc.qt.io/qt-5/qcoreapplication.html">QCoreApplication</a> with <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a>, if you are not using any QML modules which require a <a href="http://doc.qt.io/qt-5/qguiapplication.html">QGuiApplication</a> (such as <code>QtQuick</code>).</p>
4143/// <p>List of configuration changes from a default <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>:</p>
4144/// <ul>
4145/// <li>Connecting Qt.<a href="http://doc.qt.io/qt-5/qqmlengine.html#quit">quit</a>() to <a href="http://doc.qt.io/qt-5/qcoreapplication.html#quit">QCoreApplication::quit</a>()</li>
4146/// <li>Automatically loads translation files from an i18n directory adjacent to the main QML file.</li>
4147/// <li>Automatically sets an incubation controller if the scene contains a <a href="http://doc.qt.io/qt-5/qquickwindow.html">QQuickWindow</a>.</li>
4148/// <li>Automatically sets a <code>QQmlFileSelector</code> as the url interceptor, applying file selectors to all QML files and assets.</li>
4149/// </ul>
4150/// <p>The engine behavior can be further tweaked by using the inherited methods from <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p></div>
4151#[repr(C)]
4152pub struct QQmlApplicationEngine {
4153    _unused: u8,
4154}
4155impl QQmlApplicationEngine {
4156    /// <p>Loads the root QML file located at <i>url</i>. The object tree defined by the file is created immediately for local file urls. Remote urls are loaded asynchronously, listen to the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">objectCreated</a> signal to determine when the object tree is ready.</p>
4157    ///
4158    /// Returns a built-in Qt slot `QQmlApplicationEngine::load` that can be passed to `qt_core::Signal::connect`.
4159    ///
4160    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the root QML file located at <i>url</i>. The object tree defined by the file is created immediately for local file urls. Remote urls are loaded asynchronously, listen to the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">objectCreated</a> signal to determine when the object tree is ready.</p>
4161    /// <p>If an error occurs, the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">objectCreated</a> signal is emitted with a null pointer as parameter and error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4162    #[inline(always)]
4163    pub fn slot_load(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
4164        unsafe {
4165            ::qt_core::Receiver::new(
4166                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4167                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1load(QUrl const &)\0"),
4168            )
4169        }
4170    }
4171
4172    /// <p>Loads the root QML file located at <i>filePath</i>. <i>filePath</i> must be a path to a local file. If <i>filePath</i> is a relative path, it is taken as relative to the application's working directory. The object tree defined by the file is instantiated immediately.</p>
4173    ///
4174    /// Returns a built-in Qt slot `QQmlApplicationEngine::load` that can be passed to `qt_core::Signal::connect`.
4175    ///
4176    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the root QML file located at <i>filePath</i>. <i>filePath</i> must be a path to a local file. If <i>filePath</i> is a relative path, it is taken as relative to the application's working directory. The object tree defined by the file is instantiated immediately.</p>
4177    /// <p>If an error occurs, error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4178    #[inline(always)]
4179    pub fn slot_load2(&self) -> ::qt_core::Receiver<(*const ::qt_core::QString,)> {
4180        unsafe {
4181            ::qt_core::Receiver::new(
4182                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4183                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1load(QString const &)\0"),
4184            )
4185        }
4186    }
4187
4188    /// <p>Loads the QML given in <i>data</i>. The object tree defined by <i>data</i> is instantiated immediately.</p>
4189    ///
4190    /// Returns a built-in Qt slot `QQmlApplicationEngine::loadData` that can be passed to `qt_core::Signal::connect`.
4191    ///
4192    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#loadData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the QML given in <i>data</i>. The object tree defined by <i>data</i> is instantiated immediately.</p>
4193    /// <p>If a <i>url</i> is specified it is used as the base url of the component. This affects relative paths within the data and error messages.</p>
4194    /// <p>If an error occurs, error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4195    #[inline(always)]
4196    pub fn slot_load_data(
4197        &self,
4198    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray, *const ::qt_core::QUrl)> {
4199        unsafe {
4200            ::qt_core::Receiver::new(
4201                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4202                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4203                    b"1loadData(QByteArray const &,QUrl const &)\0",
4204                ),
4205            )
4206        }
4207    }
4208
4209    /// <p>This signal is emitted when an object finishes loading. If loading was successful, <i>object</i> contains a pointer to the loaded object, otherwise the pointer is NULL.</p>
4210    ///
4211    /// Returns a built-in Qt signal `QQmlApplicationEngine::objectCreated` that can be passed to `qt_core::Signal::connect`.
4212    ///
4213    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when an object finishes loading. If loading was successful, <i>object</i> contains a pointer to the loaded object, otherwise the pointer is NULL.</p>
4214    /// <p>The <i>url</i> to the component the <i>object</i> came from is also provided.</p>
4215    /// <p><b>Note: </b>If the path to the component was provided as a <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> containing a relative path, the <i>url</i> will contain a fully resolved path to the file.</p></div>
4216    #[inline(always)]
4217    pub fn object_created(
4218        &self,
4219    ) -> ::qt_core::Signal<(*mut ::qt_core::QObject, *const ::qt_core::QUrl)> {
4220        unsafe {
4221            ::qt_core::Signal::new(
4222                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4223                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4224                    b"2objectCreated(QObject *,QUrl const &)\0",
4225                ),
4226            )
4227        }
4228    }
4229
4230    /// <p>Loads the root QML file located at <i>url</i>. The object tree defined by the file is created immediately for local file urls. Remote urls are loaded asynchronously, listen to the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">objectCreated</a> signal to determine when the object tree is ready.</p>
4231    ///
4232    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlApplicationEngine::load(const QUrl& url)```</span>.
4233    ///
4234    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the root QML file located at <i>url</i>. The object tree defined by the file is created immediately for local file urls. Remote urls are loaded asynchronously, listen to the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">objectCreated</a> signal to determine when the object tree is ready.</p>
4235    /// <p>If an error occurs, the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#objectCreated">objectCreated</a> signal is emitted with a null pointer as parameter and error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4236    #[inline(always)]
4237    pub unsafe fn load_q_url(
4238        &self,
4239        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
4240    ) {
4241        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_load(
4242            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4243            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
4244        )
4245    }
4246
4247    /// <p>Loads the root QML file located at <i>filePath</i>. <i>filePath</i> must be a path to a local file. If <i>filePath</i> is a relative path, it is taken as relative to the application's working directory. The object tree defined by the file is instantiated immediately.</p>
4248    ///
4249    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlApplicationEngine::load(const QString& filePath)```</span>.
4250    ///
4251    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the root QML file located at <i>filePath</i>. <i>filePath</i> must be a path to a local file. If <i>filePath</i> is a relative path, it is taken as relative to the application's working directory. The object tree defined by the file is instantiated immediately.</p>
4252    /// <p>If an error occurs, error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4253    #[inline(always)]
4254    pub unsafe fn load_q_string(
4255        &self,
4256        file_path: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
4257    ) {
4258        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_load1(
4259            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4260            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_path)
4261                .as_raw_ptr(),
4262        )
4263    }
4264
4265    /// <p>Loads the QML given in <i>data</i>. The object tree defined by <i>data</i> is instantiated immediately.</p>
4266    ///
4267    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlApplicationEngine::loadData(const QByteArray& data, const QUrl& url = …)```</span>.
4268    ///
4269    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#loadData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the QML given in <i>data</i>. The object tree defined by <i>data</i> is instantiated immediately.</p>
4270    /// <p>If a <i>url</i> is specified it is used as the base url of the component. This affects relative paths within the data and error messages.</p>
4271    /// <p>If an error occurs, error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4272    #[inline(always)]
4273    pub unsafe fn load_data_2a(
4274        &self,
4275        data: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
4276        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
4277    ) {
4278        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_loadData(
4279            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4280            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(data)
4281                .as_raw_ptr(),
4282            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
4283        )
4284    }
4285
4286    /// <p>Loads the QML given in <i>data</i>. The object tree defined by <i>data</i> is instantiated immediately.</p>
4287    ///
4288    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlApplicationEngine::loadData(const QByteArray& data)```</span>.
4289    ///
4290    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#loadData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Loads the QML given in <i>data</i>. The object tree defined by <i>data</i> is instantiated immediately.</p>
4291    /// <p>If a <i>url</i> is specified it is used as the base url of the component. This affects relative paths within the data and error messages.</p>
4292    /// <p>If an error occurs, error messages are printed with <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>.</p></div>
4293    #[inline(always)]
4294    pub unsafe fn load_data_1a(
4295        &self,
4296        data: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
4297    ) {
4298        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_loadData1(
4299            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4300            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(data)
4301                .as_raw_ptr(),
4302        )
4303    }
4304
4305    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlApplicationEngine::metaObject() const```</span>.
4306    #[inline(always)]
4307    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
4308        let ffi_result = {
4309            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_metaObject(
4310                self as *const crate::QQmlApplicationEngine,
4311            )
4312        };
4313        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
4314    }
4315
4316    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> with the given <i>parent</i>. You will have to call <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">load</a>() later in order to load a QML file.</p>
4317    ///
4318    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlApplicationEngine::QQmlApplicationEngine(QObject* parent = …)```</span>.
4319    ///
4320    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> with the given <i>parent</i>. You will have to call <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">load</a>() later in order to load a QML file.</p></div>
4321    #[inline(always)]
4322    pub unsafe fn from_q_object(
4323        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
4324    ) -> ::qt_core::QBox<crate::QQmlApplicationEngine> {
4325        let ffi_result = {
4326            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_QQmlApplicationEngine(
4327                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
4328                    .as_raw_ptr() as *mut ::qt_core::QObject,
4329            )
4330        };
4331        ::qt_core::QBox::from_raw(ffi_result)
4332    }
4333
4334    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>url</i>. This is provided as a convenience, and is the same as using the empty constructor and calling load afterwards.</p>
4335    ///
4336    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlApplicationEngine::QQmlApplicationEngine(const QUrl& url, QObject* parent = …)```</span>.
4337    ///
4338    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>url</i>. This is provided as a convenience, and is the same as using the empty constructor and calling load afterwards.</p></div>
4339    #[inline(always)]
4340    pub unsafe fn from_q_url_q_object(
4341        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
4342        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
4343    ) -> ::qt_core::QBox<crate::QQmlApplicationEngine> {
4344        let ffi_result = {
4345            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_QQmlApplicationEngine1(
4346                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url)
4347                    .as_raw_ptr(),
4348                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
4349                    .as_raw_ptr() as *mut ::qt_core::QObject,
4350            )
4351        };
4352        ::qt_core::QBox::from_raw(ffi_result)
4353    }
4354
4355    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>filePath</i>, which must be a local file path. If a relative path is given then it will be interpreted as relative to the working directory of the application.</p>
4356    ///
4357    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlApplicationEngine::QQmlApplicationEngine(const QString& filePath, QObject* parent = …)```</span>.
4358    ///
4359    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>filePath</i>, which must be a local file path. If a relative path is given then it will be interpreted as relative to the working directory of the application.</p>
4360    /// <p>This is provided as a convenience, and is the same as using the empty constructor and calling load afterwards.</p></div>
4361    #[inline(always)]
4362    pub unsafe fn from_q_string_q_object(
4363        file_path: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
4364        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
4365    ) -> ::qt_core::QBox<crate::QQmlApplicationEngine> {
4366        let ffi_result = {
4367            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_QQmlApplicationEngine2(
4368                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_path)
4369                    .as_raw_ptr(),
4370                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
4371                    .as_raw_ptr() as *mut ::qt_core::QObject,
4372            )
4373        };
4374        ::qt_core::QBox::from_raw(ffi_result)
4375    }
4376
4377    /// <p>This class combines a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> and <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to provide a convenient way to load a single QML file. It also exposes some central application functionality to QML, which a C++/QML hybrid application would normally control from C++.</p>
4378    ///
4379    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlApplicationEngine::QQmlApplicationEngine()```</span>.
4380    ///
4381    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This class combines a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> and <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to provide a convenient way to load a single QML file. It also exposes some central application functionality to QML, which a C++/QML hybrid application would normally control from C++.</p>
4382    /// <p>It can be used like so:</p>
4383    /// <pre class="cpp">
4384    ///
4385    ///   <span class="preprocessor">#include &lt;QGuiApplication&gt;</span>
4386    ///   <span class="preprocessor">#include &lt;QQmlApplicationEngine&gt;</span>
4387    ///
4388    ///   <span class="type">int</span> main(<span class="type">int</span> argc<span class="operator">,</span> <span class="type">char</span> <span class="operator">*</span>argv<span class="operator">[</span><span class="operator">]</span>)
4389    ///   {
4390    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qguiapplication.html">QGuiApplication</a></span> app(argc<span class="operator">,</span> argv);
4391    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine">QQmlApplicationEngine</a></span> engine(<span class="string">"main.qml"</span>);
4392    /// &#32;     <span class="keyword">return</span> app<span class="operator">.</span>exec();
4393    ///   }
4394    ///
4395    /// </pre>
4396    /// <p>Unlike <a href="http://doc.qt.io/qt-5/qquickview.html">QQuickView</a>, <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> does not automatically create a root window. If you are using visual items from Qt Quick, you will need to place them inside of a <a href="http://doc.qt.io/qt-5/qml-qtquick-window-window.html">Window</a>.</p>
4397    /// <p>You can also use <a href="http://doc.qt.io/qt-5/qcoreapplication.html">QCoreApplication</a> with <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a>, if you are not using any QML modules which require a <a href="http://doc.qt.io/qt-5/qguiapplication.html">QGuiApplication</a> (such as <code>QtQuick</code>).</p>
4398    /// <p>List of configuration changes from a default <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>:</p>
4399    /// <ul>
4400    /// <li>Connecting Qt.<a href="http://doc.qt.io/qt-5/qqmlengine.html#quit">quit</a>() to <a href="http://doc.qt.io/qt-5/qcoreapplication.html#quit">QCoreApplication::quit</a>()</li>
4401    /// <li>Automatically loads translation files from an i18n directory adjacent to the main QML file.</li>
4402    /// <li>Automatically sets an incubation controller if the scene contains a <a href="http://doc.qt.io/qt-5/qquickwindow.html">QQuickWindow</a>.</li>
4403    /// <li>Automatically sets a <code>QQmlFileSelector</code> as the url interceptor, applying file selectors to all QML files and assets.</li>
4404    /// </ul>
4405    /// <p>The engine behavior can be further tweaked by using the inherited methods from <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p></div>
4406    #[inline(always)]
4407    pub unsafe fn new() -> ::qt_core::QBox<crate::QQmlApplicationEngine> {
4408        let ffi_result =
4409            { crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_QQmlApplicationEngine3() };
4410        ::qt_core::QBox::from_raw(ffi_result)
4411    }
4412
4413    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>url</i>. This is provided as a convenience, and is the same as using the empty constructor and calling load afterwards.</p>
4414    ///
4415    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlApplicationEngine::QQmlApplicationEngine(const QUrl& url)```</span>.
4416    ///
4417    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>url</i>. This is provided as a convenience, and is the same as using the empty constructor and calling load afterwards.</p></div>
4418    #[inline(always)]
4419    pub unsafe fn from_q_url(
4420        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
4421    ) -> ::qt_core::QBox<crate::QQmlApplicationEngine> {
4422        let ffi_result = {
4423            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_QQmlApplicationEngine4(
4424                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url)
4425                    .as_raw_ptr(),
4426            )
4427        };
4428        ::qt_core::QBox::from_raw(ffi_result)
4429    }
4430
4431    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>filePath</i>, which must be a local file path. If a relative path is given then it will be interpreted as relative to the working directory of the application.</p>
4432    ///
4433    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlApplicationEngine::QQmlApplicationEngine(const QString& filePath)```</span>.
4434    ///
4435    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#QQmlApplicationEngine-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and loads the QML file at the given <i>filePath</i>, which must be a local file path. If a relative path is given then it will be interpreted as relative to the working directory of the application.</p>
4436    /// <p>This is provided as a convenience, and is the same as using the empty constructor and calling load afterwards.</p></div>
4437    #[inline(always)]
4438    pub unsafe fn from_q_string(
4439        file_path: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
4440    ) -> ::qt_core::QBox<crate::QQmlApplicationEngine> {
4441        let ffi_result = {
4442            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_QQmlApplicationEngine5(
4443                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_path)
4444                    .as_raw_ptr(),
4445            )
4446        };
4447        ::qt_core::QBox::from_raw(ffi_result)
4448    }
4449
4450    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlApplicationEngine::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
4451    #[inline(always)]
4452    pub unsafe fn qt_metacall(
4453        &self,
4454        arg1: ::qt_core::q_meta_object::Call,
4455        arg2: ::std::os::raw::c_int,
4456        arg3: *mut *mut ::std::ffi::c_void,
4457    ) -> ::std::os::raw::c_int {
4458        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_qt_metacall(
4459            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4460            arg1,
4461            arg2,
4462            arg3,
4463        )
4464    }
4465
4466    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlApplicationEngine::qt_metacast(const char* arg1)```</span>.
4467    #[inline(always)]
4468    pub unsafe fn qt_metacast(
4469        &self,
4470        arg1: *const ::std::os::raw::c_char,
4471    ) -> *mut ::std::ffi::c_void {
4472        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_qt_metacast(
4473            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4474            arg1,
4475        )
4476    }
4477
4478    /// <p>Returns a list of all the root objects instantiated by the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a>. This will only contain objects loaded via <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">load</a>() or a convenience constructor.</p>
4479    ///
4480    /// Calls C++ function: <span style='color: green;'>```QList<QObject*> QQmlApplicationEngine::rootObjects()```</span>.
4481    ///
4482    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#rootObjects">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a list of all the root objects instantiated by the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a>. This will only contain objects loaded via <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">load</a>() or a convenience constructor.</p>
4483    /// <p><b>Note: </b>In Qt versions prior to 5.9, this function is marked as non-<code>const</code>.</p></div>
4484    #[inline(always)]
4485    pub unsafe fn root_objects_mut(&self) -> ::cpp_core::CppBox<::qt_core::QListOfQObject> {
4486        let ffi_result = {
4487            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_rootObjects(
4488                self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4489            )
4490        };
4491        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4492    }
4493
4494    /// <p>Returns a list of all the root objects instantiated by the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a>. This will only contain objects loaded via <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">load</a>() or a convenience constructor.</p>
4495    ///
4496    /// Calls C++ function: <span style='color: green;'>```QList<QObject*> QQmlApplicationEngine::rootObjects() const```</span>.
4497    ///
4498    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#rootObjects">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a list of all the root objects instantiated by the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a>. This will only contain objects loaded via <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">load</a>() or a convenience constructor.</p>
4499    /// <p><b>Note: </b>In Qt versions prior to 5.9, this function is marked as non-<code>const</code>.</p></div>
4500    #[inline(always)]
4501    pub unsafe fn root_objects(&self) -> ::cpp_core::CppBox<::qt_core::QListOfQObject> {
4502        let ffi_result = {
4503            crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_rootObjects1(
4504                self as *const crate::QQmlApplicationEngine,
4505            )
4506        };
4507        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4508    }
4509
4510    /// <p>Sets the <i>initialProperties</i> with which the QML component gets initialized after it gets loaded.</p>
4511    ///
4512    /// Calls C++ function: <span style='color: green;'>```void QQmlApplicationEngine::setInitialProperties(const QMap<QString, QVariant>& initialProperties)```</span>.
4513    ///
4514    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#setInitialProperties">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>initialProperties</i> with which the QML component gets initialized after it gets loaded.</p>
4515    /// <p>This function was introduced in  Qt 5.14.</p>
4516    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setInitialProperties">QQmlComponent::setInitialProperties</a>, <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#load">QQmlApplicationEngine::load</a>, and <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#loadData">QQmlApplicationEngine::loadData</a>.</p></div>
4517    #[inline(always)]
4518    #[cfg_attr(
4519        feature = "ritual_rustdoc_nightly",
4520        doc(cfg(cpp_lib_version = "5.14.0"))
4521    )]
4522    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
4523    pub unsafe fn set_initial_properties(
4524        &self,
4525        initial_properties: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>,
4526    ) {
4527        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_setInitialProperties(
4528            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
4529            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>::cast_into(
4530                initial_properties,
4531            )
4532            .as_raw_ptr(),
4533        )
4534    }
4535
4536    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
4537    #[inline(always)]
4538    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
4539        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_staticMetaObject() };
4540        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
4541            .expect("attempted to construct a null Ref")
4542    }
4543
4544    /// Calls C++ function: <span style='color: green;'>```static QString QQmlApplicationEngine::tr(const char* s, const char* c, int n)```</span>.
4545    #[inline(always)]
4546    pub unsafe fn tr(
4547        s: *const ::std::os::raw::c_char,
4548        c: *const ::std::os::raw::c_char,
4549        n: ::std::os::raw::c_int,
4550    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4551        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_tr(s, c, n) };
4552        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4553    }
4554
4555    /// Calls C++ function: <span style='color: green;'>```static QString QQmlApplicationEngine::trUtf8(const char* s, const char* c, int n)```</span>.
4556    #[inline(always)]
4557    pub unsafe fn tr_utf8(
4558        s: *const ::std::os::raw::c_char,
4559        c: *const ::std::os::raw::c_char,
4560        n: ::std::os::raw::c_int,
4561    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4562        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_trUtf8(s, c, n) };
4563        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4564    }
4565}
4566
4567pub mod q_qml_component {
4568    //! C++ type: <span style='color: green;'>```QQmlComponent```</span>
4569
4570    /// <p>Specifies whether the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> should load the component immediately, or asynchonously.</p>
4571    ///
4572    /// C++ enum: <span style='color: green;'>```QQmlComponent::CompilationMode```</span>.
4573    ///
4574    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> should load the component immediately, or asynchonously.</p></div>
4575    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
4576    #[repr(transparent)]
4577    pub struct CompilationMode(::std::os::raw::c_int);
4578
4579    impl From<::std::os::raw::c_int> for CompilationMode {
4580        fn from(value: ::std::os::raw::c_int) -> Self {
4581            CompilationMode(value)
4582        }
4583    }
4584
4585    impl From<CompilationMode> for ::std::os::raw::c_int {
4586        fn from(value: CompilationMode) -> Self {
4587            value.0
4588        }
4589    }
4590
4591    impl CompilationMode {
4592        pub fn to_int(&self) -> ::std::os::raw::c_int {
4593            self.0
4594        }
4595    }
4596
4597    impl CompilationMode {
4598        /// Prefer loading/compiling the component immediately, blocking the thread. This is not always possible; for example, remote URLs will always load asynchronously. (C++ enum variant: <span style='color: green;'>```PreferSynchronous = 0```</span>)
4599        #[allow(non_upper_case_globals)]
4600        pub const PreferSynchronous: crate::q_qml_component::CompilationMode =
4601            crate::q_qml_component::CompilationMode(0);
4602        /// Load/compile the component in a background thread. (C++ enum variant: <span style='color: green;'>```Asynchronous = 1```</span>)
4603        #[allow(non_upper_case_globals)]
4604        pub const Asynchronous: crate::q_qml_component::CompilationMode =
4605            crate::q_qml_component::CompilationMode(1);
4606    }
4607
4608    /// <p>Specifies the loading status of the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a>.</p>
4609    ///
4610    /// C++ enum: <span style='color: green;'>```QQmlComponent::Status```</span>.
4611    ///
4612    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the loading status of the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a>.</p></div>
4613    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
4614    #[repr(transparent)]
4615    pub struct Status(::std::os::raw::c_int);
4616
4617    impl From<::std::os::raw::c_int> for Status {
4618        fn from(value: ::std::os::raw::c_int) -> Self {
4619            Status(value)
4620        }
4621    }
4622
4623    impl From<Status> for ::std::os::raw::c_int {
4624        fn from(value: Status) -> Self {
4625            value.0
4626        }
4627    }
4628
4629    impl Status {
4630        pub fn to_int(&self) -> ::std::os::raw::c_int {
4631            self.0
4632        }
4633    }
4634
4635    impl Status {
4636        /// This <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> has no data. Call <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>() or <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>() to add QML content. (C++ enum variant: <span style='color: green;'>```Null = 0```</span>)
4637        #[allow(non_upper_case_globals)]
4638        pub const Null: crate::q_qml_component::Status = crate::q_qml_component::Status(0);
4639        /// This <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> is ready and <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">create</a>() may be called. (C++ enum variant: <span style='color: green;'>```Ready = 1```</span>)
4640        #[allow(non_upper_case_globals)]
4641        pub const Ready: crate::q_qml_component::Status = crate::q_qml_component::Status(1);
4642        /// This <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> is loading network data. (C++ enum variant: <span style='color: green;'>```Loading = 2```</span>)
4643        #[allow(non_upper_case_globals)]
4644        pub const Loading: crate::q_qml_component::Status = crate::q_qml_component::Status(2);
4645        /// An error has occurred. Call <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#errors">errors</a>() to retrieve a list of <a href="http://doc.qt.io/qt-5/qqmlerror.html">errors</a>. (C++ enum variant: <span style='color: green;'>```Error = 3```</span>)
4646        #[allow(non_upper_case_globals)]
4647        pub const Error: crate::q_qml_component::Status = crate::q_qml_component::Status(3);
4648    }
4649}
4650/// <p>Components are reusable, encapsulated QML types with well-defined interfaces.</p>
4651///
4652/// C++ class: <span style='color: green;'>```QQmlComponent```</span>.
4653///
4654/// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Components are reusable, encapsulated QML types with well-defined interfaces.</p>
4655/// <p>A <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> instance can be created from a QML file. For example, if there is a <code>main.qml</code> file like this:</p>
4656/// <pre class="qml">
4657///
4658///   import QtQuick 2.0
4659///
4660///   <span class="type"><a href="http://doc.qt.io/qt-5/qml-qtquick-item.html">Item</a></span> {
4661/// &#32;     <span class="name">width</span>: <span class="number">200</span>
4662/// &#32;     <span class="name">height</span>: <span class="number">200</span>
4663///   }
4664///
4665/// </pre>
4666/// <p>The following code loads this QML file as a component, creates an instance of this component using <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">create</a>(), and then queries the <a href="http://doc.qt.io/qt-5/qml-qtquick-item.html">Item</a>'s <a href="http://doc.qt.io/qt-5/qml-qtquick-item.html#width-prop">width</a> value:</p>
4667/// <pre class="cpp">
4668///
4669///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> <span class="operator">*</span>engine <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span>;
4670///   <span class="type">QQmlComponent</span> component(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"main.qml"</span>));
4671///
4672///   <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> <span class="operator">*</span>myObject <span class="operator">=</span> component<span class="operator">.</span>create();
4673///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span>item <span class="operator">=</span> qobject_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span><span class="operator">*</span><span class="operator">&gt;</span>(myObject);
4674///   <span class="type">int</span> width <span class="operator">=</span> item<span class="operator">-</span><span class="operator">&gt;</span>width();  <span class="comment">// width = 200</span>
4675///
4676/// </pre>
4677/// <p>To create instances of a component in code where a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> instance is not available, you can use <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlContext">qmlContext</a>() or <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlEngine">qmlEngine</a>(). For example, in the scenario below, child items are being created within a <a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a> subclass:</p>
4678/// <pre class="cpp">
4679///
4680///   <span class="type">void</span> MyCppItem<span class="operator">::</span>init()
4681///   {
4682/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> <span class="operator">*</span>engine <span class="operator">=</span> qmlEngine(<span class="keyword">this</span>);
4683/// &#32;     <span class="comment">// Or:</span>
4684/// &#32;     <span class="comment">// QQmlEngine *engine = qmlContext(this)-&gt;engine();</span>
4685/// &#32;     <span class="type">QQmlComponent</span> component(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"MyItem.qml"</span>));
4686/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span>childItem <span class="operator">=</span> qobject_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span><span class="operator">*</span><span class="operator">&gt;</span>(component<span class="operator">.</span>create());
4687/// &#32;     childItem<span class="operator">-</span><span class="operator">&gt;</span>setParentItem(<span class="keyword">this</span>);
4688///   }
4689///
4690/// </pre>
4691/// <p>Note that these functions will return <code>null</code> when called inside the constructor of a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> subclass, as the instance will not yet have a context nor engine.</p>
4692/// <a name="network-components"></a>
4693/// <h4>Network Components</h4>
4694/// <p>If the URL passed to <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> is a network resource, or if the QML document references a network resource, the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> has to fetch the network data before it is able to create objects. In this case, the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> will have a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">Loading</a> <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>. An application will have to wait until the component is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">Ready</a> before calling <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>().</p>
4695/// <p>The following example shows how to load a QML file from a network resource. After creating the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a>, it tests whether the component is loading. If it is, it connects to the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#statusChanged">QQmlComponent::statusChanged</a>() signal and otherwise calls the <code>continueLoading()</code> method directly. Note that <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isLoading">QQmlComponent::isLoading</a>() may be false for a network component if the component has been cached and is ready immediately.</p>
4696/// <pre class="cpp">
4697///
4698///   MyApplication<span class="operator">::</span>MyApplication()
4699///   {
4700/// &#32;     <span class="comment">// ...</span>
4701/// &#32;     component <span class="operator">=</span> <span class="keyword">new</span> <span class="type">QQmlComponent</span>(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>(<span class="string">"http://www.example.com/main.qml"</span>));
4702/// &#32;     <span class="keyword">if</span> (component<span class="operator">-</span><span class="operator">&gt;</span>isLoading())
4703/// &#32;   &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span><span class="operator">::</span>connect(component<span class="operator">,</span> SIGNAL(statusChanged(<span class="type">QQmlComponent</span><span class="operator">::</span>Status))<span class="operator">,</span>
4704/// &#32;   &#32;   &#32;   &#32;   &#32;   &#32;      <span class="keyword">this</span><span class="operator">,</span> SLOT(continueLoading()));
4705/// &#32;     <span class="keyword">else</span>
4706/// &#32;   &#32;     continueLoading();
4707///   }
4708///
4709///   <span class="type">void</span> MyApplication<span class="operator">::</span>continueLoading()
4710///   {
4711/// &#32;     <span class="keyword">if</span> (component<span class="operator">-</span><span class="operator">&gt;</span>isError()) {
4712/// &#32;   &#32;     <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> component<span class="operator">-</span><span class="operator">&gt;</span>errors();
4713/// &#32;     } <span class="keyword">else</span> {
4714/// &#32;   &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> <span class="operator">*</span>myObject <span class="operator">=</span> component<span class="operator">-</span><span class="operator">&gt;</span>create();
4715/// &#32;     }
4716///   }
4717///
4718/// </pre></div>
4719#[repr(C)]
4720pub struct QQmlComponent {
4721    _unused: u8,
4722}
4723impl QQmlComponent {
4724    /// <p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>.</p>
4725    ///
4726    /// Returns a built-in Qt slot `QQmlComponent::loadUrl` that can be passed to `qt_core::Signal::connect`.
4727    ///
4728    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>.</p>
4729    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
4730    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p></div>
4731    #[inline(always)]
4732    pub fn slot_load_url(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
4733        unsafe {
4734            ::qt_core::Receiver::new(
4735                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4736                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1loadUrl(QUrl const &)\0"),
4737            )
4738        }
4739    }
4740
4741    /// <p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
4742    ///
4743    /// Returns a built-in Qt slot `QQmlComponent::loadUrl` that can be passed to `qt_core::Signal::connect`.
4744    ///
4745    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
4746    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
4747    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p></div>
4748    #[inline(always)]
4749    pub fn slot_load_url2(
4750        &self,
4751    ) -> ::qt_core::Receiver<(
4752        *const ::qt_core::QUrl,
4753        crate::q_qml_component::CompilationMode,
4754    )> {
4755        unsafe {
4756            ::qt_core::Receiver::new(
4757                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4758                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4759                    b"1loadUrl(QUrl const &,QQmlComponent::CompilationMode)\0",
4760                ),
4761            )
4762        }
4763    }
4764
4765    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to use the given QML <i>data</i>. If <i>url</i> is provided, it is used to set the component name and to provide a base path for items resolved by this component.</p>
4766    ///
4767    /// Returns a built-in Qt slot `QQmlComponent::setData` that can be passed to `qt_core::Signal::connect`.
4768    ///
4769    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to use the given QML <i>data</i>. If <i>url</i> is provided, it is used to set the component name and to provide a base path for items resolved by this component.</p></div>
4770    #[inline(always)]
4771    pub fn slot_set_data(
4772        &self,
4773    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray, *const ::qt_core::QUrl)> {
4774        unsafe {
4775            ::qt_core::Receiver::new(
4776                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4777                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4778                    b"1setData(QByteArray const &,QUrl const &)\0",
4779                ),
4780            )
4781        }
4782    }
4783
4784    /// <p>Emitted whenever the component's status changes. <i>status</i> will be the new status.</p>
4785    ///
4786    /// Returns a built-in Qt signal `QQmlComponent::statusChanged` that can be passed to `qt_core::Signal::connect`.
4787    ///
4788    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#statusChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Emitted whenever the component's status changes. <i>status</i> will be the new status.</p>
4789    /// <p><b>Note:</b> Notifier signal for property <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>. </p></div>
4790    #[inline(always)]
4791    pub fn status_changed(&self) -> ::qt_core::Signal<(crate::q_qml_component::Status,)> {
4792        unsafe {
4793            ::qt_core::Signal::new(
4794                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4795                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4796                    b"2statusChanged(QQmlComponent::Status)\0",
4797                ),
4798            )
4799        }
4800    }
4801
4802    /// <p>Emitted whenever the component's loading progress changes. <i>progress</i> will be the current progress between 0.0 (nothing loaded) and 1.0 (finished).</p>
4803    ///
4804    /// Returns a built-in Qt signal `QQmlComponent::progressChanged` that can be passed to `qt_core::Signal::connect`.
4805    ///
4806    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#progressChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Emitted whenever the component's loading progress changes. <i>progress</i> will be the current progress between 0.0 (nothing loaded) and 1.0 (finished).</p>
4807    /// <p><b>Note:</b> Notifier signal for property <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#progress-prop">progress</a>. </p></div>
4808    #[inline(always)]
4809    pub fn progress_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_double,)> {
4810        unsafe {
4811            ::qt_core::Signal::new(
4812                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4813                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2progressChanged(double)\0"),
4814            )
4815        }
4816    }
4817
4818    /// <p>This method provides advanced control over component instance creation. In general, programmers should use <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() to create object instances.</p>
4819    ///
4820    /// Calls C++ function: <span style='color: green;'>```virtual QObject* QQmlComponent::beginCreate(QQmlContext* arg1)```</span>.
4821    ///
4822    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#beginCreate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This method provides advanced control over component instance creation. In general, programmers should use <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() to create object instances.</p>
4823    /// <p>Create an object instance from this component. Returns <code>nullptr</code> if creation failed. <i>publicContext</i> specifies the context within which to create the object instance.</p>
4824    /// <p>When <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> constructs an instance, it occurs in three steps:</p>
4825    /// <ol class="1" type="1"><li>The object hierarchy is created, and constant values are assigned.</li>
4826    /// <li>Property bindings are evaluated for the first time.</li>
4827    /// <li>If applicable, <a href="http://doc.qt.io/qt-5/qqmlparserstatus.html#componentComplete">QQmlParserStatus::componentComplete</a>() is called on objects.</li>
4828    /// </ol>
4829    /// <p>QQmlComponent::beginCreate() differs from <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() in that it only performs step 1. <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#completeCreate">QQmlComponent::completeCreate</a>() must be called to complete steps 2 and 3.</p>
4830    /// <p>This breaking point is sometimes useful when using attached properties to communicate information to an instantiated component, as it allows their initial values to be configured before property bindings take effect.</p>
4831    /// <p>The ownership of the returned object instance is transferred to the caller.</p>
4832    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#completeCreate">completeCreate</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#ObjectOwnership-enum">QQmlEngine::ObjectOwnership</a>.</p></div>
4833    #[inline(always)]
4834    pub unsafe fn begin_create(
4835        &self,
4836        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
4837    ) -> ::qt_core::QPtr<::qt_core::QObject> {
4838        let ffi_result = {
4839            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_beginCreate(
4840                self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4841                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg1)
4842                    .as_raw_ptr() as *mut crate::QQmlContext,
4843            )
4844        };
4845        ::qt_core::QPtr::from_raw(ffi_result)
4846    }
4847
4848    /// <p>This method provides advanced control over component instance creation. In general, programmers should use <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() to create a component.</p>
4849    ///
4850    /// Calls C++ function: <span style='color: green;'>```virtual void QQmlComponent::completeCreate()```</span>.
4851    ///
4852    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#completeCreate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This method provides advanced control over component instance creation. In general, programmers should use <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() to create a component.</p>
4853    /// <p>This function completes the component creation begun with <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#beginCreate">QQmlComponent::beginCreate</a>() and must be called afterwards.</p>
4854    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#beginCreate">beginCreate</a>().</p></div>
4855    #[inline(always)]
4856    pub unsafe fn complete_create(&self) {
4857        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_completeCreate(
4858            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4859        )
4860    }
4861
4862    /// <p>Create an object instance from this component. Returns <code>nullptr</code> if creation failed. <i>context</i> specifies the context within which to create the object instance.</p>
4863    ///
4864    /// Calls C++ function: <span style='color: green;'>```virtual QObject* QQmlComponent::create(QQmlContext* context = …)```</span>.
4865    ///
4866    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance from this component. Returns <code>nullptr</code> if creation failed. <i>context</i> specifies the context within which to create the object instance.</p>
4867    /// <p>If <i>context</i> is <code>nullptr</code> (the default), it will create the instance in the <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a> of the engine.</p>
4868    /// <p>The ownership of the returned object instance is transferred to the caller.</p>
4869    /// <p>If the object being created from this component is a visual item, it must have a visual parent, which can be set by calling <a href="http://doc.qt.io/qt-5/qquickitem.html#parent-prop">QQuickItem::setParentItem</a>(). See <a href="http://doc.qt.io/qt-5/qtquick-visualcanvas-visualparent.html">Concepts - Visual Parent in Qt Quick</a> for more details.</p>
4870    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#ObjectOwnership-enum">QQmlEngine::ObjectOwnership</a>.</p></div>
4871    #[inline(always)]
4872    pub unsafe fn create_q_qml_context(
4873        &self,
4874        context: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
4875    ) -> ::qt_core::QPtr<::qt_core::QObject> {
4876        let ffi_result = {
4877            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_create(
4878                self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4879                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(context)
4880                    .as_raw_ptr() as *mut crate::QQmlContext,
4881            )
4882        };
4883        ::qt_core::QPtr::from_raw(ffi_result)
4884    }
4885
4886    /// <p>Create an object instance from this component using the provided <i>incubator</i>. <i>context</i> specifies the context within which to create the object instance.</p>
4887    ///
4888    /// Calls C++ function: <span style='color: green;'>```void QQmlComponent::create(QQmlIncubator& arg1, QQmlContext* context = …, QQmlContext* forContext = …)```</span>.
4889    ///
4890    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance from this component using the provided <i>incubator</i>. <i>context</i> specifies the context within which to create the object instance.</p>
4891    /// <p>If <i>context</i> is 0 (the default), it will create the instance in the engine's <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a>.</p>
4892    /// <p><i>forContext</i> specifies a context that this object creation depends upon. If the <i>forContext</i> is being created asynchronously, and the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">QQmlIncubator::IncubationMode</a> is <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">QQmlIncubator::AsynchronousIfNested</a>, this object will also be created asynchronously. If <i>forContext</i> is 0 (the default), the <i>context</i> will be used for this decision.</p>
4893    /// <p>The created object and its creation status are available via the <i>incubator</i>.</p>
4894    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p></div>
4895    #[inline(always)]
4896    pub unsafe fn create_q_qml_incubator2_q_qml_context(
4897        &self,
4898        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlIncubator>>,
4899        context: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
4900        for_context: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
4901    ) {
4902        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_create1(
4903            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4904            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlIncubator>>::cast_into(arg1)
4905                .as_raw_ptr() as *mut crate::QQmlIncubator,
4906            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(context)
4907                .as_raw_ptr() as *mut crate::QQmlContext,
4908            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(for_context)
4909                .as_raw_ptr() as *mut crate::QQmlContext,
4910        )
4911    }
4912
4913    /// <p>Create an object instance from this component. Returns <code>nullptr</code> if creation failed. <i>context</i> specifies the context within which to create the object instance.</p>
4914    ///
4915    /// Calls C++ function: <span style='color: green;'>```virtual QObject* QQmlComponent::create()```</span>.
4916    ///
4917    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance from this component. Returns <code>nullptr</code> if creation failed. <i>context</i> specifies the context within which to create the object instance.</p>
4918    /// <p>If <i>context</i> is <code>nullptr</code> (the default), it will create the instance in the <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a> of the engine.</p>
4919    /// <p>The ownership of the returned object instance is transferred to the caller.</p>
4920    /// <p>If the object being created from this component is a visual item, it must have a visual parent, which can be set by calling <a href="http://doc.qt.io/qt-5/qquickitem.html#parent-prop">QQuickItem::setParentItem</a>(). See <a href="http://doc.qt.io/qt-5/qtquick-visualcanvas-visualparent.html">Concepts - Visual Parent in Qt Quick</a> for more details.</p>
4921    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#ObjectOwnership-enum">QQmlEngine::ObjectOwnership</a>.</p></div>
4922    #[inline(always)]
4923    pub unsafe fn create(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
4924        let ffi_result = {
4925            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_create2(
4926                self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4927            )
4928        };
4929        ::qt_core::QPtr::from_raw(ffi_result)
4930    }
4931
4932    /// <p>Create an object instance from this component using the provided <i>incubator</i>. <i>context</i> specifies the context within which to create the object instance.</p>
4933    ///
4934    /// Calls C++ function: <span style='color: green;'>```void QQmlComponent::create(QQmlIncubator& arg1, QQmlContext* context = …)```</span>.
4935    ///
4936    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance from this component using the provided <i>incubator</i>. <i>context</i> specifies the context within which to create the object instance.</p>
4937    /// <p>If <i>context</i> is 0 (the default), it will create the instance in the engine's <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a>.</p>
4938    /// <p><i>forContext</i> specifies a context that this object creation depends upon. If the <i>forContext</i> is being created asynchronously, and the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">QQmlIncubator::IncubationMode</a> is <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">QQmlIncubator::AsynchronousIfNested</a>, this object will also be created asynchronously. If <i>forContext</i> is 0 (the default), the <i>context</i> will be used for this decision.</p>
4939    /// <p>The created object and its creation status are available via the <i>incubator</i>.</p>
4940    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p></div>
4941    #[inline(always)]
4942    pub unsafe fn create_q_qml_incubator_q_qml_context(
4943        &self,
4944        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlIncubator>>,
4945        context: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
4946    ) {
4947        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_create3(
4948            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4949            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlIncubator>>::cast_into(arg1)
4950                .as_raw_ptr() as *mut crate::QQmlIncubator,
4951            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(context)
4952                .as_raw_ptr() as *mut crate::QQmlContext,
4953        )
4954    }
4955
4956    /// <p>Create an object instance from this component using the provided <i>incubator</i>. <i>context</i> specifies the context within which to create the object instance.</p>
4957    ///
4958    /// Calls C++ function: <span style='color: green;'>```void QQmlComponent::create(QQmlIncubator& arg1)```</span>.
4959    ///
4960    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance from this component using the provided <i>incubator</i>. <i>context</i> specifies the context within which to create the object instance.</p>
4961    /// <p>If <i>context</i> is 0 (the default), it will create the instance in the engine's <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a>.</p>
4962    /// <p><i>forContext</i> specifies a context that this object creation depends upon. If the <i>forContext</i> is being created asynchronously, and the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">QQmlIncubator::IncubationMode</a> is <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">QQmlIncubator::AsynchronousIfNested</a>, this object will also be created asynchronously. If <i>forContext</i> is 0 (the default), the <i>context</i> will be used for this decision.</p>
4963    /// <p>The created object and its creation status are available via the <i>incubator</i>.</p>
4964    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p></div>
4965    #[inline(always)]
4966    pub unsafe fn create_q_qml_incubator(
4967        &self,
4968        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlIncubator>>,
4969    ) {
4970        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_create4(
4971            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
4972            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlIncubator>>::cast_into(arg1)
4973                .as_raw_ptr() as *mut crate::QQmlIncubator,
4974        )
4975    }
4976
4977    /// <p>Create an object instance of this component, and initialize its toplevel properties with <i>initialProperties</i>. <i>context</i> specifies the context where the object instance is to be created.</p>
4978    ///
4979    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlComponent::createWithInitialProperties(const QMap<QString, QVariant>& initialProperties, QQmlContext* context = …)```</span>.
4980    ///
4981    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#createWithInitialProperties">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance of this component, and initialize its toplevel properties with <i>initialProperties</i>. <i>context</i> specifies the context where the object instance is to be created.</p>
4982    /// <p>This function was introduced in  Qt 5.14.</p>
4983    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>.</p></div>
4984    #[inline(always)]
4985    #[cfg_attr(
4986        feature = "ritual_rustdoc_nightly",
4987        doc(cfg(cpp_lib_version = "5.14.0"))
4988    )]
4989    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
4990    pub unsafe fn create_with_initial_properties_2a(
4991        &self,
4992        initial_properties: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>,
4993        context: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
4994    ) -> ::qt_core::QPtr<::qt_core::QObject> {
4995        let ffi_result = {
4996            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_createWithInitialProperties(self as *const crate::QQmlComponent as *mut crate::QQmlComponent, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>::cast_into(initial_properties).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(context).as_raw_ptr() as *mut crate::QQmlContext)
4997        };
4998        ::qt_core::QPtr::from_raw(ffi_result)
4999    }
5000
5001    /// <p>Create an object instance of this component, and initialize its toplevel properties with <i>initialProperties</i>. <i>context</i> specifies the context where the object instance is to be created.</p>
5002    ///
5003    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlComponent::createWithInitialProperties(const QMap<QString, QVariant>& initialProperties)```</span>.
5004    ///
5005    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#createWithInitialProperties">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an object instance of this component, and initialize its toplevel properties with <i>initialProperties</i>. <i>context</i> specifies the context where the object instance is to be created.</p>
5006    /// <p>This function was introduced in  Qt 5.14.</p>
5007    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>.</p></div>
5008    #[inline(always)]
5009    #[cfg_attr(
5010        feature = "ritual_rustdoc_nightly",
5011        doc(cfg(cpp_lib_version = "5.14.0"))
5012    )]
5013    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
5014    pub unsafe fn create_with_initial_properties_1a(
5015        &self,
5016        initial_properties: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>,
5017    ) -> ::qt_core::QPtr<::qt_core::QObject> {
5018        let ffi_result = {
5019            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_createWithInitialProperties1(self as *const crate::QQmlComponent as *mut crate::QQmlComponent, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>::cast_into(initial_properties).as_raw_ptr())
5020        };
5021        ::qt_core::QPtr::from_raw(ffi_result)
5022    }
5023
5024    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> the component was created in. This is only valid for components created directly from QML.</p>
5025    ///
5026    /// Calls C++ function: <span style='color: green;'>```QQmlContext* QQmlComponent::creationContext() const```</span>.
5027    ///
5028    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#creationContext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> the component was created in. This is only valid for components created directly from QML.</p></div>
5029    #[inline(always)]
5030    pub unsafe fn creation_context(&self) -> ::qt_core::QPtr<crate::QQmlContext> {
5031        let ffi_result = {
5032            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_creationContext(
5033                self as *const crate::QQmlComponent,
5034            )
5035        };
5036        ::qt_core::QPtr::from_raw(ffi_result)
5037    }
5038
5039    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> of this component.</p>
5040    ///
5041    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* QQmlComponent::engine() const```</span>.
5042    ///
5043    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#engine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> of this component.</p>
5044    /// <p>This function was introduced in  Qt 5.12.</p></div>
5045    #[inline(always)]
5046    #[cfg_attr(
5047        feature = "ritual_rustdoc_nightly",
5048        doc(cfg(any(
5049            cpp_lib_version = "5.13.0",
5050            cpp_lib_version = "5.12.2",
5051            cpp_lib_version = "5.14.0"
5052        )))
5053    )]
5054    #[cfg(any(
5055        any(
5056            cpp_lib_version = "5.13.0",
5057            cpp_lib_version = "5.12.2",
5058            cpp_lib_version = "5.14.0"
5059        ),
5060        feature = "ritual_rustdoc"
5061    ))]
5062    pub unsafe fn engine(&self) -> ::qt_core::QPtr<crate::QQmlEngine> {
5063        let ffi_result = {
5064            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_engine(self as *const crate::QQmlComponent)
5065        };
5066        ::qt_core::QPtr::from_raw(ffi_result)
5067    }
5068
5069    /// Calls C++ function: <span style='color: green;'>```QString QQmlComponent::errorString() const```</span>.
5070    #[inline(always)]
5071    pub unsafe fn error_string(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
5072        let ffi_result = {
5073            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_errorString(
5074                self as *const crate::QQmlComponent,
5075            )
5076        };
5077        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5078    }
5079
5080    /// <p>Returns the list of errors that occurred during the last compile or create operation. An empty list is returned if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isError">isError</a>() is not set.</p>
5081    ///
5082    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError> QQmlComponent::errors() const```</span>.
5083    ///
5084    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#errors">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of errors that occurred during the last compile or create operation. An empty list is returned if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isError">isError</a>() is not set.</p></div>
5085    #[inline(always)]
5086    pub unsafe fn errors(&self) -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
5087        let ffi_result = {
5088            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_errors(self as *const crate::QQmlComponent)
5089        };
5090        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5091    }
5092
5093    /// <p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Error</a>.</p>
5094    ///
5095    /// Calls C++ function: <span style='color: green;'>```bool QQmlComponent::isError() const```</span>.
5096    ///
5097    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Error</a>.</p></div>
5098    #[inline(always)]
5099    pub unsafe fn is_error(&self) -> bool {
5100        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_isError(self as *const crate::QQmlComponent)
5101    }
5102
5103    /// <p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Loading</a>.</p>
5104    ///
5105    /// Calls C++ function: <span style='color: green;'>```bool QQmlComponent::isLoading() const```</span>.
5106    ///
5107    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isLoading">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Loading</a>.</p></div>
5108    #[inline(always)]
5109    pub unsafe fn is_loading(&self) -> bool {
5110        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_isLoading(self as *const crate::QQmlComponent)
5111    }
5112
5113    /// <p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Null</a>.</p>
5114    ///
5115    /// Calls C++ function: <span style='color: green;'>```bool QQmlComponent::isNull() const```</span>.
5116    ///
5117    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isNull">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Null</a>.</p></div>
5118    #[inline(always)]
5119    pub unsafe fn is_null(&self) -> bool {
5120        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_isNull(self as *const crate::QQmlComponent)
5121    }
5122
5123    /// <p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Ready</a>.</p>
5124    ///
5125    /// Calls C++ function: <span style='color: green;'>```bool QQmlComponent::isReady() const```</span>.
5126    ///
5127    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isReady">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>() == <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">QQmlComponent::Ready</a>.</p></div>
5128    #[inline(always)]
5129    pub unsafe fn is_ready(&self) -> bool {
5130        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_isReady(self as *const crate::QQmlComponent)
5131    }
5132
5133    /// <p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>.</p>
5134    ///
5135    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlComponent::loadUrl(const QUrl& url)```</span>.
5136    ///
5137    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>.</p>
5138    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
5139    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p></div>
5140    #[inline(always)]
5141    pub unsafe fn load_url_1a(
5142        &self,
5143        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5144    ) {
5145        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_loadUrl(
5146            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
5147            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
5148        )
5149    }
5150
5151    /// <p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5152    ///
5153    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlComponent::loadUrl(const QUrl& url, QQmlComponent::CompilationMode mode)```</span>.
5154    ///
5155    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Load the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the provided <i>url</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5156    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
5157    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p></div>
5158    #[inline(always)]
5159    pub unsafe fn load_url_2a(
5160        &self,
5161        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5162        mode: crate::q_qml_component::CompilationMode,
5163    ) {
5164        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_loadUrl1(
5165            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
5166            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
5167            mode,
5168        )
5169    }
5170
5171    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlComponent::metaObject() const```</span>.
5172    #[inline(always)]
5173    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
5174        let ffi_result = {
5175            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_metaObject(
5176                self as *const crate::QQmlComponent,
5177            )
5178        };
5179        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
5180    }
5181
5182    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QObject* parent = …)```</span>.
5183    #[inline(always)]
5184    pub unsafe fn from_q_object(
5185        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5186    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5187        let ffi_result = {
5188            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent(
5189                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
5190                    .as_raw_ptr() as *mut ::qt_core::QObject,
5191            )
5192        };
5193        ::qt_core::QBox::from_raw(ffi_result)
5194    }
5195
5196    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> with no data and give it the specified <i>engine</i> and <i>parent</i>. Set the data with <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>().</p>
5197    ///
5198    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, QObject* parent = …)```</span>.
5199    ///
5200    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> with no data and give it the specified <i>engine</i> and <i>parent</i>. Set the data with <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>().</p></div>
5201    #[inline(always)]
5202    pub unsafe fn from_q_qml_engine_q_object(
5203        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5204        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5205    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5206        let ffi_result = {
5207            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent1(
5208                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5209                    .as_raw_ptr() as *mut crate::QQmlEngine,
5210                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
5211                    .as_raw_ptr() as *mut ::qt_core::QObject,
5212            )
5213        };
5214        ::qt_core::QBox::from_raw(ffi_result)
5215    }
5216
5217    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5218    ///
5219    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QString& fileName, QObject* parent = …)```</span>.
5220    ///
5221    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5222    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5223    #[inline(always)]
5224    pub unsafe fn from_q_qml_engine_q_string_q_object(
5225        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5226        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5227        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5228    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5229        let ffi_result = {
5230            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent2(
5231                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5232                    .as_raw_ptr() as *mut crate::QQmlEngine,
5233                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
5234                    .as_raw_ptr(),
5235                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
5236                    .as_raw_ptr() as *mut ::qt_core::QObject,
5237            )
5238        };
5239        ::qt_core::QBox::from_raw(ffi_result)
5240    }
5241
5242    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5243    ///
5244    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QString& fileName, QQmlComponent::CompilationMode mode, QObject* parent = …)```</span>.
5245    ///
5246    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5247    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5248    #[inline(always)]
5249    pub unsafe fn from_q_qml_engine_q_string_compilation_mode_q_object(
5250        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5251        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5252        mode: crate::q_qml_component::CompilationMode,
5253        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5254    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5255        let ffi_result = {
5256            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent3(
5257                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5258                    .as_raw_ptr() as *mut crate::QQmlEngine,
5259                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
5260                    .as_raw_ptr(),
5261                mode,
5262                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
5263                    .as_raw_ptr() as *mut ::qt_core::QObject,
5264            )
5265        };
5266        ::qt_core::QBox::from_raw(ffi_result)
5267    }
5268
5269    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5270    ///
5271    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QUrl& url, QObject* parent = …)```</span>.
5272    ///
5273    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-4">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5274    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
5275    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p>
5276    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5277    #[inline(always)]
5278    pub unsafe fn from_q_qml_engine_q_url_q_object(
5279        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5280        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5281        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5282    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5283        let ffi_result = {
5284            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent4(
5285                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5286                    .as_raw_ptr() as *mut crate::QQmlEngine,
5287                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url)
5288                    .as_raw_ptr(),
5289                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
5290                    .as_raw_ptr() as *mut ::qt_core::QObject,
5291            )
5292        };
5293        ::qt_core::QBox::from_raw(ffi_result)
5294    }
5295
5296    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5297    ///
5298    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QUrl& url, QQmlComponent::CompilationMode mode, QObject* parent = …)```</span>.
5299    ///
5300    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-5">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5301    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
5302    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p>
5303    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5304    #[inline(always)]
5305    pub unsafe fn from_q_qml_engine_q_url_compilation_mode_q_object(
5306        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5307        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5308        mode: crate::q_qml_component::CompilationMode,
5309        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5310    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5311        let ffi_result = {
5312            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent5(
5313                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5314                    .as_raw_ptr() as *mut crate::QQmlEngine,
5315                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url)
5316                    .as_raw_ptr(),
5317                mode,
5318                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
5319                    .as_raw_ptr() as *mut ::qt_core::QObject,
5320            )
5321        };
5322        ::qt_core::QBox::from_raw(ffi_result)
5323    }
5324
5325    /// <p>Components are reusable, encapsulated QML types with well-defined interfaces.</p>
5326    ///
5327    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent()```</span>.
5328    ///
5329    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Components are reusable, encapsulated QML types with well-defined interfaces.</p>
5330    /// <p>A <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> instance can be created from a QML file. For example, if there is a <code>main.qml</code> file like this:</p>
5331    /// <pre class="qml">
5332    ///
5333    ///   import QtQuick 2.0
5334    ///
5335    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qml-qtquick-item.html">Item</a></span> {
5336    /// &#32;     <span class="name">width</span>: <span class="number">200</span>
5337    /// &#32;     <span class="name">height</span>: <span class="number">200</span>
5338    ///   }
5339    ///
5340    /// </pre>
5341    /// <p>The following code loads this QML file as a component, creates an instance of this component using <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">create</a>(), and then queries the <a href="http://doc.qt.io/qt-5/qml-qtquick-item.html">Item</a>'s <a href="http://doc.qt.io/qt-5/qml-qtquick-item.html#width-prop">width</a> value:</p>
5342    /// <pre class="cpp">
5343    ///
5344    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> <span class="operator">*</span>engine <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span>;
5345    ///   <span class="type">QQmlComponent</span> component(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"main.qml"</span>));
5346    ///
5347    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> <span class="operator">*</span>myObject <span class="operator">=</span> component<span class="operator">.</span>create();
5348    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span>item <span class="operator">=</span> qobject_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span><span class="operator">*</span><span class="operator">&gt;</span>(myObject);
5349    ///   <span class="type">int</span> width <span class="operator">=</span> item<span class="operator">-</span><span class="operator">&gt;</span>width();  <span class="comment">// width = 200</span>
5350    ///
5351    /// </pre>
5352    /// <p>To create instances of a component in code where a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> instance is not available, you can use <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlContext">qmlContext</a>() or <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlEngine">qmlEngine</a>(). For example, in the scenario below, child items are being created within a <a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a> subclass:</p>
5353    /// <pre class="cpp">
5354    ///
5355    ///   <span class="type">void</span> MyCppItem<span class="operator">::</span>init()
5356    ///   {
5357    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> <span class="operator">*</span>engine <span class="operator">=</span> qmlEngine(<span class="keyword">this</span>);
5358    /// &#32;     <span class="comment">// Or:</span>
5359    /// &#32;     <span class="comment">// QQmlEngine *engine = qmlContext(this)-&gt;engine();</span>
5360    /// &#32;     <span class="type">QQmlComponent</span> component(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"MyItem.qml"</span>));
5361    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span> <span class="operator">*</span>childItem <span class="operator">=</span> qobject_cast<span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qquickitem.html">QQuickItem</a></span><span class="operator">*</span><span class="operator">&gt;</span>(component<span class="operator">.</span>create());
5362    /// &#32;     childItem<span class="operator">-</span><span class="operator">&gt;</span>setParentItem(<span class="keyword">this</span>);
5363    ///   }
5364    ///
5365    /// </pre>
5366    /// <p>Note that these functions will return <code>null</code> when called inside the constructor of a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> subclass, as the instance will not yet have a context nor engine.</p>
5367    /// <a name="network-components"></a>
5368    /// <h4>Network Components</h4>
5369    /// <p>If the URL passed to <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> is a network resource, or if the QML document references a network resource, the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> has to fetch the network data before it is able to create objects. In this case, the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> will have a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">Loading</a> <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">status</a>. An application will have to wait until the component is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">Ready</a> before calling <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>().</p>
5370    /// <p>The following example shows how to load a QML file from a network resource. After creating the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a>, it tests whether the component is loading. If it is, it connects to the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#statusChanged">QQmlComponent::statusChanged</a>() signal and otherwise calls the <code>continueLoading()</code> method directly. Note that <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#isLoading">QQmlComponent::isLoading</a>() may be false for a network component if the component has been cached and is ready immediately.</p>
5371    /// <pre class="cpp">
5372    ///
5373    ///   MyApplication<span class="operator">::</span>MyApplication()
5374    ///   {
5375    /// &#32;     <span class="comment">// ...</span>
5376    /// &#32;     component <span class="operator">=</span> <span class="keyword">new</span> <span class="type">QQmlComponent</span>(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>(<span class="string">"http://www.example.com/main.qml"</span>));
5377    /// &#32;     <span class="keyword">if</span> (component<span class="operator">-</span><span class="operator">&gt;</span>isLoading())
5378    /// &#32;   &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span><span class="operator">::</span>connect(component<span class="operator">,</span> SIGNAL(statusChanged(<span class="type">QQmlComponent</span><span class="operator">::</span>Status))<span class="operator">,</span>
5379    /// &#32;   &#32;   &#32;   &#32;   &#32;   &#32;      <span class="keyword">this</span><span class="operator">,</span> SLOT(continueLoading()));
5380    /// &#32;     <span class="keyword">else</span>
5381    /// &#32;   &#32;     continueLoading();
5382    ///   }
5383    ///
5384    ///   <span class="type">void</span> MyApplication<span class="operator">::</span>continueLoading()
5385    ///   {
5386    /// &#32;     <span class="keyword">if</span> (component<span class="operator">-</span><span class="operator">&gt;</span>isError()) {
5387    /// &#32;   &#32;     <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> component<span class="operator">-</span><span class="operator">&gt;</span>errors();
5388    /// &#32;     } <span class="keyword">else</span> {
5389    /// &#32;   &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> <span class="operator">*</span>myObject <span class="operator">=</span> component<span class="operator">-</span><span class="operator">&gt;</span>create();
5390    /// &#32;     }
5391    ///   }
5392    ///
5393    /// </pre></div>
5394    #[inline(always)]
5395    pub unsafe fn new() -> ::qt_core::QBox<crate::QQmlComponent> {
5396        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent6() };
5397        ::qt_core::QBox::from_raw(ffi_result)
5398    }
5399
5400    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> with no data and give it the specified <i>engine</i> and <i>parent</i>. Set the data with <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>().</p>
5401    ///
5402    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1)```</span>.
5403    ///
5404    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> with no data and give it the specified <i>engine</i> and <i>parent</i>. Set the data with <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>().</p></div>
5405    #[inline(always)]
5406    pub unsafe fn from_q_qml_engine(
5407        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5408    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5409        let ffi_result = {
5410            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent7(
5411                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5412                    .as_raw_ptr() as *mut crate::QQmlEngine,
5413            )
5414        };
5415        ::qt_core::QBox::from_raw(ffi_result)
5416    }
5417
5418    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5419    ///
5420    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QString& fileName)```</span>.
5421    ///
5422    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5423    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5424    #[inline(always)]
5425    pub unsafe fn from_q_qml_engine_q_string(
5426        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5427        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5428    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5429        let ffi_result = {
5430            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent8(
5431                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5432                    .as_raw_ptr() as *mut crate::QQmlEngine,
5433                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
5434                    .as_raw_ptr(),
5435            )
5436        };
5437        ::qt_core::QBox::from_raw(ffi_result)
5438    }
5439
5440    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5441    ///
5442    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QString& fileName, QQmlComponent::CompilationMode mode)```</span>.
5443    ///
5444    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>fileName</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5445    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5446    #[inline(always)]
5447    pub unsafe fn from_q_qml_engine_q_string_compilation_mode(
5448        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5449        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5450        mode: crate::q_qml_component::CompilationMode,
5451    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5452        let ffi_result = {
5453            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent9(
5454                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5455                    .as_raw_ptr() as *mut crate::QQmlEngine,
5456                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
5457                    .as_raw_ptr(),
5458                mode,
5459            )
5460        };
5461        ::qt_core::QBox::from_raw(ffi_result)
5462    }
5463
5464    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5465    ///
5466    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QUrl& url)```</span>.
5467    ///
5468    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-4">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>.</p>
5469    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
5470    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p>
5471    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5472    #[inline(always)]
5473    pub unsafe fn from_q_qml_engine_q_url(
5474        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5475        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5476    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5477        let ffi_result = {
5478            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent10(
5479                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5480                    .as_raw_ptr() as *mut crate::QQmlEngine,
5481                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url)
5482                    .as_raw_ptr(),
5483            )
5484        };
5485        ::qt_core::QBox::from_raw(ffi_result)
5486    }
5487
5488    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5489    ///
5490    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlComponent::QQmlComponent(QQmlEngine* arg1, const QUrl& url, QQmlComponent::CompilationMode mode)```</span>.
5491    ///
5492    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#QQmlComponent-5">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> from the given <i>url</i> and give it the specified <i>parent</i> and <i>engine</i>. If <i>mode</i> is <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#CompilationMode-enum">Asynchronous</a>, the component will be loaded and compiled asynchronously.</p>
5493    /// <p>Ensure that the URL provided is full and correct, in particular, use <a href="http://doc.qt.io/qt-5/qurl.html#fromLocalFile">QUrl::fromLocalFile</a>() when loading a file from the local filesystem.</p>
5494    /// <p>Relative paths will be resolved against <a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl()</a>, which is the current working directory unless specified.</p>
5495    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>().</p></div>
5496    #[inline(always)]
5497    pub unsafe fn from_q_qml_engine_q_url_compilation_mode(
5498        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
5499        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5500        mode: crate::q_qml_component::CompilationMode,
5501    ) -> ::qt_core::QBox<crate::QQmlComponent> {
5502        let ffi_result = {
5503            crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_QQmlComponent11(
5504                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
5505                    .as_raw_ptr() as *mut crate::QQmlEngine,
5506                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url)
5507                    .as_raw_ptr(),
5508                mode,
5509            )
5510        };
5511        ::qt_core::QBox::from_raw(ffi_result)
5512    }
5513
5514    /// <p>The progress of loading the component, from 0.0 (nothing loaded) to 1.0 (finished).</p>
5515    ///
5516    /// Calls C++ function: <span style='color: green;'>```double QQmlComponent::progress() const```</span>.
5517    ///
5518    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#progress-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The progress of loading the component, from 0.0 (nothing loaded) to 1.0 (finished).</p>
5519    /// <p><b>Access functions:</b></p>
5520    /// <div class="table"><table class="alignedsummary">
5521    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> qreal </td><td class="memItemRight bottomAlign"><span class="name"><b>progress</b></span>() const</td></tr>
5522    /// </tbody></table></div>
5523    /// <p><b>Notifier signal:</b></p>
5524    /// <div class="table"><table class="alignedsummary">
5525    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#progressChanged">progressChanged</a></b></span>(qreal <i>progress</i>)</td></tr>
5526    /// </tbody></table></div></div>
5527    #[inline(always)]
5528    pub unsafe fn progress(&self) -> ::std::os::raw::c_double {
5529        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_progress(self as *const crate::QQmlComponent)
5530    }
5531
5532    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlComponent::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
5533    #[inline(always)]
5534    pub unsafe fn qt_metacall(
5535        &self,
5536        arg1: ::qt_core::q_meta_object::Call,
5537        arg2: ::std::os::raw::c_int,
5538        arg3: *mut *mut ::std::ffi::c_void,
5539    ) -> ::std::os::raw::c_int {
5540        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_qt_metacall(
5541            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
5542            arg1,
5543            arg2,
5544            arg3,
5545        )
5546    }
5547
5548    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlComponent::qt_metacast(const char* arg1)```</span>.
5549    #[inline(always)]
5550    pub unsafe fn qt_metacast(
5551        &self,
5552        arg1: *const ::std::os::raw::c_char,
5553    ) -> *mut ::std::ffi::c_void {
5554        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_qt_metacast(
5555            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
5556            arg1,
5557        )
5558    }
5559
5560    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to use the given QML <i>data</i>. If <i>url</i> is provided, it is used to set the component name and to provide a base path for items resolved by this component.</p>
5561    ///
5562    /// Calls C++ function: <span style='color: green;'>```[slot] void QQmlComponent::setData(const QByteArray& arg1, const QUrl& baseUrl)```</span>.
5563    ///
5564    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> to use the given QML <i>data</i>. If <i>url</i> is provided, it is used to set the component name and to provide a base path for items resolved by this component.</p></div>
5565    #[inline(always)]
5566    pub unsafe fn set_data(
5567        &self,
5568        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
5569        base_url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
5570    ) {
5571        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_setData(
5572            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
5573            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(arg1)
5574                .as_raw_ptr(),
5575            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(base_url)
5576                .as_raw_ptr(),
5577        )
5578    }
5579
5580    /// <p>Set toplevel <i>properties</i> of the <i>component</i>.</p>
5581    ///
5582    /// Calls C++ function: <span style='color: green;'>```void QQmlComponent::setInitialProperties(QObject* component, const QMap<QString, QVariant>& properties)```</span>.
5583    ///
5584    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setInitialProperties">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set toplevel <i>properties</i> of the <i>component</i>.</p>
5585    /// <p>This method provides advanced control over component instance creation. In general, programmers should use <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#createWithInitialProperties">QQmlComponent::createWithInitialProperties</a> to create a component.</p>
5586    /// <p>Use this method after <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#beginCreate">beginCreate</a> and before <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#completeCreate">completeCreate</a> has been called. If a provided property does not exist, a warning is issued.</p>
5587    /// <p>This function was introduced in  Qt 5.14.</p></div>
5588    #[inline(always)]
5589    #[cfg_attr(
5590        feature = "ritual_rustdoc_nightly",
5591        doc(cfg(cpp_lib_version = "5.14.0"))
5592    )]
5593    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
5594    pub unsafe fn set_initial_properties(
5595        &self,
5596        component: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
5597        properties: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>,
5598    ) {
5599        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_setInitialProperties(
5600            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
5601            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(component)
5602                .as_raw_ptr() as *mut ::qt_core::QObject,
5603            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QMapOfQStringQVariant>>::cast_into(
5604                properties,
5605            )
5606            .as_raw_ptr(),
5607        )
5608    }
5609
5610    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
5611    #[inline(always)]
5612    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
5613        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_staticMetaObject() };
5614        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
5615            .expect("attempted to construct a null Ref")
5616    }
5617
5618    /// <p>The component's current <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">status</a>.</p>
5619    ///
5620    /// Calls C++ function: <span style='color: green;'>```QQmlComponent::Status QQmlComponent::status() const```</span>.
5621    ///
5622    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The component's current <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#Status-enum">status</a>.</p>
5623    /// <p><b>Access functions:</b></p>
5624    /// <div class="table"><table class="alignedsummary">
5625    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QQmlComponent::Status </td><td class="memItemRight bottomAlign"><span class="name"><b>status</b></span>() const</td></tr>
5626    /// </tbody></table></div>
5627    /// <p><b>Notifier signal:</b></p>
5628    /// <div class="table"><table class="alignedsummary">
5629    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qqmlcomponent.html#statusChanged">statusChanged</a></b></span>(QQmlComponent::Status <i>status</i>)</td></tr>
5630    /// </tbody></table></div></div>
5631    #[inline(always)]
5632    pub unsafe fn status(&self) -> crate::q_qml_component::Status {
5633        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_status(self as *const crate::QQmlComponent)
5634    }
5635
5636    /// Calls C++ function: <span style='color: green;'>```static QString QQmlComponent::tr(const char* s, const char* c, int n)```</span>.
5637    #[inline(always)]
5638    pub unsafe fn tr(
5639        s: *const ::std::os::raw::c_char,
5640        c: *const ::std::os::raw::c_char,
5641        n: ::std::os::raw::c_int,
5642    ) -> ::cpp_core::CppBox<::qt_core::QString> {
5643        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_tr(s, c, n) };
5644        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5645    }
5646
5647    /// Calls C++ function: <span style='color: green;'>```static QString QQmlComponent::trUtf8(const char* s, const char* c, int n)```</span>.
5648    #[inline(always)]
5649    pub unsafe fn tr_utf8(
5650        s: *const ::std::os::raw::c_char,
5651        c: *const ::std::os::raw::c_char,
5652        n: ::std::os::raw::c_int,
5653    ) -> ::cpp_core::CppBox<::qt_core::QString> {
5654        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_trUtf8(s, c, n) };
5655        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5656    }
5657
5658    /// <p>The component URL. This is the URL passed to either the constructor, or the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>(), or <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>() methods.</p>
5659    ///
5660    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlComponent::url() const```</span>.
5661    ///
5662    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#url-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The component URL. This is the URL passed to either the constructor, or the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#loadUrl">loadUrl</a>(), or <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#setData">setData</a>() methods.</p>
5663    /// <p><b>Access functions:</b></p>
5664    /// <div class="table"><table class="alignedsummary">
5665    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>url</b></span>() const</td></tr>
5666    /// </tbody></table></div></div>
5667    #[inline(always)]
5668    pub unsafe fn url(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
5669        let ffi_result =
5670            { crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_url(self as *const crate::QQmlComponent) };
5671        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5672    }
5673}
5674
5675pub mod q_qml_context {
5676    //! C++ type: <span style='color: green;'>```QQmlContext```</span>
5677
5678    /// <p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p>
5679    ///
5680    /// C++ class: <span style='color: green;'>```QQmlContext::PropertyPair```</span>.
5681    ///
5682    /// <a href="http://doc.qt.io/qt-5/qqmlcontext-propertypair.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p></div>
5683    #[repr(C)]
5684    pub struct PropertyPair {
5685        _unused: u8,
5686    }
5687    impl PropertyPair {
5688        /// <p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p>
5689        ///
5690        /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair& QQmlContext::PropertyPair::operator=(const QQmlContext::PropertyPair& other)```</span>.
5691        ///
5692        /// <a href="http://doc.qt.io/qt-5/qqmlcontext-propertypair.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p></div>
5693        #[inline(always)]
5694        #[cfg_attr(
5695            feature = "ritual_rustdoc_nightly",
5696            doc(cfg(any(
5697                cpp_lib_version = "5.13.0",
5698                cpp_lib_version = "5.11.3",
5699                cpp_lib_version = "5.12.2",
5700                cpp_lib_version = "5.14.0"
5701            )))
5702        )]
5703        #[cfg(any(
5704            any(
5705                cpp_lib_version = "5.13.0",
5706                cpp_lib_version = "5.11.3",
5707                cpp_lib_version = "5.12.2",
5708                cpp_lib_version = "5.14.0"
5709            ),
5710            feature = "ritual_rustdoc"
5711        ))]
5712        pub unsafe fn copy_from(
5713            &self,
5714            other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
5715        ) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
5716            let ffi_result = {
5717                crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_operator_(self as *const crate::q_qml_context::PropertyPair as *mut crate::q_qml_context::PropertyPair, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(other).as_raw_ptr())
5718            };
5719            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
5720        }
5721
5722        /// Returns a reference to the <span style='color: green;'>```name```</span> field.
5723        #[inline(always)]
5724        #[cfg_attr(
5725            feature = "ritual_rustdoc_nightly",
5726            doc(cfg(any(
5727                cpp_lib_version = "5.13.0",
5728                cpp_lib_version = "5.11.3",
5729                cpp_lib_version = "5.12.2",
5730                cpp_lib_version = "5.14.0"
5731            )))
5732        )]
5733        #[cfg(any(
5734            any(
5735                cpp_lib_version = "5.13.0",
5736                cpp_lib_version = "5.11.3",
5737                cpp_lib_version = "5.12.2",
5738                cpp_lib_version = "5.14.0"
5739            ),
5740            feature = "ritual_rustdoc"
5741        ))]
5742        pub unsafe fn name(&self) -> ::cpp_core::Ref<::qt_core::QString> {
5743            let ffi_result = {
5744                crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_name(
5745                    self as *const crate::q_qml_context::PropertyPair,
5746                )
5747            };
5748            ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QString)
5749                .expect("attempted to construct a null Ref")
5750        }
5751
5752        /// Returns a mutable reference to the <span style='color: green;'>```name```</span> field.
5753        #[inline(always)]
5754        #[cfg_attr(
5755            feature = "ritual_rustdoc_nightly",
5756            doc(cfg(any(
5757                cpp_lib_version = "5.13.0",
5758                cpp_lib_version = "5.11.3",
5759                cpp_lib_version = "5.12.2",
5760                cpp_lib_version = "5.14.0"
5761            )))
5762        )]
5763        #[cfg(any(
5764            any(
5765                cpp_lib_version = "5.13.0",
5766                cpp_lib_version = "5.11.3",
5767                cpp_lib_version = "5.12.2",
5768                cpp_lib_version = "5.14.0"
5769            ),
5770            feature = "ritual_rustdoc"
5771        ))]
5772        pub unsafe fn name_mut(&self) -> ::cpp_core::Ref<::qt_core::QString> {
5773            let ffi_result = {
5774                crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_name_mut(
5775                    self as *const crate::q_qml_context::PropertyPair
5776                        as *mut crate::q_qml_context::PropertyPair,
5777                )
5778            };
5779            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
5780        }
5781
5782        /// <p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p>
5783        ///
5784        /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlContext::PropertyPair::PropertyPair()```</span>.
5785        ///
5786        /// <a href="http://doc.qt.io/qt-5/qqmlcontext-propertypair.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p></div>
5787        #[inline(always)]
5788        #[cfg_attr(
5789            feature = "ritual_rustdoc_nightly",
5790            doc(cfg(any(
5791                cpp_lib_version = "5.13.0",
5792                cpp_lib_version = "5.11.3",
5793                cpp_lib_version = "5.12.2",
5794                cpp_lib_version = "5.14.0"
5795            )))
5796        )]
5797        #[cfg(any(
5798            any(
5799                cpp_lib_version = "5.13.0",
5800                cpp_lib_version = "5.11.3",
5801                cpp_lib_version = "5.12.2",
5802                cpp_lib_version = "5.14.0"
5803            ),
5804            feature = "ritual_rustdoc"
5805        ))]
5806        pub unsafe fn new() -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
5807            let ffi_result =
5808                { crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_PropertyPair() };
5809            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5810        }
5811
5812        /// <p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p>
5813        ///
5814        /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlContext::PropertyPair::PropertyPair(const QQmlContext::PropertyPair& other)```</span>.
5815        ///
5816        /// <a href="http://doc.qt.io/qt-5/qqmlcontext-propertypair.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p></div>
5817        #[inline(always)]
5818        #[cfg_attr(
5819            feature = "ritual_rustdoc_nightly",
5820            doc(cfg(any(
5821                cpp_lib_version = "5.13.0",
5822                cpp_lib_version = "5.11.3",
5823                cpp_lib_version = "5.12.2",
5824                cpp_lib_version = "5.14.0"
5825            )))
5826        )]
5827        #[cfg(any(
5828            any(
5829                cpp_lib_version = "5.13.0",
5830                cpp_lib_version = "5.11.3",
5831                cpp_lib_version = "5.12.2",
5832                cpp_lib_version = "5.14.0"
5833            ),
5834            feature = "ritual_rustdoc"
5835        ))]
5836        pub unsafe fn new_copy(
5837            other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
5838        ) -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
5839            let ffi_result = {
5840                crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_PropertyPair1(::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(other).as_raw_ptr())
5841            };
5842            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5843        }
5844
5845        /// Sets the value of the <span style='color: green;'>```name```</span> field.
5846        #[inline(always)]
5847        #[cfg_attr(
5848            feature = "ritual_rustdoc_nightly",
5849            doc(cfg(any(
5850                cpp_lib_version = "5.13.0",
5851                cpp_lib_version = "5.11.3",
5852                cpp_lib_version = "5.12.2",
5853                cpp_lib_version = "5.14.0"
5854            )))
5855        )]
5856        #[cfg(any(
5857            any(
5858                cpp_lib_version = "5.13.0",
5859                cpp_lib_version = "5.11.3",
5860                cpp_lib_version = "5.12.2",
5861                cpp_lib_version = "5.14.0"
5862            ),
5863            feature = "ritual_rustdoc"
5864        ))]
5865        pub unsafe fn set_name(
5866            &self,
5867            value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5868        ) {
5869            crate::__ffi::ctr_qt_qml_ffi_set_QQmlContext_PropertyPair_name(
5870                self as *const crate::q_qml_context::PropertyPair
5871                    as *mut crate::q_qml_context::PropertyPair,
5872                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(value)
5873                    .as_raw_ptr(),
5874            )
5875        }
5876
5877        /// Sets the value of the <span style='color: green;'>```value```</span> field.
5878        #[inline(always)]
5879        #[cfg_attr(
5880            feature = "ritual_rustdoc_nightly",
5881            doc(cfg(any(
5882                cpp_lib_version = "5.13.0",
5883                cpp_lib_version = "5.11.3",
5884                cpp_lib_version = "5.12.2",
5885                cpp_lib_version = "5.14.0"
5886            )))
5887        )]
5888        #[cfg(any(
5889            any(
5890                cpp_lib_version = "5.13.0",
5891                cpp_lib_version = "5.11.3",
5892                cpp_lib_version = "5.12.2",
5893                cpp_lib_version = "5.14.0"
5894            ),
5895            feature = "ritual_rustdoc"
5896        ))]
5897        pub unsafe fn set_value(
5898            &self,
5899            value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
5900        ) {
5901            crate::__ffi::ctr_qt_qml_ffi_set_QQmlContext_PropertyPair_value(
5902                self as *const crate::q_qml_context::PropertyPair
5903                    as *mut crate::q_qml_context::PropertyPair,
5904                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(value)
5905                    .as_raw_ptr(),
5906            )
5907        }
5908
5909        /// Returns a reference to the <span style='color: green;'>```value```</span> field.
5910        #[inline(always)]
5911        #[cfg_attr(
5912            feature = "ritual_rustdoc_nightly",
5913            doc(cfg(any(
5914                cpp_lib_version = "5.13.0",
5915                cpp_lib_version = "5.11.3",
5916                cpp_lib_version = "5.12.2",
5917                cpp_lib_version = "5.14.0"
5918            )))
5919        )]
5920        #[cfg(any(
5921            any(
5922                cpp_lib_version = "5.13.0",
5923                cpp_lib_version = "5.11.3",
5924                cpp_lib_version = "5.12.2",
5925                cpp_lib_version = "5.14.0"
5926            ),
5927            feature = "ritual_rustdoc"
5928        ))]
5929        pub unsafe fn value(&self) -> ::cpp_core::Ref<::qt_core::QVariant> {
5930            let ffi_result = {
5931                crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_value(
5932                    self as *const crate::q_qml_context::PropertyPair,
5933                )
5934            };
5935            ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QVariant)
5936                .expect("attempted to construct a null Ref")
5937        }
5938
5939        /// Returns a mutable reference to the <span style='color: green;'>```value```</span> field.
5940        #[inline(always)]
5941        #[cfg_attr(
5942            feature = "ritual_rustdoc_nightly",
5943            doc(cfg(any(
5944                cpp_lib_version = "5.13.0",
5945                cpp_lib_version = "5.11.3",
5946                cpp_lib_version = "5.12.2",
5947                cpp_lib_version = "5.14.0"
5948            )))
5949        )]
5950        #[cfg(any(
5951            any(
5952                cpp_lib_version = "5.13.0",
5953                cpp_lib_version = "5.11.3",
5954                cpp_lib_version = "5.12.2",
5955                cpp_lib_version = "5.14.0"
5956            ),
5957            feature = "ritual_rustdoc"
5958        ))]
5959        pub unsafe fn value_mut(&self) -> ::cpp_core::Ref<::qt_core::QVariant> {
5960            let ffi_result = {
5961                crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_value_mut(
5962                    self as *const crate::q_qml_context::PropertyPair
5963                        as *mut crate::q_qml_context::PropertyPair,
5964                )
5965            };
5966            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
5967        }
5968    }
5969
5970    #[cfg_attr(
5971        feature = "ritual_rustdoc_nightly",
5972        doc(cfg(any(
5973            cpp_lib_version = "5.13.0",
5974            cpp_lib_version = "5.11.3",
5975            cpp_lib_version = "5.12.2",
5976            cpp_lib_version = "5.14.0"
5977        )))
5978    )]
5979    #[cfg(any(
5980        any(
5981            cpp_lib_version = "5.13.0",
5982            cpp_lib_version = "5.11.3",
5983            cpp_lib_version = "5.12.2",
5984            cpp_lib_version = "5.14.0"
5985        ),
5986        feature = "ritual_rustdoc"
5987    ))]
5988    impl ::cpp_core::CppDeletable for crate::q_qml_context::PropertyPair {
5989        /// <p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p>
5990        ///
5991        /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlContext::PropertyPair::~PropertyPair()```</span>.
5992        ///
5993        /// <a href="http://doc.qt.io/qt-5/qqmlcontext-propertypair.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This struct contains a property name and a property value. It is used as a parameter for the <code>setContextProperties</code> function.</p></div>
5994        #[inline(always)]
5995        unsafe fn delete(&self) {
5996            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_PropertyPair_dPropertyPair(
5997                self as *const crate::q_qml_context::PropertyPair
5998                    as *mut crate::q_qml_context::PropertyPair,
5999            )
6000        }
6001    }
6002}
6003/// <p>Contexts allow data to be exposed to the QML components instantiated by the QML engine.</p>
6004///
6005/// C++ class: <span style='color: green;'>```QQmlContext```</span>.
6006///
6007/// <a href="http://doc.qt.io/qt-5/qqmlcontext.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Contexts allow data to be exposed to the QML components instantiated by the QML engine.</p>
6008/// <p>Each <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> contains a set of properties, distinct from its <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> properties, that allow data to be explicitly bound to a context by name. The context properties are defined and updated by calling <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">QQmlContext::setContextProperty</a>(). The following example shows a Qt model being bound to a context and then accessed from a QML file.</p>
6009/// <pre class="cpp">
6010///
6011///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> engine;
6012///   <span class="type"><a href="http://doc.qt.io/qt-5/qstringlistmodel.html">QStringListModel</a></span> modelData;
6013///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span> <span class="operator">*</span>context <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span>(engine<span class="operator">.</span>rootContext());
6014///   context<span class="operator">-</span><span class="operator">&gt;</span>setContextProperty(<span class="string">"myModel"</span><span class="operator">,</span> <span class="operator">&amp;</span>modelData);
6015///
6016///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a></span> component(<span class="operator">&amp;</span>engine);
6017///   component<span class="operator">.</span>setData(<span class="string">"import QtQuick 2.0\nListView { model: myModel }"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>());
6018///   <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> <span class="operator">*</span>window <span class="operator">=</span> component<span class="operator">.</span>create(context);
6019///
6020/// </pre>
6021/// <p>Note it is the responsibility of the creator to delete any <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> it constructs. If the <code>context</code> object in the example is no longer needed when the <code>window</code> component instance is destroyed, the <code>context</code> must be destroyed explicitly. The simplest way to ensure this is to set <code>window</code> as the parent of <code>context</code>.</p>
6022/// <p>To simplify binding and maintaining larger data sets, a context object can be set on a <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. All the properties of the context object are available by name in the context, as though they were all individually added through calls to <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">QQmlContext::setContextProperty</a>(). Changes to the property's values are detected through the property's notify signal. Setting a context object is both faster and easier than manually adding and maintaining context property values.</p>
6023/// <p>The following example has the same effect as the previous one, but it uses a context object.</p>
6024/// <pre class="cpp">
6025///
6026///   <span class="keyword">class</span> MyDataSet : <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span> {
6027/// &#32;     <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
6028/// &#32;     Q_PROPERTY(<span class="type"><a href="http://doc.qt.io/qt-5/qabstractitemmodel.html">QAbstractItemModel</a></span> <span class="operator">*</span>myModel READ model NOTIFY modelChanged)
6029/// &#32;     <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
6030///   };
6031///
6032///   MyDataSet myDataSet;
6033///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> engine;
6034///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span> <span class="operator">*</span>context <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span>(engine<span class="operator">.</span>rootContext());
6035///   context<span class="operator">-</span><span class="operator">&gt;</span>setContextObject(<span class="operator">&amp;</span>myDataSet);
6036///
6037///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a></span> component(<span class="operator">&amp;</span>engine);
6038///   component<span class="operator">.</span>setData(<span class="string">"import QtQuick 2.0\nListView { model: myModel }"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>());
6039///   component<span class="operator">.</span>create(context);
6040///
6041/// </pre>
6042/// <p>All properties added explicitly by <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">QQmlContext::setContextProperty</a>() take precedence over the context object's properties.</p>
6043/// <a name="the-context-hierarchy"></a>
6044/// <h4>The Context Hierarchy</h4>
6045/// <p>Contexts form a hierarchy. The root of this hierarchy is the QML engine's <a href="http://doc.qt.io/qt-5/qqmlengine.html#rootContext">root context</a>. Child contexts inherit the context properties of their parents; if a child context sets a context property that already exists in its parent, the new context property overrides that of the parent.</p>
6046/// <p>The following example defines two contexts - <code>context1</code> and <code>context2</code>. The second context overrides the "b" context property inherited from the first with a new value.</p>
6047/// <pre class="cpp">
6048///
6049///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> engine;
6050///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span> <span class="operator">*</span>context1 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span>(engine<span class="operator">.</span>rootContext());
6051///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span> <span class="operator">*</span>context2 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">QQmlContext</a></span>(context1);
6052///
6053///   context1<span class="operator">-</span><span class="operator">&gt;</span>setContextProperty(<span class="string">"a"</span><span class="operator">,</span> <span class="number">12</span>);
6054///   context1<span class="operator">-</span><span class="operator">&gt;</span>setContextProperty(<span class="string">"b"</span><span class="operator">,</span> <span class="number">12</span>);
6055///
6056///   context2<span class="operator">-</span><span class="operator">&gt;</span>setContextProperty(<span class="string">"b"</span><span class="operator">,</span> <span class="number">15</span>);
6057///
6058/// </pre>
6059/// <p>While QML objects instantiated in a context are not strictly owned by that context, their bindings are. If a context is destroyed, the property bindings of outstanding QML objects will stop evaluating.</p>
6060/// <p><b>Warning:</b> Setting the context object or adding new context properties after an object has been created in that context is an expensive operation (essentially forcing all bindings to reevaluate). Thus whenever possible you should complete "setup" of the context before using it to create any objects.</p></div>
6061#[repr(C)]
6062pub struct QQmlContext {
6063    _unused: u8,
6064}
6065impl QQmlContext {
6066    /// <p>Returns the base url of the component, or the containing component if none is set.</p>
6067    ///
6068    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlContext::baseUrl() const```</span>.
6069    ///
6070    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#baseUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the base url of the component, or the containing component if none is set.</p>
6071    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#setBaseUrl">setBaseUrl</a>().</p></div>
6072    #[inline(always)]
6073    pub unsafe fn base_url(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
6074        let ffi_result =
6075            { crate::__ffi::ctr_qt_qml_ffi_QQmlContext_baseUrl(self as *const crate::QQmlContext) };
6076        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6077    }
6078
6079    /// <p>Return the context object, or 0 if there is no context object.</p>
6080    ///
6081    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlContext::contextObject() const```</span>.
6082    ///
6083    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#contextObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the context object, or 0 if there is no context object.</p>
6084    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextObject">setContextObject</a>().</p></div>
6085    #[inline(always)]
6086    pub unsafe fn context_object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
6087        let ffi_result = {
6088            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_contextObject(
6089                self as *const crate::QQmlContext,
6090            )
6091        };
6092        ::qt_core::QPtr::from_raw(ffi_result)
6093    }
6094
6095    /// <p>Returns the value of the <i>name</i> property for this context as a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
6096    ///
6097    /// Calls C++ function: <span style='color: green;'>```QVariant QQmlContext::contextProperty(const QString& arg1) const```</span>.
6098    ///
6099    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#contextProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value of the <i>name</i> property for this context as a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
6100    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">setContextProperty</a>().</p></div>
6101    #[inline(always)]
6102    pub unsafe fn context_property(
6103        &self,
6104        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
6105    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
6106        let ffi_result = {
6107            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_contextProperty(
6108                self as *const crate::QQmlContext,
6109                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg1)
6110                    .as_raw_ptr(),
6111            )
6112        };
6113        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6114    }
6115
6116    /// <p>Return the context's <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>, or 0 if the context has no <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> or the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> was destroyed.</p>
6117    ///
6118    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* QQmlContext::engine() const```</span>.
6119    ///
6120    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#engine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the context's <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>, or 0 if the context has no <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> or the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> was destroyed.</p></div>
6121    #[inline(always)]
6122    pub unsafe fn engine(&self) -> ::qt_core::QPtr<crate::QQmlEngine> {
6123        let ffi_result =
6124            { crate::__ffi::ctr_qt_qml_ffi_QQmlContext_engine(self as *const crate::QQmlContext) };
6125        ::qt_core::QPtr::from_raw(ffi_result)
6126    }
6127
6128    /// <p>Returns whether the context is valid.</p>
6129    ///
6130    /// Calls C++ function: <span style='color: green;'>```bool QQmlContext::isValid() const```</span>.
6131    ///
6132    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#isValid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether the context is valid.</p>
6133    /// <p>To be valid, a context must have a engine, and it's <a href="http://doc.qt.io/qt-5/qqmlcontext.html#contextObject">contextObject</a>(), if any, must not have been deleted.</p></div>
6134    #[inline(always)]
6135    pub unsafe fn is_valid(&self) -> bool {
6136        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_isValid(self as *const crate::QQmlContext)
6137    }
6138
6139    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlContext::metaObject() const```</span>.
6140    #[inline(always)]
6141    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
6142        let ffi_result = {
6143            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_metaObject(self as *const crate::QQmlContext)
6144        };
6145        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
6146    }
6147
6148    /// <p>Returns the name of <i>object</i> in this context, or an empty string if <i>object</i> is not named in the context. Objects are named by <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">setContextProperty</a>(), or by ids in the case of QML created contexts.</p>
6149    ///
6150    /// Calls C++ function: <span style='color: green;'>```QString QQmlContext::nameForObject(QObject* arg1) const```</span>.
6151    ///
6152    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#nameForObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the name of <i>object</i> in this context, or an empty string if <i>object</i> is not named in the context. Objects are named by <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">setContextProperty</a>(), or by ids in the case of QML created contexts.</p>
6153    /// <p>If the object has multiple names, the first is returned.</p></div>
6154    #[inline(always)]
6155    pub unsafe fn name_for_object(
6156        &self,
6157        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6158    ) -> ::cpp_core::CppBox<::qt_core::QString> {
6159        let ffi_result = {
6160            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_nameForObject(
6161                self as *const crate::QQmlContext,
6162                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
6163                    .as_raw_ptr() as *mut ::qt_core::QObject,
6164            )
6165        };
6166        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6167    }
6168
6169    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> as a child of <i>engine</i>'s root context, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p>
6170    ///
6171    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlContext::QQmlContext(QQmlEngine* parent, QObject* objParent = …)```</span>.
6172    ///
6173    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> as a child of <i>engine</i>'s root context, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p></div>
6174    #[inline(always)]
6175    pub unsafe fn from_q_qml_engine_q_object(
6176        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
6177        obj_parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6178    ) -> ::qt_core::QBox<crate::QQmlContext> {
6179        let ffi_result = {
6180            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_QQmlContext(
6181                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(parent)
6182                    .as_raw_ptr() as *mut crate::QQmlEngine,
6183                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(obj_parent)
6184                    .as_raw_ptr() as *mut ::qt_core::QObject,
6185            )
6186        };
6187        ::qt_core::QBox::from_raw(ffi_result)
6188    }
6189
6190    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> with the given <i>parentContext</i>, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p>
6191    ///
6192    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlContext::QQmlContext(QQmlContext* parent, QObject* objParent = …)```</span>.
6193    ///
6194    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> with the given <i>parentContext</i>, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p></div>
6195    #[inline(always)]
6196    pub unsafe fn from_q_qml_context_q_object(
6197        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6198        obj_parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6199    ) -> ::qt_core::QBox<crate::QQmlContext> {
6200        let ffi_result = {
6201            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_QQmlContext1(
6202                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(parent)
6203                    .as_raw_ptr() as *mut crate::QQmlContext,
6204                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(obj_parent)
6205                    .as_raw_ptr() as *mut ::qt_core::QObject,
6206            )
6207        };
6208        ::qt_core::QBox::from_raw(ffi_result)
6209    }
6210
6211    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> as a child of <i>engine</i>'s root context, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p>
6212    ///
6213    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlContext::QQmlContext(QQmlEngine* parent)```</span>.
6214    ///
6215    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> as a child of <i>engine</i>'s root context, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p></div>
6216    #[inline(always)]
6217    pub unsafe fn from_q_qml_engine(
6218        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
6219    ) -> ::qt_core::QBox<crate::QQmlContext> {
6220        let ffi_result = {
6221            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_QQmlContext3(
6222                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(parent)
6223                    .as_raw_ptr() as *mut crate::QQmlEngine,
6224            )
6225        };
6226        ::qt_core::QBox::from_raw(ffi_result)
6227    }
6228
6229    /// <p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> with the given <i>parentContext</i>, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p>
6230    ///
6231    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlContext::QQmlContext(QQmlContext* parent)```</span>.
6232    ///
6233    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#QQmlContext-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> with the given <i>parentContext</i>, and the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> <i>parent</i>.</p></div>
6234    #[inline(always)]
6235    pub unsafe fn from_q_qml_context(
6236        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6237    ) -> ::qt_core::QBox<crate::QQmlContext> {
6238        let ffi_result = {
6239            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_QQmlContext4(
6240                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(parent)
6241                    .as_raw_ptr() as *mut crate::QQmlContext,
6242            )
6243        };
6244        ::qt_core::QBox::from_raw(ffi_result)
6245    }
6246
6247    /// <p>Return the context's parent <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>, or 0 if this context has no parent or if the parent has been destroyed.</p>
6248    ///
6249    /// Calls C++ function: <span style='color: green;'>```QQmlContext* QQmlContext::parentContext() const```</span>.
6250    ///
6251    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#parentContext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the context's parent <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>, or 0 if this context has no parent or if the parent has been destroyed.</p></div>
6252    #[inline(always)]
6253    pub unsafe fn parent_context(&self) -> ::qt_core::QPtr<crate::QQmlContext> {
6254        let ffi_result = {
6255            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_parentContext(
6256                self as *const crate::QQmlContext,
6257            )
6258        };
6259        ::qt_core::QPtr::from_raw(ffi_result)
6260    }
6261
6262    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlContext::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
6263    #[inline(always)]
6264    pub unsafe fn qt_metacall(
6265        &self,
6266        arg1: ::qt_core::q_meta_object::Call,
6267        arg2: ::std::os::raw::c_int,
6268        arg3: *mut *mut ::std::ffi::c_void,
6269    ) -> ::std::os::raw::c_int {
6270        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_qt_metacall(
6271            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6272            arg1,
6273            arg2,
6274            arg3,
6275        )
6276    }
6277
6278    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlContext::qt_metacast(const char* arg1)```</span>.
6279    #[inline(always)]
6280    pub unsafe fn qt_metacast(
6281        &self,
6282        arg1: *const ::std::os::raw::c_char,
6283    ) -> *mut ::std::ffi::c_void {
6284        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_qt_metacast(
6285            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6286            arg1,
6287        )
6288    }
6289
6290    /// <p>Resolves the URL <i>src</i> relative to the URL of the containing component.</p>
6291    ///
6292    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlContext::resolvedUrl(const QUrl& arg1)```</span>.
6293    ///
6294    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#resolvedUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Resolves the URL <i>src</i> relative to the URL of the containing component.</p>
6295    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#baseUrl">QQmlEngine::baseUrl</a>() and <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setBaseUrl">setBaseUrl</a>().</p></div>
6296    #[inline(always)]
6297    pub unsafe fn resolved_url(
6298        &self,
6299        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
6300    ) -> ::cpp_core::CppBox<::qt_core::QUrl> {
6301        let ffi_result = {
6302            crate::__ffi::ctr_qt_qml_ffi_QQmlContext_resolvedUrl(
6303                self as *const crate::QQmlContext as *mut crate::QQmlContext,
6304                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1)
6305                    .as_raw_ptr(),
6306            )
6307        };
6308        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6309    }
6310
6311    /// <p>Explicitly sets the url <a href="http://doc.qt.io/qt-5/qqmlcontext.html#resolvedUrl">resolvedUrl</a>() will use for relative references to <i>baseUrl</i>.</p>
6312    ///
6313    /// Calls C++ function: <span style='color: green;'>```void QQmlContext::setBaseUrl(const QUrl& arg1)```</span>.
6314    ///
6315    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setBaseUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Explicitly sets the url <a href="http://doc.qt.io/qt-5/qqmlcontext.html#resolvedUrl">resolvedUrl</a>() will use for relative references to <i>baseUrl</i>.</p>
6316    /// <p>Calling this function will override the url of the containing component used by default.</p>
6317    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#baseUrl">baseUrl</a>() and <a href="http://doc.qt.io/qt-5/qqmlcontext.html#resolvedUrl">resolvedUrl</a>().</p></div>
6318    #[inline(always)]
6319    pub unsafe fn set_base_url(
6320        &self,
6321        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
6322    ) {
6323        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_setBaseUrl(
6324            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6325            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1).as_raw_ptr(),
6326        )
6327    }
6328
6329    /// <p>Set the context <i>object</i>.</p>
6330    ///
6331    /// Calls C++ function: <span style='color: green;'>```void QQmlContext::setContextObject(QObject* arg1)```</span>.
6332    ///
6333    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the context <i>object</i>.</p>
6334    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#contextObject">contextObject</a>().</p></div>
6335    #[inline(always)]
6336    pub unsafe fn set_context_object(
6337        &self,
6338        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6339    ) {
6340        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_setContextObject(
6341            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6342            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
6343                .as_raw_ptr() as *mut ::qt_core::QObject,
6344        )
6345    }
6346
6347    /// <p>Set a batch of <i>properties</i> on this context.</p>
6348    ///
6349    /// Calls C++ function: <span style='color: green;'>```void QQmlContext::setContextProperties(const QVector<QQmlContext::PropertyPair>& properties)```</span>.
6350    ///
6351    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperties">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set a batch of <i>properties</i> on this context.</p>
6352    /// <p>Setting all properties in one batch avoids unnecessary refreshing expressions, and is therefore recommended instead of calling <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">setContextProperty</a>() for each individual property.</p>
6353    /// <p>This function was introduced in  Qt 5.11.</p>
6354    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">QQmlContext::setContextProperty</a>().</p></div>
6355    #[inline(always)]
6356    #[cfg_attr(
6357        feature = "ritual_rustdoc_nightly",
6358        doc(cfg(any(
6359            cpp_lib_version = "5.13.0",
6360            cpp_lib_version = "5.11.3",
6361            cpp_lib_version = "5.12.2",
6362            cpp_lib_version = "5.14.0"
6363        )))
6364    )]
6365    #[cfg(any(
6366        any(
6367            cpp_lib_version = "5.13.0",
6368            cpp_lib_version = "5.11.3",
6369            cpp_lib_version = "5.12.2",
6370            cpp_lib_version = "5.14.0"
6371        ),
6372        feature = "ritual_rustdoc"
6373    ))]
6374    pub unsafe fn set_context_properties(
6375        &self,
6376        properties: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
6377    ) {
6378        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_setContextProperties(
6379            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6380            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(
6381                properties,
6382            )
6383            .as_raw_ptr(),
6384        )
6385    }
6386
6387    /// <p>Set the <i>value</i> of the <i>name</i> property on this context.</p>
6388    ///
6389    /// Calls C++ function: <span style='color: green;'>```void QQmlContext::setContextProperty(const QString& arg1, QObject* arg2)```</span>.
6390    ///
6391    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the <i>value</i> of the <i>name</i> property on this context.</p>
6392    /// <p><a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> does <b>not</b> take ownership of <i>value</i>.</p>
6393    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlcontext.html#contextProperty">contextProperty</a>().</p></div>
6394    #[inline(always)]
6395    pub unsafe fn set_context_property_q_string_q_object(
6396        &self,
6397        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
6398        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6399    ) {
6400        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_setContextProperty(
6401            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6402            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg1)
6403                .as_raw_ptr(),
6404            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg2)
6405                .as_raw_ptr() as *mut ::qt_core::QObject,
6406        )
6407    }
6408
6409    /// <p>Set a the <i>value</i> of the <i>name</i> property on this context.</p>
6410    ///
6411    /// Calls C++ function: <span style='color: green;'>```void QQmlContext::setContextProperty(const QString& arg1, const QVariant& arg2)```</span>.
6412    ///
6413    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#setContextProperty-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set a the <i>value</i> of the <i>name</i> property on this context.</p></div>
6414    #[inline(always)]
6415    pub unsafe fn set_context_property_q_string_q_variant(
6416        &self,
6417        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
6418        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
6419    ) {
6420        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_setContextProperty1(
6421            self as *const crate::QQmlContext as *mut crate::QQmlContext,
6422            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg1)
6423                .as_raw_ptr(),
6424            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg2)
6425                .as_raw_ptr(),
6426        )
6427    }
6428
6429    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
6430    #[inline(always)]
6431    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
6432        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlContext_staticMetaObject() };
6433        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
6434            .expect("attempted to construct a null Ref")
6435    }
6436
6437    /// Calls C++ function: <span style='color: green;'>```static QString QQmlContext::tr(const char* s, const char* c, int n)```</span>.
6438    #[inline(always)]
6439    pub unsafe fn tr(
6440        s: *const ::std::os::raw::c_char,
6441        c: *const ::std::os::raw::c_char,
6442        n: ::std::os::raw::c_int,
6443    ) -> ::cpp_core::CppBox<::qt_core::QString> {
6444        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlContext_tr(s, c, n) };
6445        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6446    }
6447
6448    /// Calls C++ function: <span style='color: green;'>```static QString QQmlContext::trUtf8(const char* s, const char* c, int n)```</span>.
6449    #[inline(always)]
6450    pub unsafe fn tr_utf8(
6451        s: *const ::std::os::raw::c_char,
6452        c: *const ::std::os::raw::c_char,
6453        n: ::std::os::raw::c_int,
6454    ) -> ::cpp_core::CppBox<::qt_core::QString> {
6455        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlContext_trUtf8(s, c, n) };
6456        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6457    }
6458}
6459
6460/// <p><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is used to create <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> properties that accept a script "assignment" from QML.</p>
6461///
6462/// C++ class: <span style='color: green;'>```QQmlScriptString```</span>.
6463///
6464/// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is used to create <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> properties that accept a script "assignment" from QML.</p>
6465/// <p>Normally, the following QML would result in a binding being established for the <code>script</code> property; i.e. <code>script</code> would be assigned the value obtained from running <code>myObj.value = Math.max(myValue, 100)</code></p>
6466/// <pre class="qml">
6467///
6468///   <span class="type">MyType</span> {
6469/// &#32;     <span class="name">script</span>: <span class="name">myObj</span>.<span class="name">value</span> <span class="operator">=</span> <span class="name">Math</span>.<span class="name">max</span>(<span class="name">myValue</span>, <span class="number">100</span>)
6470///   }
6471///
6472/// </pre>
6473/// <p>If instead the property had a type of <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a>, the script itself -- <i>myObj.value = Math.max(myValue, 100)</i> -- would be passed to the <code>script</code> property and the class could choose how to handle it. Typically, the class will evaluate the script at some later time using a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a>.</p>
6474/// <pre class="cpp">
6475///
6476///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a></span> expr(scriptString);
6477///   expr<span class="operator">.</span>evaluate();
6478///
6479/// </pre></div>
6480#[repr(C)]
6481pub struct QQmlScriptString {
6482    _unused: u8,
6483}
6484impl QQmlScriptString {
6485    /// <p>If the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is a boolean literal, returns the boolean value and sets <i>ok</i> to true. Otherwise returns false and sets <i>ok</i> to false.</p>
6486    ///
6487    /// Calls C++ function: <span style='color: green;'>```bool QQmlScriptString::booleanLiteral(bool* ok) const```</span>.
6488    ///
6489    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#booleanLiteral">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>If the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is a boolean literal, returns the boolean value and sets <i>ok</i> to true. Otherwise returns false and sets <i>ok</i> to false.</p></div>
6490    #[inline(always)]
6491    pub unsafe fn boolean_literal(&self, ok: *mut bool) -> bool {
6492        crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_booleanLiteral(
6493            self as *const crate::QQmlScriptString,
6494            ok,
6495        )
6496    }
6497
6498    /// <p>Assigns <i>other</i> to this.</p>
6499    ///
6500    /// Calls C++ function: <span style='color: green;'>```QQmlScriptString& QQmlScriptString::operator=(const QQmlScriptString& arg1)```</span>.
6501    ///
6502    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this.</p></div>
6503    #[inline(always)]
6504    pub unsafe fn copy_from(
6505        &self,
6506        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlScriptString>>,
6507    ) -> ::cpp_core::Ref<crate::QQmlScriptString> {
6508        let ffi_result = {
6509            crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_operator_(
6510                self as *const crate::QQmlScriptString as *mut crate::QQmlScriptString,
6511                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlScriptString>>::cast_into(arg1)
6512                    .as_raw_ptr(),
6513            )
6514        };
6515        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
6516    }
6517
6518    /// <p>Returns whether the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is empty.</p>
6519    ///
6520    /// Calls C++ function: <span style='color: green;'>```bool QQmlScriptString::isEmpty() const```</span>.
6521    ///
6522    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is empty.</p></div>
6523    #[inline(always)]
6524    pub unsafe fn is_empty(&self) -> bool {
6525        crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_isEmpty(
6526            self as *const crate::QQmlScriptString,
6527        )
6528    }
6529
6530    /// <p>Returns whether the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is the <code>null</code> literal.</p>
6531    ///
6532    /// Calls C++ function: <span style='color: green;'>```bool QQmlScriptString::isNullLiteral() const```</span>.
6533    ///
6534    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#isNullLiteral">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is the <code>null</code> literal.</p></div>
6535    #[inline(always)]
6536    pub unsafe fn is_null_literal(&self) -> bool {
6537        crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_isNullLiteral(
6538            self as *const crate::QQmlScriptString,
6539        )
6540    }
6541
6542    /// <p>Returns whether the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is the <code>undefined</code> literal.</p>
6543    ///
6544    /// Calls C++ function: <span style='color: green;'>```bool QQmlScriptString::isUndefinedLiteral() const```</span>.
6545    ///
6546    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#isUndefinedLiteral">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is the <code>undefined</code> literal.</p></div>
6547    #[inline(always)]
6548    pub unsafe fn is_undefined_literal(&self) -> bool {
6549        crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_isUndefinedLiteral(
6550            self as *const crate::QQmlScriptString,
6551        )
6552    }
6553
6554    /// <p>Constructs an empty instance.</p>
6555    ///
6556    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlScriptString::QQmlScriptString()```</span>.
6557    ///
6558    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#QQmlScriptString">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty instance.</p></div>
6559    #[inline(always)]
6560    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QQmlScriptString> {
6561        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_QQmlScriptString() };
6562        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6563    }
6564
6565    /// <p>Copies <i>other</i>.</p>
6566    ///
6567    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlScriptString::QQmlScriptString(const QQmlScriptString& arg1)```</span>.
6568    ///
6569    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#QQmlScriptString-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Copies <i>other</i>.</p></div>
6570    #[inline(always)]
6571    pub unsafe fn new_copy(
6572        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlScriptString>>,
6573    ) -> ::cpp_core::CppBox<crate::QQmlScriptString> {
6574        let ffi_result = {
6575            crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_QQmlScriptString1(
6576                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlScriptString>>::cast_into(arg1)
6577                    .as_raw_ptr(),
6578            )
6579        };
6580        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6581    }
6582
6583    /// <p>If the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is a number literal, returns that number and sets <i>ok</i> to true. Otherwise returns 0.0 and sets <i>ok</i> to false.</p>
6584    ///
6585    /// Calls C++ function: <span style='color: green;'>```double QQmlScriptString::numberLiteral(bool* ok) const```</span>.
6586    ///
6587    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#numberLiteral">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>If the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is a number literal, returns that number and sets <i>ok</i> to true. Otherwise returns 0.0 and sets <i>ok</i> to false.</p></div>
6588    #[inline(always)]
6589    pub unsafe fn number_literal(&self, ok: *mut bool) -> ::std::os::raw::c_double {
6590        crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_numberLiteral(
6591            self as *const crate::QQmlScriptString,
6592            ok,
6593        )
6594    }
6595
6596    /// <p>If the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is a string literal, returns that string. Otherwise returns a null <a href="http://doc.qt.io/qt-5/qstring.html">QString</a>.</p>
6597    ///
6598    /// Calls C++ function: <span style='color: green;'>```QString QQmlScriptString::stringLiteral() const```</span>.
6599    ///
6600    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#stringLiteral">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>If the content of the <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> is a string literal, returns that string. Otherwise returns a null <a href="http://doc.qt.io/qt-5/qstring.html">QString</a>.</p></div>
6601    #[inline(always)]
6602    pub unsafe fn string_literal(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
6603        let ffi_result = {
6604            crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_stringLiteral(
6605                self as *const crate::QQmlScriptString,
6606            )
6607        };
6608        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6609    }
6610}
6611
6612/// <p>For example, given a file <code>main.qml</code> like this:</p>
6613///
6614/// C++ class: <span style='color: green;'>```QQmlExpression```</span>.
6615///
6616/// <a href="http://doc.qt.io/qt-5/qqmlexpression.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>For example, given a file <code>main.qml</code> like this:</p>
6617/// <pre class="qml">
6618///
6619///   import QtQuick 2.0
6620///
6621///   <span class="type"><a href="http://doc.qt.io/qt-5/qml-qtquick-item.html">Item</a></span> {
6622/// &#32;     <span class="name">width</span>: <span class="number">200</span>; <span class="name">height</span>: <span class="number">200</span>
6623///   }
6624///
6625/// </pre>
6626/// <p>The following code evaluates a JavaScript expression in the context of the above QML:</p>
6627/// <pre class="cpp">
6628///
6629///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> <span class="operator">*</span>engine <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span>;
6630///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a></span> component(engine<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"main.qml"</span>));
6631///
6632///   <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> <span class="operator">*</span>myObject <span class="operator">=</span> component<span class="operator">.</span>create();
6633///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression">QQmlExpression</a></span> <span class="operator">*</span>expr <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression">QQmlExpression</a></span>(engine<span class="operator">-</span><span class="operator">&gt;</span>rootContext()<span class="operator">,</span> myObject<span class="operator">,</span> <span class="string">"width * 2"</span>);
6634///   <span class="type">int</span> result <span class="operator">=</span> expr<span class="operator">-</span><span class="operator">&gt;</span>evaluate()<span class="operator">.</span>toInt();  <span class="comment">// result = 400</span>
6635///
6636/// </pre></div>
6637#[repr(C)]
6638pub struct QQmlExpression {
6639    _unused: u8,
6640}
6641impl QQmlExpression {
6642    /// <p>Emitted each time the expression value changes from the last time it was evaluated. The expression must have been evaluated at least once (by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">QQmlExpression::evaluate</a>()) before this signal will be emitted.</p>
6643    ///
6644    /// Returns a built-in Qt signal `QQmlExpression::valueChanged` that can be passed to `qt_core::Signal::connect`.
6645    ///
6646    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Emitted each time the expression value changes from the last time it was evaluated. The expression must have been evaluated at least once (by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">QQmlExpression::evaluate</a>()) before this signal will be emitted.</p></div>
6647    #[inline(always)]
6648    pub fn value_changed(&self) -> ::qt_core::Signal<()> {
6649        unsafe {
6650            ::qt_core::Signal::new(
6651                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6652                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2valueChanged()\0"),
6653            )
6654        }
6655    }
6656
6657    /// <p>Clear any expression errors. Calls to <a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">hasError</a>() following this will return false.</p>
6658    ///
6659    /// Calls C++ function: <span style='color: green;'>```void QQmlExpression::clearError()```</span>.
6660    ///
6661    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#clearError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clear any expression errors. Calls to <a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">hasError</a>() following this will return false.</p>
6662    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">hasError</a>() and <a href="http://doc.qt.io/qt-5/qqmlexpression.html#error">error</a>().</p></div>
6663    #[inline(always)]
6664    pub unsafe fn clear_error(&self) {
6665        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_clearError(
6666            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
6667        )
6668    }
6669
6670    /// <p>Returns the source file column number for this expression. The source location must have been previously set by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">setSourceLocation</a>().</p>
6671    ///
6672    /// Calls C++ function: <span style='color: green;'>```int QQmlExpression::columnNumber() const```</span>.
6673    ///
6674    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#columnNumber">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the source file column number for this expression. The source location must have been previously set by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">setSourceLocation</a>().</p></div>
6675    #[inline(always)]
6676    pub unsafe fn column_number(&self) -> ::std::os::raw::c_int {
6677        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_columnNumber(
6678            self as *const crate::QQmlExpression,
6679        )
6680    }
6681
6682    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> this expression is associated with, or 0 if there is no association or the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> has been destroyed.</p>
6683    ///
6684    /// Calls C++ function: <span style='color: green;'>```QQmlContext* QQmlExpression::context() const```</span>.
6685    ///
6686    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#context">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> this expression is associated with, or 0 if there is no association or the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> has been destroyed.</p></div>
6687    #[inline(always)]
6688    pub unsafe fn context(&self) -> ::qt_core::QPtr<crate::QQmlContext> {
6689        let ffi_result = {
6690            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_context(
6691                self as *const crate::QQmlExpression,
6692            )
6693        };
6694        ::qt_core::QPtr::from_raw(ffi_result)
6695    }
6696
6697    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> this expression is associated with, or 0 if there is no association or the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> has been destroyed.</p>
6698    ///
6699    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* QQmlExpression::engine() const```</span>.
6700    ///
6701    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#engine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> this expression is associated with, or 0 if there is no association or the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> has been destroyed.</p></div>
6702    #[inline(always)]
6703    pub unsafe fn engine(&self) -> ::qt_core::QPtr<crate::QQmlEngine> {
6704        let ffi_result = {
6705            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_engine(self as *const crate::QQmlExpression)
6706        };
6707        ::qt_core::QPtr::from_raw(ffi_result)
6708    }
6709
6710    /// <p>Return any error from the last call to <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">evaluate</a>(). If there was no error, this returns an invalid <a href="http://doc.qt.io/qt-5/qqmlerror.html">QQmlError</a> instance.</p>
6711    ///
6712    /// Calls C++ function: <span style='color: green;'>```QQmlError QQmlExpression::error() const```</span>.
6713    ///
6714    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#error">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return any error from the last call to <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">evaluate</a>(). If there was no error, this returns an invalid <a href="http://doc.qt.io/qt-5/qqmlerror.html">QQmlError</a> instance.</p>
6715    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">hasError</a>() and <a href="http://doc.qt.io/qt-5/qqmlexpression.html#clearError">clearError</a>().</p></div>
6716    #[inline(always)]
6717    pub unsafe fn error(&self) -> ::cpp_core::CppBox<crate::QQmlError> {
6718        let ffi_result = {
6719            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_error(self as *const crate::QQmlExpression)
6720        };
6721        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6722    }
6723
6724    /// <p>Evaulates the expression, returning the result of the evaluation, or an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> if the expression is invalid or has an error.</p>
6725    ///
6726    /// Calls C++ function: <span style='color: green;'>```QVariant QQmlExpression::evaluate(bool* valueIsUndefined = …)```</span>.
6727    ///
6728    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Evaulates the expression, returning the result of the evaluation, or an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> if the expression is invalid or has an error.</p>
6729    /// <p><i>valueIsUndefined</i> is set to true if the expression resulted in an undefined value.</p>
6730    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">hasError</a>() and <a href="http://doc.qt.io/qt-5/qqmlexpression.html#error">error</a>().</p></div>
6731    #[inline(always)]
6732    pub unsafe fn evaluate_1a(
6733        &self,
6734        value_is_undefined: *mut bool,
6735    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
6736        let ffi_result = {
6737            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_evaluate(
6738                self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
6739                value_is_undefined,
6740            )
6741        };
6742        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6743    }
6744
6745    /// <p>Evaulates the expression, returning the result of the evaluation, or an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> if the expression is invalid or has an error.</p>
6746    ///
6747    /// Calls C++ function: <span style='color: green;'>```QVariant QQmlExpression::evaluate()```</span>.
6748    ///
6749    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Evaulates the expression, returning the result of the evaluation, or an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> if the expression is invalid or has an error.</p>
6750    /// <p><i>valueIsUndefined</i> is set to true if the expression resulted in an undefined value.</p>
6751    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">hasError</a>() and <a href="http://doc.qt.io/qt-5/qqmlexpression.html#error">error</a>().</p></div>
6752    #[inline(always)]
6753    pub unsafe fn evaluate_0a(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
6754        let ffi_result = {
6755            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_evaluate1(
6756                self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
6757            )
6758        };
6759        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6760    }
6761
6762    /// <p>Returns the expression string.</p>
6763    ///
6764    /// Calls C++ function: <span style='color: green;'>```QString QQmlExpression::expression() const```</span>.
6765    ///
6766    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#expression">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the expression string.</p>
6767    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#setExpression">setExpression</a>().</p></div>
6768    #[inline(always)]
6769    pub unsafe fn expression(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
6770        let ffi_result = {
6771            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_expression(
6772                self as *const crate::QQmlExpression,
6773            )
6774        };
6775        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6776    }
6777
6778    /// <p>Returns true if the last call to <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">evaluate</a>() resulted in an error, otherwise false.</p>
6779    ///
6780    /// Calls C++ function: <span style='color: green;'>```bool QQmlExpression::hasError() const```</span>.
6781    ///
6782    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#hasError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the last call to <a href="http://doc.qt.io/qt-5/qqmlexpression.html#evaluate">evaluate</a>() resulted in an error, otherwise false.</p>
6783    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#error">error</a>() and <a href="http://doc.qt.io/qt-5/qqmlexpression.html#clearError">clearError</a>().</p></div>
6784    #[inline(always)]
6785    pub unsafe fn has_error(&self) -> bool {
6786        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_hasError(self as *const crate::QQmlExpression)
6787    }
6788
6789    /// <p>Returns the source file line number for this expression. The source location must have been previously set by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">setSourceLocation</a>().</p>
6790    ///
6791    /// Calls C++ function: <span style='color: green;'>```int QQmlExpression::lineNumber() const```</span>.
6792    ///
6793    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#lineNumber">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the source file line number for this expression. The source location must have been previously set by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">setSourceLocation</a>().</p></div>
6794    #[inline(always)]
6795    pub unsafe fn line_number(&self) -> ::std::os::raw::c_int {
6796        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_lineNumber(self as *const crate::QQmlExpression)
6797    }
6798
6799    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlExpression::metaObject() const```</span>.
6800    #[inline(always)]
6801    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
6802        let ffi_result = {
6803            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_metaObject(
6804                self as *const crate::QQmlExpression,
6805            )
6806        };
6807        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
6808    }
6809
6810    /// <p>Create an invalid <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a>.</p>
6811    ///
6812    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression()```</span>.
6813    ///
6814    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an invalid <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a>.</p>
6815    /// <p>As the expression will not have an associated <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>, this will be a null expression object and its value will always be an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p></div>
6816    #[inline(always)]
6817    pub unsafe fn new() -> ::qt_core::QBox<crate::QQmlExpression> {
6818        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression() };
6819        ::qt_core::QBox::from_raw(ffi_result)
6820    }
6821
6822    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6823    ///
6824    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression(QQmlContext* arg1, QObject* arg2, const QString& arg3, QObject* arg4 = …)```</span>.
6825    ///
6826    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6827    /// <p>The <i>expression</i> JavaScript will be executed in the <i>ctxt</i> <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. If specified, the <i>scope</i> object's properties will also be in scope during the expression's execution.</p></div>
6828    #[inline(always)]
6829    pub unsafe fn from_q_qml_context_q_object_q_string_q_object(
6830        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6831        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6832        arg3: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
6833        arg4: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6834    ) -> ::qt_core::QBox<crate::QQmlExpression> {
6835        let ffi_result = {
6836            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression1(
6837                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg1)
6838                    .as_raw_ptr() as *mut crate::QQmlContext,
6839                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg2)
6840                    .as_raw_ptr() as *mut ::qt_core::QObject,
6841                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg3)
6842                    .as_raw_ptr(),
6843                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg4)
6844                    .as_raw_ptr() as *mut ::qt_core::QObject,
6845            )
6846        };
6847        ::qt_core::QBox::from_raw(ffi_result)
6848    }
6849
6850    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6851    ///
6852    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression(const QQmlScriptString& arg1, QQmlContext* arg2 = …, QObject* arg3 = …, QObject* arg4 = …)```</span>.
6853    ///
6854    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6855    /// <p>The <i>script</i> provides the expression to be evaluated, the context to evaluate it in, and the scope object to evaluate it with. If provided, <i>ctxt</i> and <i>scope</i> will override the context and scope object provided by <i>script</i>.</p>
6856    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a>.</p></div>
6857    #[inline(always)]
6858    pub unsafe fn from_q_qml_script_string_q_qml_context2_q_object(
6859        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlScriptString>>,
6860        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6861        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6862        arg4: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6863    ) -> ::qt_core::QBox<crate::QQmlExpression> {
6864        let ffi_result = {
6865            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression2(
6866                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlScriptString>>::cast_into(arg1)
6867                    .as_raw_ptr(),
6868                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg2)
6869                    .as_raw_ptr() as *mut crate::QQmlContext,
6870                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg3)
6871                    .as_raw_ptr() as *mut ::qt_core::QObject,
6872                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg4)
6873                    .as_raw_ptr() as *mut ::qt_core::QObject,
6874            )
6875        };
6876        ::qt_core::QBox::from_raw(ffi_result)
6877    }
6878
6879    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6880    ///
6881    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression(QQmlContext* arg1, QObject* arg2, const QString& arg3)```</span>.
6882    ///
6883    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6884    /// <p>The <i>expression</i> JavaScript will be executed in the <i>ctxt</i> <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>. If specified, the <i>scope</i> object's properties will also be in scope during the expression's execution.</p></div>
6885    #[inline(always)]
6886    pub unsafe fn from_q_qml_context_q_object_q_string(
6887        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6888        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6889        arg3: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
6890    ) -> ::qt_core::QBox<crate::QQmlExpression> {
6891        let ffi_result = {
6892            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression3(
6893                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg1)
6894                    .as_raw_ptr() as *mut crate::QQmlContext,
6895                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg2)
6896                    .as_raw_ptr() as *mut ::qt_core::QObject,
6897                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg3)
6898                    .as_raw_ptr(),
6899            )
6900        };
6901        ::qt_core::QBox::from_raw(ffi_result)
6902    }
6903
6904    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6905    ///
6906    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression(const QQmlScriptString& arg1, QQmlContext* arg2 = …, QObject* arg3 = …)```</span>.
6907    ///
6908    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6909    /// <p>The <i>script</i> provides the expression to be evaluated, the context to evaluate it in, and the scope object to evaluate it with. If provided, <i>ctxt</i> and <i>scope</i> will override the context and scope object provided by <i>script</i>.</p>
6910    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a>.</p></div>
6911    #[inline(always)]
6912    pub unsafe fn from_q_qml_script_string_q_qml_context_q_object(
6913        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlScriptString>>,
6914        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6915        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
6916    ) -> ::qt_core::QBox<crate::QQmlExpression> {
6917        let ffi_result = {
6918            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression4(
6919                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlScriptString>>::cast_into(arg1)
6920                    .as_raw_ptr(),
6921                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg2)
6922                    .as_raw_ptr() as *mut crate::QQmlContext,
6923                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg3)
6924                    .as_raw_ptr() as *mut ::qt_core::QObject,
6925            )
6926        };
6927        ::qt_core::QBox::from_raw(ffi_result)
6928    }
6929
6930    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6931    ///
6932    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression(const QQmlScriptString& arg1, QQmlContext* arg2 = …)```</span>.
6933    ///
6934    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6935    /// <p>The <i>script</i> provides the expression to be evaluated, the context to evaluate it in, and the scope object to evaluate it with. If provided, <i>ctxt</i> and <i>scope</i> will override the context and scope object provided by <i>script</i>.</p>
6936    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a>.</p></div>
6937    #[inline(always)]
6938    pub unsafe fn from_q_qml_script_string_q_qml_context(
6939        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlScriptString>>,
6940        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
6941    ) -> ::qt_core::QBox<crate::QQmlExpression> {
6942        let ffi_result = {
6943            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression5(
6944                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlScriptString>>::cast_into(arg1)
6945                    .as_raw_ptr(),
6946                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg2)
6947                    .as_raw_ptr() as *mut crate::QQmlContext,
6948            )
6949        };
6950        ::qt_core::QBox::from_raw(ffi_result)
6951    }
6952
6953    /// <p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6954    ///
6955    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlExpression::QQmlExpression(const QQmlScriptString& arg1)```</span>.
6956    ///
6957    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#QQmlExpression-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> object that is a child of <i>parent</i>.</p>
6958    /// <p>The <i>script</i> provides the expression to be evaluated, the context to evaluate it in, and the scope object to evaluate it with. If provided, <i>ctxt</i> and <i>scope</i> will override the context and scope object provided by <i>script</i>.</p>
6959    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a>.</p></div>
6960    #[inline(always)]
6961    pub unsafe fn from_q_qml_script_string(
6962        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlScriptString>>,
6963    ) -> ::qt_core::QBox<crate::QQmlExpression> {
6964        let ffi_result = {
6965            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_QQmlExpression6(
6966                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlScriptString>>::cast_into(arg1)
6967                    .as_raw_ptr(),
6968            )
6969        };
6970        ::qt_core::QBox::from_raw(ffi_result)
6971    }
6972
6973    /// <p>Returns true if the <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">valueChanged</a>() signal is emitted when the expression's evaluated value changes.</p>
6974    ///
6975    /// Calls C++ function: <span style='color: green;'>```bool QQmlExpression::notifyOnValueChanged() const```</span>.
6976    ///
6977    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#notifyOnValueChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">valueChanged</a>() signal is emitted when the expression's evaluated value changes.</p>
6978    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#setNotifyOnValueChanged">setNotifyOnValueChanged</a>().</p></div>
6979    #[inline(always)]
6980    pub unsafe fn notify_on_value_changed(&self) -> bool {
6981        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_notifyOnValueChanged(
6982            self as *const crate::QQmlExpression,
6983        )
6984    }
6985
6986    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlExpression::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
6987    #[inline(always)]
6988    pub unsafe fn qt_metacall(
6989        &self,
6990        arg1: ::qt_core::q_meta_object::Call,
6991        arg2: ::std::os::raw::c_int,
6992        arg3: *mut *mut ::std::ffi::c_void,
6993    ) -> ::std::os::raw::c_int {
6994        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_qt_metacall(
6995            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
6996            arg1,
6997            arg2,
6998            arg3,
6999        )
7000    }
7001
7002    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlExpression::qt_metacast(const char* arg1)```</span>.
7003    #[inline(always)]
7004    pub unsafe fn qt_metacast(
7005        &self,
7006        arg1: *const ::std::os::raw::c_char,
7007    ) -> *mut ::std::ffi::c_void {
7008        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_qt_metacast(
7009            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
7010            arg1,
7011        )
7012    }
7013
7014    /// <p>Returns the expression's scope object, if provided, otherwise 0.</p>
7015    ///
7016    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlExpression::scopeObject() const```</span>.
7017    ///
7018    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#scopeObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the expression's scope object, if provided, otherwise 0.</p>
7019    /// <p>In addition to data provided by the expression's <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>, the scope object's properties are also in scope during the expression's evaluation.</p></div>
7020    #[inline(always)]
7021    pub unsafe fn scope_object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
7022        let ffi_result = {
7023            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_scopeObject(
7024                self as *const crate::QQmlExpression,
7025            )
7026        };
7027        ::qt_core::QPtr::from_raw(ffi_result)
7028    }
7029
7030    /// <p>Set the expression to <i>expression</i>.</p>
7031    ///
7032    /// Calls C++ function: <span style='color: green;'>```void QQmlExpression::setExpression(const QString& arg1)```</span>.
7033    ///
7034    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setExpression">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the expression to <i>expression</i>.</p>
7035    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#expression">expression</a>().</p></div>
7036    #[inline(always)]
7037    pub unsafe fn set_expression(
7038        &self,
7039        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7040    ) {
7041        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_setExpression(
7042            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
7043            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg1)
7044                .as_raw_ptr(),
7045        )
7046    }
7047
7048    /// <p>Sets whether the <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">valueChanged</a>() signal is emitted when the expression's evaluated value changes.</p>
7049    ///
7050    /// Calls C++ function: <span style='color: green;'>```void QQmlExpression::setNotifyOnValueChanged(bool arg1)```</span>.
7051    ///
7052    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setNotifyOnValueChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets whether the <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">valueChanged</a>() signal is emitted when the expression's evaluated value changes.</p>
7053    /// <p>If <i>notifyOnChange</i> is true, the <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> will monitor properties involved in the expression's evaluation, and emit <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">QQmlExpression::valueChanged</a>() if they have changed. This allows an application to ensure that any value associated with the result of the expression remains up to date.</p>
7054    /// <p>If <i>notifyOnChange</i> is false (default), the <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> will not montitor properties involved in the expression's evaluation, and <a href="http://doc.qt.io/qt-5/qqmlexpression.html#valueChanged">QQmlExpression::valueChanged</a>() will never be emitted. This is more efficient if an application wants a "one off" evaluation of the expression.</p>
7055    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlexpression.html#notifyOnValueChanged">notifyOnValueChanged</a>().</p></div>
7056    #[inline(always)]
7057    pub unsafe fn set_notify_on_value_changed(&self, arg1: bool) {
7058        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_setNotifyOnValueChanged(
7059            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
7060            arg1,
7061        )
7062    }
7063
7064    /// <p>Set the location of this expression to <i>line</i> and <i>column</i> of <i>url</i>. This information is used by the script engine.</p>
7065    ///
7066    /// Calls C++ function: <span style='color: green;'>```void QQmlExpression::setSourceLocation(const QString& fileName, int line, int column = …)```</span>.
7067    ///
7068    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the location of this expression to <i>line</i> and <i>column</i> of <i>url</i>. This information is used by the script engine.</p></div>
7069    #[inline(always)]
7070    pub unsafe fn set_source_location_3a(
7071        &self,
7072        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7073        line: ::std::os::raw::c_int,
7074        column: ::std::os::raw::c_int,
7075    ) {
7076        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_setSourceLocation(
7077            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
7078            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
7079                .as_raw_ptr(),
7080            line,
7081            column,
7082        )
7083    }
7084
7085    /// <p>Set the location of this expression to <i>line</i> and <i>column</i> of <i>url</i>. This information is used by the script engine.</p>
7086    ///
7087    /// Calls C++ function: <span style='color: green;'>```void QQmlExpression::setSourceLocation(const QString& fileName, int line)```</span>.
7088    ///
7089    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the location of this expression to <i>line</i> and <i>column</i> of <i>url</i>. This information is used by the script engine.</p></div>
7090    #[inline(always)]
7091    pub unsafe fn set_source_location_2a(
7092        &self,
7093        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7094        line: ::std::os::raw::c_int,
7095    ) {
7096        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_setSourceLocation1(
7097            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
7098            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
7099                .as_raw_ptr(),
7100            line,
7101        )
7102    }
7103
7104    /// <p>Returns the source file URL for this expression. The source location must have been previously set by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">setSourceLocation</a>().</p>
7105    ///
7106    /// Calls C++ function: <span style='color: green;'>```QString QQmlExpression::sourceFile() const```</span>.
7107    ///
7108    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#sourceFile">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the source file URL for this expression. The source location must have been previously set by calling <a href="http://doc.qt.io/qt-5/qqmlexpression.html#setSourceLocation">setSourceLocation</a>().</p></div>
7109    #[inline(always)]
7110    pub unsafe fn source_file(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
7111        let ffi_result = {
7112            crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_sourceFile(
7113                self as *const crate::QQmlExpression,
7114            )
7115        };
7116        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7117    }
7118
7119    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
7120    #[inline(always)]
7121    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
7122        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_staticMetaObject() };
7123        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7124            .expect("attempted to construct a null Ref")
7125    }
7126
7127    /// Calls C++ function: <span style='color: green;'>```static QString QQmlExpression::tr(const char* s, const char* c, int n)```</span>.
7128    #[inline(always)]
7129    pub unsafe fn tr(
7130        s: *const ::std::os::raw::c_char,
7131        c: *const ::std::os::raw::c_char,
7132        n: ::std::os::raw::c_int,
7133    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7134        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_tr(s, c, n) };
7135        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7136    }
7137
7138    /// Calls C++ function: <span style='color: green;'>```static QString QQmlExpression::trUtf8(const char* s, const char* c, int n)```</span>.
7139    #[inline(always)]
7140    pub unsafe fn tr_utf8(
7141        s: *const ::std::os::raw::c_char,
7142        c: *const ::std::os::raw::c_char,
7143        n: ::std::os::raw::c_int,
7144    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7145        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_trUtf8(s, c, n) };
7146        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7147    }
7148}
7149
7150/// C++ class: <span style='color: green;'>```QQmlTypesExtensionInterface```</span>.
7151#[repr(C)]
7152pub struct QQmlTypesExtensionInterface {
7153    _unused: u8,
7154}
7155impl QQmlTypesExtensionInterface {
7156    /// Calls C++ function: <span style='color: green;'>```QQmlTypesExtensionInterface& QQmlTypesExtensionInterface::operator=(const QQmlTypesExtensionInterface& other)```</span>.
7157    #[inline(always)]
7158    pub unsafe fn copy_from(
7159        &self,
7160        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlTypesExtensionInterface>>,
7161    ) -> ::cpp_core::Ref<crate::QQmlTypesExtensionInterface> {
7162        let ffi_result = {
7163            crate::__ffi::ctr_qt_qml_ffi_QQmlTypesExtensionInterface_operator_(self as *const crate::QQmlTypesExtensionInterface as *mut crate::QQmlTypesExtensionInterface, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlTypesExtensionInterface>>::cast_into(other).as_raw_ptr())
7164        };
7165        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
7166    }
7167
7168    /// Calls C++ function: <span style='color: green;'>```pure virtual void QQmlTypesExtensionInterface::registerTypes(const char* uri)```</span>.
7169    #[inline(always)]
7170    pub unsafe fn register_types(&self, uri: *const ::std::os::raw::c_char) {
7171        crate::__ffi::ctr_qt_qml_ffi_QQmlTypesExtensionInterface_registerTypes(
7172            self as *const crate::QQmlTypesExtensionInterface
7173                as *mut crate::QQmlTypesExtensionInterface,
7174            uri,
7175        )
7176    }
7177}
7178
7179/// C++ class: <span style='color: green;'>```QQmlExtensionInterface```</span>.
7180#[repr(C)]
7181pub struct QQmlExtensionInterface {
7182    _unused: u8,
7183}
7184impl QQmlExtensionInterface {
7185    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionInterface& QQmlExtensionInterface::operator=(const QQmlExtensionInterface& other)```</span>.
7186    #[inline(always)]
7187    pub unsafe fn copy_from(
7188        &self,
7189        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlExtensionInterface>>,
7190    ) -> ::cpp_core::Ref<crate::QQmlExtensionInterface> {
7191        let ffi_result = {
7192            crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionInterface_operator_(
7193                self as *const crate::QQmlExtensionInterface as *mut crate::QQmlExtensionInterface,
7194                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlExtensionInterface>>::cast_into(
7195                    other,
7196                )
7197                .as_raw_ptr(),
7198            )
7199        };
7200        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
7201    }
7202
7203    /// Calls C++ function: <span style='color: green;'>```pure virtual void QQmlExtensionInterface::initializeEngine(QQmlEngine* engine, const char* uri)```</span>.
7204    #[inline(always)]
7205    pub unsafe fn initialize_engine(
7206        &self,
7207        engine: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7208        uri: *const ::std::os::raw::c_char,
7209    ) {
7210        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionInterface_initializeEngine(
7211            self as *const crate::QQmlExtensionInterface as *mut crate::QQmlExtensionInterface,
7212            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(engine)
7213                .as_raw_ptr() as *mut crate::QQmlEngine,
7214            uri,
7215        )
7216    }
7217}
7218
7219/// <p><a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html">QQmlExtensionPlugin</a> is a plugin interface that makes it possible to create QML extensions that can be loaded dynamically into QML applications. These extensions allow custom QML types to be made available to the QML engine.</p>
7220///
7221/// C++ class: <span style='color: green;'>```QQmlExtensionPlugin```</span>.
7222///
7223/// <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html">QQmlExtensionPlugin</a> is a plugin interface that makes it possible to create QML extensions that can be loaded dynamically into QML applications. These extensions allow custom QML types to be made available to the QML engine.</p>
7224/// <p>To write a QML extension plugin:</p>
7225/// <ol class="1" type="1"><li>Subclass <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html">QQmlExtensionPlugin</a><ul>
7226/// <li>Use the <a href="http://doc.qt.io/qt-5/#Q_PLUGIN_METADATA">Q_PLUGIN_METADATA</a>() macro to register the plugin with the Qt meta object system</li>
7227/// <li>Override the <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html#registerTypes">registerTypes()</a> method and call <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType-1">qmlRegisterType</a>() to register the types to be exported by the plugin</li>
7228/// </ul>
7229/// </li>
7230/// <li>Write a project file for the plugin</li>
7231/// <li>Create a <a href="http://doc.qt.io/qt-5/qtqml-modules-qmldir.html#">qmldir file</a> to describe the plugin</li>
7232/// </ol>
7233/// <p>QML extension plugins are for either application-specific or library-like plugins. Library plugins should limit themselves to registering types, as any manipulation of the engine's root context may cause conflicts or other issues in the library user's code.</p>
7234/// <a name="timeexample-qml-extension-plugin"></a></div>
7235#[repr(C)]
7236pub struct QQmlExtensionPlugin {
7237    _unused: u8,
7238}
7239impl QQmlExtensionPlugin {
7240    /// <p>Returns the URL of the directory from which the extension is loaded.</p>
7241    ///
7242    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlExtensionPlugin::baseUrl() const```</span>.
7243    ///
7244    /// <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html#baseUrl">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the URL of the directory from which the extension is loaded.</p>
7245    /// <p>This is useful when the plugin also needs to load QML files or other assets from the same directory.</p>
7246    /// <p>This function was introduced in  Qt 5.1.</p></div>
7247    #[inline(always)]
7248    pub unsafe fn base_url(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
7249        let ffi_result = {
7250            crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_baseUrl(
7251                self as *const crate::QQmlExtensionPlugin,
7252            )
7253        };
7254        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7255    }
7256
7257    /// <p>Initializes the extension from the <i>uri</i> using the <i>engine</i>. Here an application plugin might, for example, expose some data or objects to QML, as context properties on the engine's root context.</p>
7258    ///
7259    /// Calls C++ function: <span style='color: green;'>```virtual void QQmlExtensionPlugin::initializeEngine(QQmlEngine* engine, const char* uri)```</span>.
7260    ///
7261    /// <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html#initializeEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Initializes the extension from the <i>uri</i> using the <i>engine</i>. Here an application plugin might, for example, expose some data or objects to QML, as context properties on the engine's root context.</p></div>
7262    #[inline(always)]
7263    pub unsafe fn initialize_engine(
7264        &self,
7265        engine: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7266        uri: *const ::std::os::raw::c_char,
7267    ) {
7268        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_initializeEngine(
7269            self as *const crate::QQmlExtensionPlugin as *mut crate::QQmlExtensionPlugin,
7270            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(engine)
7271                .as_raw_ptr() as *mut crate::QQmlEngine,
7272            uri,
7273        )
7274    }
7275
7276    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlExtensionPlugin::metaObject() const```</span>.
7277    #[inline(always)]
7278    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
7279        let ffi_result = {
7280            crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_metaObject(
7281                self as *const crate::QQmlExtensionPlugin,
7282            )
7283        };
7284        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7285    }
7286
7287    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlExtensionPlugin::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
7288    #[inline(always)]
7289    pub unsafe fn qt_metacall(
7290        &self,
7291        arg1: ::qt_core::q_meta_object::Call,
7292        arg2: ::std::os::raw::c_int,
7293        arg3: *mut *mut ::std::ffi::c_void,
7294    ) -> ::std::os::raw::c_int {
7295        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_qt_metacall(
7296            self as *const crate::QQmlExtensionPlugin as *mut crate::QQmlExtensionPlugin,
7297            arg1,
7298            arg2,
7299            arg3,
7300        )
7301    }
7302
7303    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlExtensionPlugin::qt_metacast(const char* arg1)```</span>.
7304    #[inline(always)]
7305    pub unsafe fn qt_metacast(
7306        &self,
7307        arg1: *const ::std::os::raw::c_char,
7308    ) -> *mut ::std::ffi::c_void {
7309        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_qt_metacast(
7310            self as *const crate::QQmlExtensionPlugin as *mut crate::QQmlExtensionPlugin,
7311            arg1,
7312        )
7313    }
7314
7315    /// <p>Registers the QML types in the given <i>uri</i>. Subclasses should implement this to call <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType-1">qmlRegisterType</a>() for all types which are provided by the extension plugin.</p>
7316    ///
7317    /// Calls C++ function: <span style='color: green;'>```pure virtual void QQmlExtensionPlugin::registerTypes(const char* uri)```</span>.
7318    ///
7319    /// <a href="http://doc.qt.io/qt-5/qqmlextensionplugin.html#registerTypes">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Registers the QML types in the given <i>uri</i>. Subclasses should implement this to call <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType-1">qmlRegisterType</a>() for all types which are provided by the extension plugin.</p>
7320    /// <p>The <i>uri</i> is an identifier for the plugin generated by the QML engine based on the name and path of the extension's plugin library.</p></div>
7321    #[inline(always)]
7322    pub unsafe fn register_types(&self, uri: *const ::std::os::raw::c_char) {
7323        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_registerTypes(
7324            self as *const crate::QQmlExtensionPlugin as *mut crate::QQmlExtensionPlugin,
7325            uri,
7326        )
7327    }
7328
7329    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
7330    #[inline(always)]
7331    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
7332        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_staticMetaObject() };
7333        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7334            .expect("attempted to construct a null Ref")
7335    }
7336
7337    /// Calls C++ function: <span style='color: green;'>```static QString QQmlExtensionPlugin::tr(const char* s, const char* c, int n)```</span>.
7338    #[inline(always)]
7339    pub unsafe fn tr(
7340        s: *const ::std::os::raw::c_char,
7341        c: *const ::std::os::raw::c_char,
7342        n: ::std::os::raw::c_int,
7343    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7344        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_tr(s, c, n) };
7345        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7346    }
7347
7348    /// Calls C++ function: <span style='color: green;'>```static QString QQmlExtensionPlugin::trUtf8(const char* s, const char* c, int n)```</span>.
7349    #[inline(always)]
7350    pub unsafe fn tr_utf8(
7351        s: *const ::std::os::raw::c_char,
7352        c: *const ::std::os::raw::c_char,
7353        n: ::std::os::raw::c_int,
7354    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7355        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_trUtf8(s, c, n) };
7356        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7357    }
7358}
7359
7360pub mod q_qml_file {
7361    //! C++ type: <span style='color: green;'>```QQmlFile```</span>
7362
7363    /// C++ enum: <span style='color: green;'>```QQmlFile::Status```</span>.
7364    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
7365    #[repr(transparent)]
7366    pub struct Status(::std::os::raw::c_int);
7367
7368    impl From<::std::os::raw::c_int> for Status {
7369        fn from(value: ::std::os::raw::c_int) -> Self {
7370            Status(value)
7371        }
7372    }
7373
7374    impl From<Status> for ::std::os::raw::c_int {
7375        fn from(value: Status) -> Self {
7376            value.0
7377        }
7378    }
7379
7380    impl Status {
7381        pub fn to_int(&self) -> ::std::os::raw::c_int {
7382            self.0
7383        }
7384    }
7385
7386    impl Status {
7387        /// C++ enum variant: <span style='color: green;'>```Null = 0```</span>
7388        #[allow(non_upper_case_globals)]
7389        pub const Null: crate::q_qml_file::Status = crate::q_qml_file::Status(0);
7390        /// C++ enum variant: <span style='color: green;'>```Ready = 1```</span>
7391        #[allow(non_upper_case_globals)]
7392        pub const Ready: crate::q_qml_file::Status = crate::q_qml_file::Status(1);
7393        /// C++ enum variant: <span style='color: green;'>```Error = 2```</span>
7394        #[allow(non_upper_case_globals)]
7395        pub const Error: crate::q_qml_file::Status = crate::q_qml_file::Status(2);
7396        /// C++ enum variant: <span style='color: green;'>```Loading = 3```</span>
7397        #[allow(non_upper_case_globals)]
7398        pub const Loading: crate::q_qml_file::Status = crate::q_qml_file::Status(3);
7399    }
7400}
7401/// C++ class: <span style='color: green;'>```QQmlFile```</span>.
7402#[repr(C)]
7403pub struct QQmlFile {
7404    _unused: u8,
7405}
7406impl QQmlFile {
7407    /// Calls C++ function: <span style='color: green;'>```void QQmlFile::clear()```</span>.
7408    #[inline(always)]
7409    pub unsafe fn clear_0a(&self) {
7410        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_clear(
7411            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7412        )
7413    }
7414
7415    /// Calls C++ function: <span style='color: green;'>```void QQmlFile::clear(QObject* arg1)```</span>.
7416    #[inline(always)]
7417    pub unsafe fn clear_1a(
7418        &self,
7419        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
7420    ) {
7421        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_clear1(
7422            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7423            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
7424                .as_raw_ptr() as *mut ::qt_core::QObject,
7425        )
7426    }
7427
7428    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::connectDownloadProgress(QObject* arg1, const char* arg2)```</span>.
7429    #[inline(always)]
7430    pub unsafe fn connect_download_progress_q_object_char(
7431        &self,
7432        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
7433        arg2: *const ::std::os::raw::c_char,
7434    ) -> bool {
7435        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_connectDownloadProgress(
7436            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7437            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
7438                .as_raw_ptr() as *mut ::qt_core::QObject,
7439            arg2,
7440        )
7441    }
7442
7443    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::connectDownloadProgress(QObject* arg1, int arg2)```</span>.
7444    #[inline(always)]
7445    pub unsafe fn connect_download_progress_q_object_int(
7446        &self,
7447        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
7448        arg2: ::std::os::raw::c_int,
7449    ) -> bool {
7450        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_connectDownloadProgress1(
7451            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7452            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
7453                .as_raw_ptr() as *mut ::qt_core::QObject,
7454            arg2,
7455        )
7456    }
7457
7458    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::connectFinished(QObject* arg1, const char* arg2)```</span>.
7459    #[inline(always)]
7460    pub unsafe fn connect_finished_q_object_char(
7461        &self,
7462        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
7463        arg2: *const ::std::os::raw::c_char,
7464    ) -> bool {
7465        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_connectFinished(
7466            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7467            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
7468                .as_raw_ptr() as *mut ::qt_core::QObject,
7469            arg2,
7470        )
7471    }
7472
7473    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::connectFinished(QObject* arg1, int arg2)```</span>.
7474    #[inline(always)]
7475    pub unsafe fn connect_finished_q_object_int(
7476        &self,
7477        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
7478        arg2: ::std::os::raw::c_int,
7479    ) -> bool {
7480        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_connectFinished1(
7481            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7482            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
7483                .as_raw_ptr() as *mut ::qt_core::QObject,
7484            arg2,
7485        )
7486    }
7487
7488    /// Calls C++ function: <span style='color: green;'>```const char* QQmlFile::data() const```</span>.
7489    #[inline(always)]
7490    pub unsafe fn data(&self) -> *const ::std::os::raw::c_char {
7491        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_data(self as *const crate::QQmlFile)
7492    }
7493
7494    /// Calls C++ function: <span style='color: green;'>```QByteArray QQmlFile::dataByteArray() const```</span>.
7495    #[inline(always)]
7496    pub unsafe fn data_byte_array(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
7497        let ffi_result =
7498            { crate::__ffi::ctr_qt_qml_ffi_QQmlFile_dataByteArray(self as *const crate::QQmlFile) };
7499        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7500    }
7501
7502    /// Calls C++ function: <span style='color: green;'>```QString QQmlFile::error() const```</span>.
7503    #[inline(always)]
7504    pub unsafe fn error(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
7505        let ffi_result =
7506            { crate::__ffi::ctr_qt_qml_ffi_QQmlFile_error(self as *const crate::QQmlFile) };
7507        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7508    }
7509
7510    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::isError() const```</span>.
7511    #[inline(always)]
7512    pub unsafe fn is_error(&self) -> bool {
7513        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isError(self as *const crate::QQmlFile)
7514    }
7515
7516    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::isLoading() const```</span>.
7517    #[inline(always)]
7518    pub unsafe fn is_loading(&self) -> bool {
7519        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isLoading(self as *const crate::QQmlFile)
7520    }
7521
7522    /// Calls C++ function: <span style='color: green;'>```static bool QQmlFile::isLocalFile(const QString& url)```</span>.
7523    #[inline(always)]
7524    pub unsafe fn is_local_file_q_string(
7525        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7526    ) -> bool {
7527        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isLocalFile(
7528            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(url)
7529                .as_raw_ptr(),
7530        )
7531    }
7532
7533    /// Calls C++ function: <span style='color: green;'>```static bool QQmlFile::isLocalFile(const QUrl& url)```</span>.
7534    #[inline(always)]
7535    pub unsafe fn is_local_file_q_url(
7536        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
7537    ) -> bool {
7538        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isLocalFile1(
7539            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
7540        )
7541    }
7542
7543    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::isNull() const```</span>.
7544    #[inline(always)]
7545    pub unsafe fn is_null(&self) -> bool {
7546        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isNull(self as *const crate::QQmlFile)
7547    }
7548
7549    /// Calls C++ function: <span style='color: green;'>```bool QQmlFile::isReady() const```</span>.
7550    #[inline(always)]
7551    pub unsafe fn is_ready(&self) -> bool {
7552        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isReady(self as *const crate::QQmlFile)
7553    }
7554
7555    /// Calls C++ function: <span style='color: green;'>```static bool QQmlFile::isSynchronous(const QString& url)```</span>.
7556    #[inline(always)]
7557    pub unsafe fn is_synchronous_q_string(
7558        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7559    ) -> bool {
7560        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isSynchronous(
7561            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(url)
7562                .as_raw_ptr(),
7563        )
7564    }
7565
7566    /// Calls C++ function: <span style='color: green;'>```static bool QQmlFile::isSynchronous(const QUrl& url)```</span>.
7567    #[inline(always)]
7568    pub unsafe fn is_synchronous_q_url(
7569        url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
7570    ) -> bool {
7571        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_isSynchronous1(
7572            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
7573        )
7574    }
7575
7576    /// Calls C++ function: <span style='color: green;'>```void QQmlFile::load(QQmlEngine* arg1, const QUrl& arg2)```</span>.
7577    #[inline(always)]
7578    pub unsafe fn load_q_qml_engine_q_url(
7579        &self,
7580        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7581        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
7582    ) {
7583        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_load(
7584            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7585            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1).as_raw_ptr()
7586                as *mut crate::QQmlEngine,
7587            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg2).as_raw_ptr(),
7588        )
7589    }
7590
7591    /// Calls C++ function: <span style='color: green;'>```void QQmlFile::load(QQmlEngine* arg1, const QString& arg2)```</span>.
7592    #[inline(always)]
7593    pub unsafe fn load_q_qml_engine_q_string(
7594        &self,
7595        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7596        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7597    ) {
7598        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_load1(
7599            self as *const crate::QQmlFile as *mut crate::QQmlFile,
7600            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1).as_raw_ptr()
7601                as *mut crate::QQmlEngine,
7602            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
7603                .as_raw_ptr(),
7604        )
7605    }
7606
7607    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlFile::QQmlFile()```</span>.
7608    #[inline(always)]
7609    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QQmlFile> {
7610        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlFile_QQmlFile() };
7611        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7612    }
7613
7614    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlFile::QQmlFile(QQmlEngine* arg1, const QUrl& arg2)```</span>.
7615    #[inline(always)]
7616    pub unsafe fn from_q_qml_engine_q_url(
7617        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7618        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
7619    ) -> ::cpp_core::CppBox<crate::QQmlFile> {
7620        let ffi_result = {
7621            crate::__ffi::ctr_qt_qml_ffi_QQmlFile_QQmlFile1(
7622                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
7623                    .as_raw_ptr() as *mut crate::QQmlEngine,
7624                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg2)
7625                    .as_raw_ptr(),
7626            )
7627        };
7628        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7629    }
7630
7631    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlFile::QQmlFile(QQmlEngine* arg1, const QString& arg2)```</span>.
7632    #[inline(always)]
7633    pub unsafe fn from_q_qml_engine_q_string(
7634        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7635        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7636    ) -> ::cpp_core::CppBox<crate::QQmlFile> {
7637        let ffi_result = {
7638            crate::__ffi::ctr_qt_qml_ffi_QQmlFile_QQmlFile2(
7639                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
7640                    .as_raw_ptr() as *mut crate::QQmlEngine,
7641                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
7642                    .as_raw_ptr(),
7643            )
7644        };
7645        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7646    }
7647
7648    /// Calls C++ function: <span style='color: green;'>```qint64 QQmlFile::size() const```</span>.
7649    #[inline(always)]
7650    pub unsafe fn size(&self) -> i64 {
7651        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_size(self as *const crate::QQmlFile)
7652    }
7653
7654    /// Calls C++ function: <span style='color: green;'>```QQmlFile::Status QQmlFile::status() const```</span>.
7655    #[inline(always)]
7656    pub unsafe fn status(&self) -> crate::q_qml_file::Status {
7657        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_status(self as *const crate::QQmlFile)
7658    }
7659
7660    /// Calls C++ function: <span style='color: green;'>```QUrl QQmlFile::url() const```</span>.
7661    #[inline(always)]
7662    pub unsafe fn url(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
7663        let ffi_result =
7664            { crate::__ffi::ctr_qt_qml_ffi_QQmlFile_url(self as *const crate::QQmlFile) };
7665        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7666    }
7667
7668    /// Calls C++ function: <span style='color: green;'>```static QString QQmlFile::urlToLocalFileOrQrc(const QString& arg1)```</span>.
7669    #[inline(always)]
7670    pub unsafe fn url_to_local_file_or_qrc_q_string(
7671        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
7672    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7673        let ffi_result = {
7674            crate::__ffi::ctr_qt_qml_ffi_QQmlFile_urlToLocalFileOrQrc(
7675                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg1)
7676                    .as_raw_ptr(),
7677            )
7678        };
7679        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7680    }
7681
7682    /// Calls C++ function: <span style='color: green;'>```static QString QQmlFile::urlToLocalFileOrQrc(const QUrl& arg1)```</span>.
7683    #[inline(always)]
7684    pub unsafe fn url_to_local_file_or_qrc_q_url(
7685        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
7686    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7687        let ffi_result = {
7688            crate::__ffi::ctr_qt_qml_ffi_QQmlFile_urlToLocalFileOrQrc1(
7689                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1)
7690                    .as_raw_ptr(),
7691            )
7692        };
7693        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7694    }
7695}
7696
7697/// <p><a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> will automatically apply a <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> to qml file and asset paths.</p>
7698///
7699/// C++ class: <span style='color: green;'>```QQmlFileSelector```</span>.
7700///
7701/// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> will automatically apply a <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> to qml file and asset paths.</p>
7702/// <p>It is used as follows:</p>
7703/// <pre class="cpp">
7704///
7705///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a></span> engine;
7706///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlfileselector.html#QQmlFileSelector">QQmlFileSelector</a></span><span class="operator">*</span> selector <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qqmlfileselector.html#QQmlFileSelector">QQmlFileSelector</a></span>(<span class="operator">&amp;</span>engine);
7707///
7708/// </pre>
7709/// <p>Then you can swap out files like so:</p>
7710/// <pre class="cpp">
7711///
7712///   main<span class="operator">.</span>qml
7713///   Component<span class="operator">.</span>qml
7714///   asset<span class="operator">.</span>png
7715///   <span class="operator">+</span>unix<span class="operator">/</span>Component<span class="operator">.</span>qml
7716///   <span class="operator">+</span>mac<span class="operator">/</span>asset<span class="operator">.</span>png
7717///
7718/// </pre>
7719/// <p>In this example, main.qml will normally use Component.qml for the Component type. However on a unix platform, the unix selector will be present and the +unix/Component.qml version will be used instead. Note that this acts like swapping out Component.qml with +unix/Component.qml, so when using Component.qml you should not need to alter any paths based on which version was selected.</p>
7720/// <p>For example, to pass the "asset.png" file path around you would refer to it just as "asset.png" in all of main.qml, Component.qml, and +linux/Component.qml. It will be replaced with +mac/asset.png on Mac platforms in all cases.</p>
7721/// <p>For a list of available selectors, see <code>QFileSelector</code>.</p>
7722/// <p>Your platform may also provide additional selectors for you to use. As specified by <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>, directories used for selection must start with a '+' character, so you will not accidentally trigger this feature unless you have directories with such names inside your project.</p>
7723/// <p>If a new <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> is set on the engine, the old one will be replaced. Use <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#get">QQmlFileSelector::get</a>() to query or use the existing instance.</p></div>
7724#[repr(C)]
7725pub struct QQmlFileSelector {
7726    _unused: u8,
7727}
7728impl QQmlFileSelector {
7729    /// <p>Gets the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> currently active on the target <i>engine</i>.</p>
7730    ///
7731    /// Calls C++ function: <span style='color: green;'>```static QQmlFileSelector* QQmlFileSelector::get(QQmlEngine* arg1)```</span>.
7732    ///
7733    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#get">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Gets the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> currently active on the target <i>engine</i>.</p></div>
7734    #[inline(always)]
7735    pub unsafe fn get(
7736        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7737    ) -> ::qt_core::QPtr<crate::QQmlFileSelector> {
7738        let ffi_result = {
7739            crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_get(
7740                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg1)
7741                    .as_raw_ptr() as *mut crate::QQmlEngine,
7742            )
7743        };
7744        ::qt_core::QPtr::from_raw(ffi_result)
7745    }
7746
7747    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlFileSelector::metaObject() const```</span>.
7748    #[inline(always)]
7749    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
7750        let ffi_result = {
7751            crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_metaObject(
7752                self as *const crate::QQmlFileSelector,
7753            )
7754        };
7755        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7756    }
7757
7758    /// <p>Creates a new <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> with parent object <i>parent</i>, which includes its own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>. <i>engine</i> is the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> you wish to apply file selectors to. It will also take ownership of the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a>.</p>
7759    ///
7760    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlFileSelector::QQmlFileSelector(QQmlEngine* engine, QObject* parent = …)```</span>.
7761    ///
7762    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#QQmlFileSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a new <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> with parent object <i>parent</i>, which includes its own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>. <i>engine</i> is the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> you wish to apply file selectors to. It will also take ownership of the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a>.</p></div>
7763    #[inline(always)]
7764    pub unsafe fn new_2a(
7765        engine: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7766        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
7767    ) -> ::qt_core::QBox<crate::QQmlFileSelector> {
7768        let ffi_result = {
7769            crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_QQmlFileSelector(
7770                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(engine)
7771                    .as_raw_ptr() as *mut crate::QQmlEngine,
7772                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
7773                    .as_raw_ptr() as *mut ::qt_core::QObject,
7774            )
7775        };
7776        ::qt_core::QBox::from_raw(ffi_result)
7777    }
7778
7779    /// <p>Creates a new <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> with parent object <i>parent</i>, which includes its own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>. <i>engine</i> is the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> you wish to apply file selectors to. It will also take ownership of the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a>.</p>
7780    ///
7781    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlFileSelector::QQmlFileSelector(QQmlEngine* engine)```</span>.
7782    ///
7783    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#QQmlFileSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a new <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> with parent object <i>parent</i>, which includes its own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>. <i>engine</i> is the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> you wish to apply file selectors to. It will also take ownership of the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a>.</p></div>
7784    #[inline(always)]
7785    pub unsafe fn new_1a(
7786        engine: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
7787    ) -> ::qt_core::QBox<crate::QQmlFileSelector> {
7788        let ffi_result = {
7789            crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_QQmlFileSelector2(
7790                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(engine)
7791                    .as_raw_ptr() as *mut crate::QQmlEngine,
7792            )
7793        };
7794        ::qt_core::QBox::from_raw(ffi_result)
7795    }
7796
7797    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlFileSelector::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
7798    #[inline(always)]
7799    pub unsafe fn qt_metacall(
7800        &self,
7801        arg1: ::qt_core::q_meta_object::Call,
7802        arg2: ::std::os::raw::c_int,
7803        arg3: *mut *mut ::std::ffi::c_void,
7804    ) -> ::std::os::raw::c_int {
7805        crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_qt_metacall(
7806            self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
7807            arg1,
7808            arg2,
7809            arg3,
7810        )
7811    }
7812
7813    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlFileSelector::qt_metacast(const char* arg1)```</span>.
7814    #[inline(always)]
7815    pub unsafe fn qt_metacast(
7816        &self,
7817        arg1: *const ::std::os::raw::c_char,
7818    ) -> *mut ::std::ffi::c_void {
7819        crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_qt_metacast(
7820            self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
7821            arg1,
7822        )
7823    }
7824
7825    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance used by the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a>.</p>
7826    ///
7827    /// Calls C++ function: <span style='color: green;'>```QFileSelector* QQmlFileSelector::selector() const```</span>.
7828    ///
7829    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#selector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance used by the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a>.</p>
7830    /// <p>This function was introduced in  Qt 5.7.</p>
7831    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlfileselector.html#setSelector">setSelector</a>().</p></div>
7832    #[inline(always)]
7833    pub unsafe fn selector(&self) -> ::qt_core::QPtr<::qt_core::QFileSelector> {
7834        let ffi_result = {
7835            crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_selector(
7836                self as *const crate::QQmlFileSelector,
7837            )
7838        };
7839        ::qt_core::QPtr::from_raw(ffi_result)
7840    }
7841
7842    /// <p>Adds extra selectors contained in <i>strings</i> to the current <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> being used. Use this when extra selectors are all you need to avoid having to create your own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance.</p>
7843    ///
7844    /// Calls C++ function: <span style='color: green;'>```void QQmlFileSelector::setExtraSelectors(QStringList& strings)```</span>.
7845    ///
7846    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#setExtraSelectors">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds extra selectors contained in <i>strings</i> to the current <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> being used. Use this when extra selectors are all you need to avoid having to create your own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance.</p></div>
7847    #[inline(always)]
7848    pub unsafe fn set_extra_selectors_q_string_list(
7849        &self,
7850        strings: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
7851    ) {
7852        crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_setExtraSelectors(
7853            self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
7854            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(strings)
7855                .as_raw_ptr() as *mut ::qt_core::QStringList,
7856        )
7857    }
7858
7859    /// <p>Adds extra selectors contained in <i>strings</i> to the current <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> being used. Use this when extra selectors are all you need to avoid having to create your own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance.</p>
7860    ///
7861    /// Calls C++ function: <span style='color: green;'>```void QQmlFileSelector::setExtraSelectors(const QStringList& strings)```</span>.
7862    ///
7863    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#setExtraSelectors-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds extra selectors contained in <i>strings</i> to the current <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> being used. Use this when extra selectors are all you need to avoid having to create your own <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance.</p></div>
7864    #[inline(always)]
7865    pub unsafe fn set_extra_selectors_q_string_list2(
7866        &self,
7867        strings: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
7868    ) {
7869        crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_setExtraSelectors1(
7870            self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
7871            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(strings)
7872                .as_raw_ptr(),
7873        )
7874    }
7875
7876    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance for use by the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> to <i>selector</i>. <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> does not take ownership of the new <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>. To reset <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> to use its internal <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance, call setSelector(0).</p>
7877    ///
7878    /// Calls C++ function: <span style='color: green;'>```void QQmlFileSelector::setSelector(QFileSelector* selector)```</span>.
7879    ///
7880    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#setSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance for use by the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> to <i>selector</i>. <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> does not take ownership of the new <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a>. To reset <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> to use its internal <a href="http://doc.qt.io/qt-5/qfileselector.html">QFileSelector</a> instance, call setSelector(0).</p>
7881    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlfileselector.html#selector">selector</a>().</p></div>
7882    #[inline(always)]
7883    pub unsafe fn set_selector(
7884        &self,
7885        selector: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QFileSelector>>,
7886    ) {
7887        crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_setSelector(
7888            self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
7889            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QFileSelector>>::cast_into(selector)
7890                .as_raw_ptr() as *mut ::qt_core::QFileSelector,
7891        )
7892    }
7893
7894    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
7895    #[inline(always)]
7896    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
7897        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_staticMetaObject() };
7898        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7899            .expect("attempted to construct a null Ref")
7900    }
7901
7902    /// Calls C++ function: <span style='color: green;'>```static QString QQmlFileSelector::tr(const char* s, const char* c, int n)```</span>.
7903    #[inline(always)]
7904    pub unsafe fn tr(
7905        s: *const ::std::os::raw::c_char,
7906        c: *const ::std::os::raw::c_char,
7907        n: ::std::os::raw::c_int,
7908    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7909        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_tr(s, c, n) };
7910        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7911    }
7912
7913    /// Calls C++ function: <span style='color: green;'>```static QString QQmlFileSelector::trUtf8(const char* s, const char* c, int n)```</span>.
7914    #[inline(always)]
7915    pub unsafe fn tr_utf8(
7916        s: *const ::std::os::raw::c_char,
7917        c: *const ::std::os::raw::c_char,
7918        n: ::std::os::raw::c_int,
7919    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7920        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_trUtf8(s, c, n) };
7921        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7922    }
7923}
7924
7925pub mod q_qml_incubator {
7926    //! C++ type: <span style='color: green;'>```QQmlIncubator```</span>
7927
7928    /// <p>Specifies the mode the incubator operates in. Regardless of the incubation mode, a <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> will behave synchronously if the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> does not have a <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> set.</p>
7929    ///
7930    /// C++ enum: <span style='color: green;'>```QQmlIncubator::IncubationMode```</span>.
7931    ///
7932    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the mode the incubator operates in. Regardless of the incubation mode, a <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> will behave synchronously if the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> does not have a <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> set.</p></div>
7933    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
7934    #[repr(transparent)]
7935    pub struct IncubationMode(::std::os::raw::c_int);
7936
7937    impl From<::std::os::raw::c_int> for IncubationMode {
7938        fn from(value: ::std::os::raw::c_int) -> Self {
7939            IncubationMode(value)
7940        }
7941    }
7942
7943    impl From<IncubationMode> for ::std::os::raw::c_int {
7944        fn from(value: IncubationMode) -> Self {
7945            value.0
7946        }
7947    }
7948
7949    impl IncubationMode {
7950        pub fn to_int(&self) -> ::std::os::raw::c_int {
7951            self.0
7952        }
7953    }
7954
7955    impl IncubationMode {
7956        /// The object will be created asynchronously. (C++ enum variant: <span style='color: green;'>```Asynchronous = 0```</span>)
7957        #[allow(non_upper_case_globals)]
7958        pub const Asynchronous: crate::q_qml_incubator::IncubationMode =
7959            crate::q_qml_incubator::IncubationMode(0);
7960        /// If the object is being created in a context that is already part of an asynchronous creation, this incubator will join that existing incubation and execute asynchronously. The existing incubation will not become Ready until both it and this incubation have completed. Otherwise, the incubation will execute synchronously. (C++ enum variant: <span style='color: green;'>```AsynchronousIfNested = 1```</span>)
7961        #[allow(non_upper_case_globals)]
7962        pub const AsynchronousIfNested: crate::q_qml_incubator::IncubationMode =
7963            crate::q_qml_incubator::IncubationMode(1);
7964        /// The object will be created synchronously. (C++ enum variant: <span style='color: green;'>```Synchronous = 2```</span>)
7965        #[allow(non_upper_case_globals)]
7966        pub const Synchronous: crate::q_qml_incubator::IncubationMode =
7967            crate::q_qml_incubator::IncubationMode(2);
7968    }
7969
7970    /// <p>Specifies the status of the <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p>
7971    ///
7972    /// C++ enum: <span style='color: green;'>```QQmlIncubator::Status```</span>.
7973    ///
7974    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#Status-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the status of the <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p></div>
7975    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
7976    #[repr(transparent)]
7977    pub struct Status(::std::os::raw::c_int);
7978
7979    impl From<::std::os::raw::c_int> for Status {
7980        fn from(value: ::std::os::raw::c_int) -> Self {
7981            Status(value)
7982        }
7983    }
7984
7985    impl From<Status> for ::std::os::raw::c_int {
7986        fn from(value: Status) -> Self {
7987            value.0
7988        }
7989    }
7990
7991    impl Status {
7992        pub fn to_int(&self) -> ::std::os::raw::c_int {
7993            self.0
7994        }
7995    }
7996
7997    impl Status {
7998        /// Incubation is not in progress. Call <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() to begin incubating. (C++ enum variant: <span style='color: green;'>```Null = 0```</span>)
7999        #[allow(non_upper_case_globals)]
8000        pub const Null: crate::q_qml_incubator::Status = crate::q_qml_incubator::Status(0);
8001        /// The object is fully created and can be accessed by calling <a href="http://doc.qt.io/qt-5/qqmlincubator.html#object">object</a>(). (C++ enum variant: <span style='color: green;'>```Ready = 1```</span>)
8002        #[allow(non_upper_case_globals)]
8003        pub const Ready: crate::q_qml_incubator::Status = crate::q_qml_incubator::Status(1);
8004        /// The object is in the process of being created. (C++ enum variant: <span style='color: green;'>```Loading = 2```</span>)
8005        #[allow(non_upper_case_globals)]
8006        pub const Loading: crate::q_qml_incubator::Status = crate::q_qml_incubator::Status(2);
8007        /// An error occurred. The errors can be access by calling <a href="http://doc.qt.io/qt-5/qqmlincubator.html#errors">errors</a>(). (C++ enum variant: <span style='color: green;'>```Error = 3```</span>)
8008        #[allow(non_upper_case_globals)]
8009        pub const Error: crate::q_qml_incubator::Status = crate::q_qml_incubator::Status(3);
8010    }
8011}
8012/// <p>Creating QML objects - like delegates in a view, or a new page in an application - can take a noticeable amount of time, especially on resource constrained mobile devices. When an application uses <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() directly, the QML object instance is created synchronously which, depending on the complexity of the object, can cause noticeable pauses or stutters in the application.</p>
8013///
8014/// C++ class: <span style='color: green;'>```QQmlIncubator```</span>.
8015///
8016/// <a href="http://doc.qt.io/qt-5/qqmlincubator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creating QML objects - like delegates in a view, or a new page in an application - can take a noticeable amount of time, especially on resource constrained mobile devices. When an application uses <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() directly, the QML object instance is created synchronously which, depending on the complexity of the object, can cause noticeable pauses or stutters in the application.</p>
8017/// <p>The use of <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> gives more control over the creation of a QML object, including allowing it to be created asynchronously using application idle time. The following example shows a simple use of <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p>
8018/// <pre class="cpp">
8019///
8020///   <span class="type">QQmlIncubator</span> incubator;
8021///   component<span class="operator">-</span><span class="operator">&gt;</span>create(incubator);
8022///
8023///   <span class="keyword">while</span> (<span class="operator">!</span>incubator<span class="operator">.</span>isReady()) {
8024/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qcoreapplication.html">QCoreApplication</a></span><span class="operator">::</span>processEvents(<span class="type"><a href="http://doc.qt.io/qt-5/qeventloop.html">QEventLoop</a></span><span class="operator">::</span>AllEvents<span class="operator">,</span> <span class="number">50</span>);
8025///   }
8026///
8027///   <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span> <span class="operator">*</span>object <span class="operator">=</span> incubator<span class="operator">.</span>object();
8028///
8029/// </pre>
8030/// <p>Asynchronous incubators are controlled by a <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> that is set on the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>, which lets the engine know when the application is idle and incubating objects should be processed. If an incubation controller is not set on the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>, <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> creates objects synchronously regardless of the specified <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">IncubationMode</a>.</p>
8031/// <p><a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> supports three incubation modes:</p>
8032/// <ul>
8033/// <li>Synchronous The creation occurs synchronously. That is, once the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() call returns, the incubator will already be in either the Error or Ready state. A synchronous incubator has no real advantage compared to using the synchronous creation methods on <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> directly, but it may simplify an application's implementation to use the same API for both synchronous and asynchronous creations.</li>
8034/// <li>Asynchronous (default) The creation occurs asynchronously, assuming a QQmlIncubatorController is set on the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.<p>The incubator will remain in the Loading state until either the creation is complete or an error occurs. The <a href="http://doc.qt.io/qt-5/qqmlincubator.html#statusChanged">statusChanged</a>() callback can be used to be notified of status changes.</p>
8035/// <p>Applications should use the Asynchronous incubation mode to create objects that are not needed immediately. For example, the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> type uses Asynchronous incubation to create objects that are slightly off screen while the list is being scrolled. If, during asynchronous creation, the object is needed immediately the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#forceCompletion">QQmlIncubator::forceCompletion</a>() method can be called to complete the creation process synchronously.</p>
8036/// </li>
8037/// <li><a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a> The creation will occur asynchronously if part of a nested asynchronous creation, or synchronously if not.<p>In most scenarios where a QML component wants the appearance of a synchronous instantiation, it should use this mode.</p>
8038/// <p>This mode is best explained with an example. When the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> type is first created, it needs to populate itself with an initial set of delegates to show. If the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> was 400 pixels high, and each delegate was 100 pixels high, it would need to create four initial delegate instances. If the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> used the Asynchronous incubation mode, the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> would always be created empty and then, sometime later, the four initial items would appear.</p>
8039/// <p>Conversely, if the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> was to use the Synchronous incubation mode it would behave correctly but it may introduce stutters into the application. As QML would have to stop and instantiate the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a>'s delegates synchronously, if the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> was part of a QML component that was being instantiated asynchronously this would undo much of the benefit of asynchronous instantiation.</p>
8040/// <p>The <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a> mode reconciles this problem. By using <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a>, the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> delegates are instantiated asynchronously if the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> itself is already part of an asynchronous instantiation, and synchronously otherwise. In the case of a nested asynchronous instantiation, the outer asynchronous instantiation will not complete until after all the nested instantiations have also completed. This ensures that by the time the outer asynchronous instantitation completes, inner items like <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> have already completed loading their initial delegates.</p>
8041/// <p>It is almost always incorrect to use the Synchronous incubation mode - elements or components that want the appearance of synchronous instantiation, but without the downsides of introducing freezes or stutters into the application, should use the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a> incubation mode.</p>
8042/// </li>
8043/// </ul></div>
8044#[repr(C)]
8045pub struct QQmlIncubator {
8046    _unused: u8,
8047}
8048impl QQmlIncubator {
8049    /// <p>Clears the incubator. Any in-progress incubation is aborted. If the incubator is in the Ready state, the created object is <b>not</b> deleted.</p>
8050    ///
8051    /// Calls C++ function: <span style='color: green;'>```void QQmlIncubator::clear()```</span>.
8052    ///
8053    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clears the incubator. Any in-progress incubation is aborted. If the incubator is in the Ready state, the created object is <b>not</b> deleted.</p></div>
8054    #[inline(always)]
8055    pub unsafe fn clear(&self) {
8056        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_clear(
8057            self as *const crate::QQmlIncubator as *mut crate::QQmlIncubator,
8058        )
8059    }
8060
8061    /// <p>Return the list of errors encountered while incubating the object.</p>
8062    ///
8063    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError> QQmlIncubator::errors() const```</span>.
8064    ///
8065    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#errors">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the list of errors encountered while incubating the object.</p></div>
8066    #[inline(always)]
8067    pub unsafe fn errors(&self) -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
8068        let ffi_result = {
8069            crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_errors(self as *const crate::QQmlIncubator)
8070        };
8071        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8072    }
8073
8074    /// <p>Force any in-progress incubation to finish synchronously. Once this call returns, the incubator will not be in the Loading state.</p>
8075    ///
8076    /// Calls C++ function: <span style='color: green;'>```void QQmlIncubator::forceCompletion()```</span>.
8077    ///
8078    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#forceCompletion">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Force any in-progress incubation to finish synchronously. Once this call returns, the incubator will not be in the Loading state.</p></div>
8079    #[inline(always)]
8080    pub unsafe fn force_completion(&self) {
8081        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_forceCompletion(
8082            self as *const crate::QQmlIncubator as *mut crate::QQmlIncubator,
8083        )
8084    }
8085
8086    /// <p>Return the incubation mode passed to the <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> constructor.</p>
8087    ///
8088    /// Calls C++ function: <span style='color: green;'>```QQmlIncubator::IncubationMode QQmlIncubator::incubationMode() const```</span>.
8089    ///
8090    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#incubationMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the incubation mode passed to the <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> constructor.</p></div>
8091    #[inline(always)]
8092    pub unsafe fn incubation_mode(&self) -> crate::q_qml_incubator::IncubationMode {
8093        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_incubationMode(
8094            self as *const crate::QQmlIncubator,
8095        )
8096    }
8097
8098    /// <p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Error.</p>
8099    ///
8100    /// Calls C++ function: <span style='color: green;'>```bool QQmlIncubator::isError() const```</span>.
8101    ///
8102    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#isError">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Error.</p></div>
8103    #[inline(always)]
8104    pub unsafe fn is_error(&self) -> bool {
8105        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_isError(self as *const crate::QQmlIncubator)
8106    }
8107
8108    /// <p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Loading.</p>
8109    ///
8110    /// Calls C++ function: <span style='color: green;'>```bool QQmlIncubator::isLoading() const```</span>.
8111    ///
8112    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#isLoading">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Loading.</p></div>
8113    #[inline(always)]
8114    pub unsafe fn is_loading(&self) -> bool {
8115        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_isLoading(self as *const crate::QQmlIncubator)
8116    }
8117
8118    /// <p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Null.</p>
8119    ///
8120    /// Calls C++ function: <span style='color: green;'>```bool QQmlIncubator::isNull() const```</span>.
8121    ///
8122    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#isNull">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Null.</p></div>
8123    #[inline(always)]
8124    pub unsafe fn is_null(&self) -> bool {
8125        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_isNull(self as *const crate::QQmlIncubator)
8126    }
8127
8128    /// <p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Ready.</p>
8129    ///
8130    /// Calls C++ function: <span style='color: green;'>```bool QQmlIncubator::isReady() const```</span>.
8131    ///
8132    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#isReady">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the incubator's <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">status</a>() is Ready.</p></div>
8133    #[inline(always)]
8134    pub unsafe fn is_ready(&self) -> bool {
8135        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_isReady(self as *const crate::QQmlIncubator)
8136    }
8137
8138    /// <p>Create a new incubator with the specified <i>mode</i></p>
8139    ///
8140    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlIncubator::QQmlIncubator(QQmlIncubator::IncubationMode arg1 = …)```</span>.
8141    ///
8142    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#QQmlIncubator-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new incubator with the specified <i>mode</i></p></div>
8143    #[inline(always)]
8144    pub unsafe fn new_1a(
8145        arg1: crate::q_qml_incubator::IncubationMode,
8146    ) -> ::cpp_core::CppBox<crate::QQmlIncubator> {
8147        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_QQmlIncubator(arg1) };
8148        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8149    }
8150
8151    /// <p>Creating QML objects - like delegates in a view, or a new page in an application - can take a noticeable amount of time, especially on resource constrained mobile devices. When an application uses <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() directly, the QML object instance is created synchronously which, depending on the complexity of the object, can cause noticeable pauses or stutters in the application.</p>
8152    ///
8153    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlIncubator::QQmlIncubator()```</span>.
8154    ///
8155    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creating QML objects - like delegates in a view, or a new page in an application - can take a noticeable amount of time, especially on resource constrained mobile devices. When an application uses <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() directly, the QML object instance is created synchronously which, depending on the complexity of the object, can cause noticeable pauses or stutters in the application.</p>
8156    /// <p>The use of <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> gives more control over the creation of a QML object, including allowing it to be created asynchronously using application idle time. The following example shows a simple use of <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a>.</p>
8157    /// <pre class="cpp">
8158    ///
8159    ///   <span class="type">QQmlIncubator</span> incubator;
8160    ///   component<span class="operator">-</span><span class="operator">&gt;</span>create(incubator);
8161    ///
8162    ///   <span class="keyword">while</span> (<span class="operator">!</span>incubator<span class="operator">.</span>isReady()) {
8163    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qcoreapplication.html">QCoreApplication</a></span><span class="operator">::</span>processEvents(<span class="type"><a href="http://doc.qt.io/qt-5/qeventloop.html">QEventLoop</a></span><span class="operator">::</span>AllEvents<span class="operator">,</span> <span class="number">50</span>);
8164    ///   }
8165    ///
8166    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span> <span class="operator">*</span>object <span class="operator">=</span> incubator<span class="operator">.</span>object();
8167    ///
8168    /// </pre>
8169    /// <p>Asynchronous incubators are controlled by a <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> that is set on the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>, which lets the engine know when the application is idle and incubating objects should be processed. If an incubation controller is not set on the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>, <a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> creates objects synchronously regardless of the specified <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">IncubationMode</a>.</p>
8170    /// <p><a href="http://doc.qt.io/qt-5/qqmlincubator.html">QQmlIncubator</a> supports three incubation modes:</p>
8171    /// <ul>
8172    /// <li>Synchronous The creation occurs synchronously. That is, once the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#create">QQmlComponent::create</a>() call returns, the incubator will already be in either the Error or Ready state. A synchronous incubator has no real advantage compared to using the synchronous creation methods on <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a> directly, but it may simplify an application's implementation to use the same API for both synchronous and asynchronous creations.</li>
8173    /// <li>Asynchronous (default) The creation occurs asynchronously, assuming a QQmlIncubatorController is set on the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.<p>The incubator will remain in the Loading state until either the creation is complete or an error occurs. The <a href="http://doc.qt.io/qt-5/qqmlincubator.html#statusChanged">statusChanged</a>() callback can be used to be notified of status changes.</p>
8174    /// <p>Applications should use the Asynchronous incubation mode to create objects that are not needed immediately. For example, the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> type uses Asynchronous incubation to create objects that are slightly off screen while the list is being scrolled. If, during asynchronous creation, the object is needed immediately the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#forceCompletion">QQmlIncubator::forceCompletion</a>() method can be called to complete the creation process synchronously.</p>
8175    /// </li>
8176    /// <li><a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a> The creation will occur asynchronously if part of a nested asynchronous creation, or synchronously if not.<p>In most scenarios where a QML component wants the appearance of a synchronous instantiation, it should use this mode.</p>
8177    /// <p>This mode is best explained with an example. When the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> type is first created, it needs to populate itself with an initial set of delegates to show. If the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> was 400 pixels high, and each delegate was 100 pixels high, it would need to create four initial delegate instances. If the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> used the Asynchronous incubation mode, the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> would always be created empty and then, sometime later, the four initial items would appear.</p>
8178    /// <p>Conversely, if the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> was to use the Synchronous incubation mode it would behave correctly but it may introduce stutters into the application. As QML would have to stop and instantiate the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a>'s delegates synchronously, if the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> was part of a QML component that was being instantiated asynchronously this would undo much of the benefit of asynchronous instantiation.</p>
8179    /// <p>The <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a> mode reconciles this problem. By using <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a>, the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> delegates are instantiated asynchronously if the <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> itself is already part of an asynchronous instantiation, and synchronously otherwise. In the case of a nested asynchronous instantiation, the outer asynchronous instantiation will not complete until after all the nested instantiations have also completed. This ensures that by the time the outer asynchronous instantitation completes, inner items like <a href="http://doc.qt.io/qt-5/qml-qtquick-listview.html">ListView</a> have already completed loading their initial delegates.</p>
8180    /// <p>It is almost always incorrect to use the Synchronous incubation mode - elements or components that want the appearance of synchronous instantiation, but without the downsides of introducing freezes or stutters into the application, should use the <a href="http://doc.qt.io/qt-5/qqmlincubator.html#IncubationMode-enum">AsynchronousIfNested</a> incubation mode.</p>
8181    /// </li>
8182    /// </ul></div>
8183    #[inline(always)]
8184    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QQmlIncubator> {
8185        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_QQmlIncubator1() };
8186        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8187    }
8188
8189    /// <p>Return the incubated object if the status is Ready, otherwise 0.</p>
8190    ///
8191    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlIncubator::object() const```</span>.
8192    ///
8193    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#object">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the incubated object if the status is Ready, otherwise 0.</p></div>
8194    #[inline(always)]
8195    pub unsafe fn object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
8196        let ffi_result = {
8197            crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_object(self as *const crate::QQmlIncubator)
8198        };
8199        ::qt_core::QPtr::from_raw(ffi_result)
8200    }
8201
8202    /// <p>Return the current status of the incubator.</p>
8203    ///
8204    /// Calls C++ function: <span style='color: green;'>```QQmlIncubator::Status QQmlIncubator::status() const```</span>.
8205    ///
8206    /// <a href="http://doc.qt.io/qt-5/qqmlincubator.html#status">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the current status of the incubator.</p></div>
8207    #[inline(always)]
8208    pub unsafe fn status(&self) -> crate::q_qml_incubator::Status {
8209        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_status(self as *const crate::QQmlIncubator)
8210    }
8211}
8212
8213/// <p>In order to behave asynchronously and not introduce stutters or freezes in an application, the process of creating objects a QQmlIncubators must be driven only during the application's idle time. <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> allows the application to control exactly when, how often and for how long this processing occurs.</p>
8214///
8215/// C++ class: <span style='color: green;'>```QQmlIncubationController```</span>.
8216///
8217/// <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>In order to behave asynchronously and not introduce stutters or freezes in an application, the process of creating objects a QQmlIncubators must be driven only during the application's idle time. <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> allows the application to control exactly when, how often and for how long this processing occurs.</p>
8218/// <p>A <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html">QQmlIncubationController</a> derived instance should be created and set on a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> by calling the <a href="http://doc.qt.io/qt-5/qqmlengine.html#setIncubationController">QQmlEngine::setIncubationController</a>() method. Processing is then controlled by calling the <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html#incubateFor">QQmlIncubationController::incubateFor</a>() or <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html#incubateWhile">QQmlIncubationController::incubateWhile</a>() methods as dictated by the application's requirements.</p>
8219/// <p>For example, this is an example of a incubation controller that will incubate for a maximum of 5 milliseconds out of every 16 milliseconds.</p>
8220/// <pre class="cpp">
8221///
8222///   <span class="keyword">class</span> PeriodicIncubationController : <span class="keyword">public</span> <span class="type"><a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></span><span class="operator">,</span>
8223/// &#32;   &#32;   &#32;   &#32;   &#32;   &#32;   &#32;   &#32;   &#32;      <span class="keyword">public</span> <span class="type">QQmlIncubationController</span>
8224///   {
8225///   <span class="keyword">public</span>:
8226/// &#32;     PeriodicIncubationController() {
8227/// &#32;   &#32;     startTimer(<span class="number">16</span>);
8228/// &#32;     }
8229///
8230///   <span class="keyword">protected</span>:
8231/// &#32;     <span class="type">void</span> timerEvent(<span class="type"><a href="http://doc.qt.io/qt-5/qtimerevent.html">QTimerEvent</a></span> <span class="operator">*</span>) override {
8232/// &#32;   &#32;     incubateFor(<span class="number">5</span>);
8233/// &#32;     }
8234///   };
8235///
8236/// </pre>
8237/// <p>Although the previous example would work, it is not optimal. Real world incubation controllers should try and maximize the amount of idle time they consume - rather than a static amount like 5 milliseconds - while not disturbing the application.</p></div>
8238#[repr(C)]
8239pub struct QQmlIncubationController {
8240    _unused: u8,
8241}
8242impl QQmlIncubationController {
8243    /// <p>Return the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> this incubation controller is set on, or 0 if it has not been set on any engine.</p>
8244    ///
8245    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* QQmlIncubationController::engine() const```</span>.
8246    ///
8247    /// <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html#engine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> this incubation controller is set on, or 0 if it has not been set on any engine.</p></div>
8248    #[inline(always)]
8249    pub unsafe fn engine(&self) -> ::qt_core::QPtr<crate::QQmlEngine> {
8250        let ffi_result = {
8251            crate::__ffi::ctr_qt_qml_ffi_QQmlIncubationController_engine(
8252                self as *const crate::QQmlIncubationController,
8253            )
8254        };
8255        ::qt_core::QPtr::from_raw(ffi_result)
8256    }
8257
8258    /// <p>Incubate objects for <i>msecs</i>, or until there are no more objects to incubate.</p>
8259    ///
8260    /// Calls C++ function: <span style='color: green;'>```void QQmlIncubationController::incubateFor(int msecs)```</span>.
8261    ///
8262    /// <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html#incubateFor">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Incubate objects for <i>msecs</i>, or until there are no more objects to incubate.</p></div>
8263    #[inline(always)]
8264    pub unsafe fn incubate_for(&self, msecs: ::std::os::raw::c_int) {
8265        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubationController_incubateFor(
8266            self as *const crate::QQmlIncubationController as *mut crate::QQmlIncubationController,
8267            msecs,
8268        )
8269    }
8270
8271    /// <p>Return the number of objects currently incubating.</p>
8272    ///
8273    /// Calls C++ function: <span style='color: green;'>```int QQmlIncubationController::incubatingObjectCount() const```</span>.
8274    ///
8275    /// <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html#incubatingObjectCount">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the number of objects currently incubating.</p></div>
8276    #[inline(always)]
8277    pub unsafe fn incubating_object_count(&self) -> ::std::os::raw::c_int {
8278        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubationController_incubatingObjectCount(
8279            self as *const crate::QQmlIncubationController,
8280        )
8281    }
8282
8283    /// <p>Create a new incubation controller.</p>
8284    ///
8285    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlIncubationController::QQmlIncubationController()```</span>.
8286    ///
8287    /// <a href="http://doc.qt.io/qt-5/qqmlincubationcontroller.html#QQmlIncubationController-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a new incubation controller.</p></div>
8288    #[inline(always)]
8289    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QQmlIncubationController> {
8290        let ffi_result =
8291            { crate::__ffi::ctr_qt_qml_ffi_QQmlIncubationController_QQmlIncubationController() };
8292        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8293    }
8294}
8295
8296/// C++ class: <span style='color: green;'>```QQmlInfo```</span>.
8297#[repr(C)]
8298pub struct QQmlInfo {
8299    _unused: u8,
8300}
8301impl QQmlInfo {
8302    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator=(const QQmlInfo& other)```</span>.
8303    #[inline(always)]
8304    pub unsafe fn copy_from(
8305        &self,
8306        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlInfo>>,
8307    ) -> ::cpp_core::Ref<crate::QQmlInfo> {
8308        let ffi_result = {
8309            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator_(
8310                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8311                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlInfo>>::cast_into(other)
8312                    .as_raw_ptr(),
8313            )
8314        };
8315        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8316    }
8317
8318    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlInfo::QQmlInfo(const QQmlInfo& arg1)```</span>.
8319    #[inline(always)]
8320    pub unsafe fn new_copy(
8321        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlInfo>>,
8322    ) -> ::cpp_core::CppBox<crate::QQmlInfo> {
8323        let ffi_result = {
8324            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_QQmlInfo(
8325                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlInfo>>::cast_into(arg1)
8326                    .as_raw_ptr(),
8327            )
8328        };
8329        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8330    }
8331
8332    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(short t)```</span>.
8333    #[inline(always)]
8334    pub unsafe fn shl_short(&self, t: ::std::os::raw::c_short) -> ::cpp_core::Ref<crate::QQmlInfo> {
8335        let ffi_result = {
8336            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__3(
8337                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8338                t,
8339            )
8340        };
8341        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8342    }
8343
8344    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(unsigned short t)```</span>.
8345    #[inline(always)]
8346    pub unsafe fn shl_ushort(
8347        &self,
8348        t: ::std::os::raw::c_ushort,
8349    ) -> ::cpp_core::Ref<crate::QQmlInfo> {
8350        let ffi_result = {
8351            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__4(
8352                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8353                t,
8354            )
8355        };
8356        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8357    }
8358
8359    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(int t)```</span>.
8360    #[inline(always)]
8361    pub unsafe fn shl_int(&self, t: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QQmlInfo> {
8362        let ffi_result = {
8363            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__5(
8364                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8365                t,
8366            )
8367        };
8368        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8369    }
8370
8371    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(unsigned int t)```</span>.
8372    #[inline(always)]
8373    pub unsafe fn shl_uint(&self, t: ::std::os::raw::c_uint) -> ::cpp_core::Ref<crate::QQmlInfo> {
8374        let ffi_result = {
8375            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__6(
8376                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8377                t,
8378            )
8379        };
8380        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8381    }
8382
8383    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(long t)```</span>.
8384    #[inline(always)]
8385    pub unsafe fn shl_long(&self, t: ::std::os::raw::c_long) -> ::cpp_core::Ref<crate::QQmlInfo> {
8386        let ffi_result = {
8387            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__7(
8388                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8389                t,
8390            )
8391        };
8392        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8393    }
8394
8395    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(unsigned long t)```</span>.
8396    #[inline(always)]
8397    pub unsafe fn shl_ulong(&self, t: ::std::os::raw::c_ulong) -> ::cpp_core::Ref<crate::QQmlInfo> {
8398        let ffi_result = {
8399            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__8(
8400                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8401                t,
8402            )
8403        };
8404        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8405    }
8406
8407    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(quint64 t)```</span>.
8408    #[inline(always)]
8409    pub unsafe fn shl_u64(&self, t: u64) -> ::cpp_core::Ref<crate::QQmlInfo> {
8410        let ffi_result = {
8411            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__10(
8412                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8413                t,
8414            )
8415        };
8416        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8417    }
8418
8419    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(double t)```</span>.
8420    #[inline(always)]
8421    pub unsafe fn shl_double(
8422        &self,
8423        t: ::std::os::raw::c_double,
8424    ) -> ::cpp_core::Ref<crate::QQmlInfo> {
8425        let ffi_result = {
8426            crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__12(
8427                self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
8428                t,
8429            )
8430        };
8431        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8432    }
8433}
8434
8435/// <p>A QML engine uses QNetworkAccessManager for all network access. By implementing a factory, it is possible to provide the QML engine with custom QNetworkAccessManager instances with specialized caching, proxy and cookies support.</p>
8436///
8437/// C++ class: <span style='color: green;'>```QQmlNetworkAccessManagerFactory```</span>.
8438///
8439/// <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A QML engine uses QNetworkAccessManager for all network access. By implementing a factory, it is possible to provide the QML engine with custom QNetworkAccessManager instances with specialized caching, proxy and cookies support.</p>
8440/// <p>To implement a factory, subclass <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html">QQmlNetworkAccessManagerFactory</a> and implement the virtual <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#create">create</a>() method, then assign it to the relevant QML engine using <a href="http://doc.qt.io/qt-5/qqmlengine.html#setNetworkAccessManagerFactory">QQmlEngine::setNetworkAccessManagerFactory</a>().</p>
8441/// <p>Note the QML engine may create QNetworkAccessManager instances from multiple threads. Because of this, the implementation of the <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#create">create</a>() method must be <a href="http://doc.qt.io/qt-5/qrandomgenerator.html#reentrancy-and-thread-safety">reentrant</a>. In addition, the developer should be careful if the signals of the object to be returned from <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#create">create</a>() are connected to the slots of an object that may be created in a different thread:</p>
8442/// <ul>
8443/// <li>The QML engine internally handles all requests, and cleans up any QNetworkReply objects it creates. Receiving the QNetworkAccessManager::finished() signal in another thread may not provide the receiver with a valid reply object if it has already been deleted.</li>
8444/// <li>Authentication details provided to QNetworkAccessManager::authenticationRequired() must be provided immediately, so this signal cannot be connected as a <a href="http://doc.qt.io/qt-5/qt.html#ConnectionType-enum">Qt::QueuedConnection</a> (or as the default <a href="http://doc.qt.io/qt-5/qt.html#ConnectionType-enum">Qt::AutoConnection</a> from another thread).</li>
8445/// </ul>
8446/// <p>For more information about signals and threads, see <a href="http://doc.qt.io/qt-5/threads-qobject.html">Threads and QObjects</a> and <a href="http://doc.qt.io/qt-5/threads-qobject.html#signals-and-slots-across-threads">Signals and Slots Across Threads</a>.</p></div>
8447#[repr(C)]
8448pub struct QQmlNetworkAccessManagerFactory {
8449    _unused: u8,
8450}
8451impl QQmlNetworkAccessManagerFactory {
8452    /// <p>A QML engine uses QNetworkAccessManager for all network access. By implementing a factory, it is possible to provide the QML engine with custom QNetworkAccessManager instances with specialized caching, proxy and cookies support.</p>
8453    ///
8454    /// Calls C++ function: <span style='color: green;'>```QQmlNetworkAccessManagerFactory& QQmlNetworkAccessManagerFactory::operator=(const QQmlNetworkAccessManagerFactory& other)```</span>.
8455    ///
8456    /// <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A QML engine uses QNetworkAccessManager for all network access. By implementing a factory, it is possible to provide the QML engine with custom QNetworkAccessManager instances with specialized caching, proxy and cookies support.</p>
8457    /// <p>To implement a factory, subclass <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html">QQmlNetworkAccessManagerFactory</a> and implement the virtual <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#create">create</a>() method, then assign it to the relevant QML engine using <a href="http://doc.qt.io/qt-5/qqmlengine.html#setNetworkAccessManagerFactory">QQmlEngine::setNetworkAccessManagerFactory</a>().</p>
8458    /// <p>Note the QML engine may create QNetworkAccessManager instances from multiple threads. Because of this, the implementation of the <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#create">create</a>() method must be <a href="http://doc.qt.io/qt-5/qrandomgenerator.html#reentrancy-and-thread-safety">reentrant</a>. In addition, the developer should be careful if the signals of the object to be returned from <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#create">create</a>() are connected to the slots of an object that may be created in a different thread:</p>
8459    /// <ul>
8460    /// <li>The QML engine internally handles all requests, and cleans up any QNetworkReply objects it creates. Receiving the QNetworkAccessManager::finished() signal in another thread may not provide the receiver with a valid reply object if it has already been deleted.</li>
8461    /// <li>Authentication details provided to QNetworkAccessManager::authenticationRequired() must be provided immediately, so this signal cannot be connected as a <a href="http://doc.qt.io/qt-5/qt.html#ConnectionType-enum">Qt::QueuedConnection</a> (or as the default <a href="http://doc.qt.io/qt-5/qt.html#ConnectionType-enum">Qt::AutoConnection</a> from another thread).</li>
8462    /// </ul>
8463    /// <p>For more information about signals and threads, see <a href="http://doc.qt.io/qt-5/threads-qobject.html">Threads and QObjects</a> and <a href="http://doc.qt.io/qt-5/threads-qobject.html#signals-and-slots-across-threads">Signals and Slots Across Threads</a>.</p></div>
8464    #[inline(always)]
8465    pub unsafe fn copy_from(
8466        &self,
8467        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlNetworkAccessManagerFactory>>,
8468    ) -> ::cpp_core::Ref<crate::QQmlNetworkAccessManagerFactory> {
8469        let ffi_result = {
8470            crate::__ffi::ctr_qt_qml_ffi_QQmlNetworkAccessManagerFactory_operator_(self as *const crate::QQmlNetworkAccessManagerFactory as *mut crate::QQmlNetworkAccessManagerFactory, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlNetworkAccessManagerFactory>>::cast_into(other).as_raw_ptr())
8471        };
8472        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8473    }
8474}
8475
8476pub mod q_qml_property {
8477    //! C++ type: <span style='color: green;'>```QQmlProperty```</span>
8478
8479    /// <p>This enum specifies a category of QML property.</p>
8480    ///
8481    /// C++ enum: <span style='color: green;'>```QQmlProperty::PropertyTypeCategory```</span>.
8482    ///
8483    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#PropertyTypeCategory-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This enum specifies a category of QML property.</p></div>
8484    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
8485    #[repr(transparent)]
8486    pub struct PropertyTypeCategory(::std::os::raw::c_int);
8487
8488    impl From<::std::os::raw::c_int> for PropertyTypeCategory {
8489        fn from(value: ::std::os::raw::c_int) -> Self {
8490            PropertyTypeCategory(value)
8491        }
8492    }
8493
8494    impl From<PropertyTypeCategory> for ::std::os::raw::c_int {
8495        fn from(value: PropertyTypeCategory) -> Self {
8496            value.0
8497        }
8498    }
8499
8500    impl PropertyTypeCategory {
8501        pub fn to_int(&self) -> ::std::os::raw::c_int {
8502            self.0
8503        }
8504    }
8505
8506    impl PropertyTypeCategory {
8507        /// The property is invalid, or is a signal property. (C++ enum variant: <span style='color: green;'>```InvalidCategory = 0```</span>)
8508        #[allow(non_upper_case_globals)]
8509        pub const InvalidCategory: crate::q_qml_property::PropertyTypeCategory =
8510            crate::q_qml_property::PropertyTypeCategory(0);
8511        /// The property is a <a href="http://doc.qt.io/qt-5/qqmllistproperty.html">QQmlListProperty</a> list property (C++ enum variant: <span style='color: green;'>```List = 1```</span>)
8512        #[allow(non_upper_case_globals)]
8513        pub const List: crate::q_qml_property::PropertyTypeCategory =
8514            crate::q_qml_property::PropertyTypeCategory(1);
8515        /// The property is a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> derived type pointer (C++ enum variant: <span style='color: green;'>```Object = 2```</span>)
8516        #[allow(non_upper_case_globals)]
8517        pub const Object: crate::q_qml_property::PropertyTypeCategory =
8518            crate::q_qml_property::PropertyTypeCategory(2);
8519        /// The property is a normal value property. (C++ enum variant: <span style='color: green;'>```Normal = 3```</span>)
8520        #[allow(non_upper_case_globals)]
8521        pub const Normal: crate::q_qml_property::PropertyTypeCategory =
8522            crate::q_qml_property::PropertyTypeCategory(3);
8523    }
8524
8525    /// <p>This enum specifies a type of QML property.</p>
8526    ///
8527    /// C++ enum: <span style='color: green;'>```QQmlProperty::Type```</span>.
8528    ///
8529    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#Type-enum">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This enum specifies a type of QML property.</p></div>
8530    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
8531    #[repr(transparent)]
8532    pub struct Type(::std::os::raw::c_int);
8533
8534    impl From<::std::os::raw::c_int> for Type {
8535        fn from(value: ::std::os::raw::c_int) -> Self {
8536            Type(value)
8537        }
8538    }
8539
8540    impl From<Type> for ::std::os::raw::c_int {
8541        fn from(value: Type) -> Self {
8542            value.0
8543        }
8544    }
8545
8546    impl Type {
8547        pub fn to_int(&self) -> ::std::os::raw::c_int {
8548            self.0
8549        }
8550    }
8551
8552    impl Type {
8553        /// The property is invalid. (C++ enum variant: <span style='color: green;'>```Invalid = 0```</span>)
8554        #[allow(non_upper_case_globals)]
8555        pub const Invalid: crate::q_qml_property::Type = crate::q_qml_property::Type(0);
8556        /// The property is a regular Qt property. (C++ enum variant: <span style='color: green;'>```Property = 1```</span>)
8557        #[allow(non_upper_case_globals)]
8558        pub const Property: crate::q_qml_property::Type = crate::q_qml_property::Type(1);
8559        /// The property is a signal property. (C++ enum variant: <span style='color: green;'>```SignalProperty = 2```</span>)
8560        #[allow(non_upper_case_globals)]
8561        pub const SignalProperty: crate::q_qml_property::Type = crate::q_qml_property::Type(2);
8562    }
8563}
8564/// <p>As QML uses Qt's meta-type system all of the existing <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> classes can be used to introspect and interact with objects created by QML. However, some of the new features provided by QML - such as type safety and attached properties - are most easily used through the <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> class that simplifies some of their natural complexity.</p>
8565///
8566/// C++ class: <span style='color: green;'>```QQmlProperty```</span>.
8567///
8568/// <a href="http://doc.qt.io/qt-5/qqmlproperty.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>As QML uses Qt's meta-type system all of the existing <a href="http://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> classes can be used to introspect and interact with objects created by QML. However, some of the new features provided by QML - such as type safety and attached properties - are most easily used through the <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> class that simplifies some of their natural complexity.</p>
8569/// <p>Unlike <a href="http://doc.qt.io/qt-5/qmetaproperty.html">QMetaProperty</a> which represents a property on a class type, <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> encapsulates a property on a specific object instance. To read a property's value, programmers create a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> instance and call the <a href="http://doc.qt.io/qt-5/qqmlproperty.html#read">read</a>() method. Likewise to write a property value the <a href="http://doc.qt.io/qt-5/qqmlproperty.html#write">write</a>() method is used.</p>
8570/// <p>For example, for the following QML code:</p>
8571/// <pre class="qml">
8572///
8573///   <span class="comment">// MyItem.qml</span>
8574///   import QtQuick 2.0
8575///
8576///   <span class="type"><a href="http://doc.qt.io/qt-5/qml-qtquick-text.html">Text</a></span> { <span class="name">text</span>: <span class="string">"A bit of text"</span> }
8577///
8578/// </pre>
8579/// <p>The <a href="http://doc.qt.io/qt-5/qml-qtquick-text.html">Text</a> object's properties could be accessed using <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>, like this:</p>
8580/// <pre class="cpp">
8581///
8582///   <span class="preprocessor">#include &lt;QQmlProperty&gt;</span>
8583///   <span class="preprocessor">#include &lt;QGraphicsObject&gt;</span>
8584///
8585///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
8586///
8587///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickview.html">QQuickView</a></span> view(<span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"MyItem.qml"</span>));
8588///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> property(view<span class="operator">.</span>rootObject()<span class="operator">,</span> <span class="string">"font.pixelSize"</span>);
8589///   <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Current pixel size:"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> property<span class="operator">.</span>read()<span class="operator">.</span>toInt();
8590///   property<span class="operator">.</span>write(<span class="number">24</span>);
8591///   <a href="http://doc.qt.io/qt-5/#qWarning">qWarning</a>() <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Pixel size should now be 24:"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> property<span class="operator">.</span>read()<span class="operator">.</span>toInt();
8592///
8593/// </pre></div>
8594#[repr(C)]
8595pub struct QQmlProperty {
8596    _unused: u8,
8597}
8598impl QQmlProperty {
8599    /// <p>Connects the property's change notifier signal to the specified <i>slot</i> of the <i>dest</i> object and returns true. Returns false if this metaproperty does not represent a regular Qt property or if it has no change notifier signal, or if the <i>dest</i> object does not have the specified <i>slot</i>.</p>
8600    ///
8601    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::connectNotifySignal(QObject* dest, const char* slot) const```</span>.
8602    ///
8603    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#connectNotifySignal">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Connects the property's change notifier signal to the specified <i>slot</i> of the <i>dest</i> object and returns true. Returns false if this metaproperty does not represent a regular Qt property or if it has no change notifier signal, or if the <i>dest</i> object does not have the specified <i>slot</i>.</p>
8604    /// <p><b>Note: </b><i>slot</i> should be passed using the SLOT() macro so it is correctly identified.</p></div>
8605    #[inline(always)]
8606    pub unsafe fn connect_notify_signal_q_object_char(
8607        &self,
8608        dest: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8609        slot: *const ::std::os::raw::c_char,
8610    ) -> bool {
8611        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_connectNotifySignal(
8612            self as *const crate::QQmlProperty,
8613            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(dest)
8614                .as_raw_ptr() as *mut ::qt_core::QObject,
8615            slot,
8616        )
8617    }
8618
8619    /// <p>Connects the property's change notifier signal to the specified <i>method</i> of the <i>dest</i> object and returns true. Returns false if this metaproperty does not represent a regular Qt property or if it has no change notifier signal, or if the <i>dest</i> object does not have the specified <i>method</i>.</p>
8620    ///
8621    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::connectNotifySignal(QObject* dest, int method) const```</span>.
8622    ///
8623    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#connectNotifySignal-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Connects the property's change notifier signal to the specified <i>method</i> of the <i>dest</i> object and returns true. Returns false if this metaproperty does not represent a regular Qt property or if it has no change notifier signal, or if the <i>dest</i> object does not have the specified <i>method</i>.</p></div>
8624    #[inline(always)]
8625    pub unsafe fn connect_notify_signal_q_object_int(
8626        &self,
8627        dest: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8628        method: ::std::os::raw::c_int,
8629    ) -> bool {
8630        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_connectNotifySignal1(
8631            self as *const crate::QQmlProperty,
8632            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(dest)
8633                .as_raw_ptr() as *mut ::qt_core::QObject,
8634            method,
8635        )
8636    }
8637
8638    /// <p>Assign <i>other</i> to this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>.</p>
8639    ///
8640    /// Calls C++ function: <span style='color: green;'>```QQmlProperty& QQmlProperty::operator=(const QQmlProperty& arg1)```</span>.
8641    ///
8642    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assign <i>other</i> to this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>.</p></div>
8643    #[inline(always)]
8644    pub unsafe fn copy_from(
8645        &self,
8646        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlProperty>>,
8647    ) -> ::cpp_core::Ref<crate::QQmlProperty> {
8648        let ffi_result = {
8649            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_operator_(
8650                self as *const crate::QQmlProperty as *mut crate::QQmlProperty,
8651                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlProperty>>::cast_into(arg1)
8652                    .as_raw_ptr(),
8653            )
8654        };
8655        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
8656    }
8657
8658    /// <p>Returns true if the property has a change notifier signal, otherwise false.</p>
8659    ///
8660    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::hasNotifySignal() const```</span>.
8661    ///
8662    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#hasNotifySignal">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the property has a change notifier signal, otherwise false.</p></div>
8663    #[inline(always)]
8664    pub unsafe fn has_notify_signal(&self) -> bool {
8665        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_hasNotifySignal(
8666            self as *const crate::QQmlProperty,
8667        )
8668    }
8669
8670    /// <p>Return the Qt metaobject index of the property.</p>
8671    ///
8672    /// Calls C++ function: <span style='color: green;'>```int QQmlProperty::index() const```</span>.
8673    ///
8674    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#index">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the Qt metaobject index of the property.</p></div>
8675    #[inline(always)]
8676    pub unsafe fn index(&self) -> ::std::os::raw::c_int {
8677        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_index(self as *const crate::QQmlProperty)
8678    }
8679
8680    /// <p>Returns true if the property is designable, otherwise false.</p>
8681    ///
8682    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::isDesignable() const```</span>.
8683    ///
8684    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#isDesignable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the property is designable, otherwise false.</p></div>
8685    #[inline(always)]
8686    pub unsafe fn is_designable(&self) -> bool {
8687        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_isDesignable(self as *const crate::QQmlProperty)
8688    }
8689
8690    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> represents a regular Qt property.</p>
8691    ///
8692    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::isProperty() const```</span>.
8693    ///
8694    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#isProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> represents a regular Qt property.</p></div>
8695    #[inline(always)]
8696    pub unsafe fn is_property(&self) -> bool {
8697        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_isProperty(self as *const crate::QQmlProperty)
8698    }
8699
8700    /// <p>Returns true if the property is resettable, otherwise false.</p>
8701    ///
8702    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::isResettable() const```</span>.
8703    ///
8704    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#isResettable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the property is resettable, otherwise false.</p></div>
8705    #[inline(always)]
8706    pub unsafe fn is_resettable(&self) -> bool {
8707        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_isResettable(self as *const crate::QQmlProperty)
8708    }
8709
8710    /// <p>Returns true if this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> represents a QML signal property.</p>
8711    ///
8712    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::isSignalProperty() const```</span>.
8713    ///
8714    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#isSignalProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> represents a QML signal property.</p></div>
8715    #[inline(always)]
8716    pub unsafe fn is_signal_property(&self) -> bool {
8717        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_isSignalProperty(
8718            self as *const crate::QQmlProperty,
8719        )
8720    }
8721
8722    /// <p>Returns true if the <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> refers to a valid property, otherwise false.</p>
8723    ///
8724    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::isValid() const```</span>.
8725    ///
8726    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#isValid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> refers to a valid property, otherwise false.</p></div>
8727    #[inline(always)]
8728    pub unsafe fn is_valid(&self) -> bool {
8729        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_isValid(self as *const crate::QQmlProperty)
8730    }
8731
8732    /// <p>Returns true if the property is writable, otherwise false.</p>
8733    ///
8734    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::isWritable() const```</span>.
8735    ///
8736    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#isWritable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the property is writable, otherwise false.</p></div>
8737    #[inline(always)]
8738    pub unsafe fn is_writable(&self) -> bool {
8739        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_isWritable(self as *const crate::QQmlProperty)
8740    }
8741
8742    /// <p>Return the <a href="http://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> for this property if it is a <a href="http://doc.qt.io/qt-5/qqmlproperty.html#Type-enum">SignalProperty</a>, otherwise returns an invalid <a href="http://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a>.</p>
8743    ///
8744    /// Calls C++ function: <span style='color: green;'>```QMetaMethod QQmlProperty::method() const```</span>.
8745    ///
8746    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#method">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the <a href="http://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> for this property if it is a <a href="http://doc.qt.io/qt-5/qqmlproperty.html#Type-enum">SignalProperty</a>, otherwise returns an invalid <a href="http://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a>.</p></div>
8747    #[inline(always)]
8748    pub unsafe fn method(&self) -> ::cpp_core::CppBox<::qt_core::QMetaMethod> {
8749        let ffi_result = {
8750            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_method(self as *const crate::QQmlProperty)
8751        };
8752        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8753    }
8754
8755    /// <p>Return the name of this QML property.</p>
8756    ///
8757    /// Calls C++ function: <span style='color: green;'>```QString QQmlProperty::name() const```</span>.
8758    ///
8759    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#name">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the name of this QML property.</p></div>
8760    #[inline(always)]
8761    pub unsafe fn name(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
8762        let ffi_result =
8763            { crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_name(self as *const crate::QQmlProperty) };
8764        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8765    }
8766
8767    /// <p>Returns true if the property needs a change notifier signal for bindings to remain upto date, false otherwise.</p>
8768    ///
8769    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::needsNotifySignal() const```</span>.
8770    ///
8771    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#needsNotifySignal">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the property needs a change notifier signal for bindings to remain upto date, false otherwise.</p>
8772    /// <p>Some properties, such as attached properties or those whose value never changes, do not require a change notifier.</p></div>
8773    #[inline(always)]
8774    pub unsafe fn needs_notify_signal(&self) -> bool {
8775        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_needsNotifySignal(
8776            self as *const crate::QQmlProperty,
8777        )
8778    }
8779
8780    /// <p>Create an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>.</p>
8781    ///
8782    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty()```</span>.
8783    ///
8784    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>.</p></div>
8785    #[inline(always)]
8786    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QQmlProperty> {
8787        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty() };
8788        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8789    }
8790
8791    /// <p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the default property of <i>obj</i>. If there is no default property, an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> will be created.</p>
8792    ///
8793    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(QObject* arg1)```</span>.
8794    ///
8795    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the default property of <i>obj</i>. If there is no default property, an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> will be created.</p></div>
8796    #[inline(always)]
8797    pub unsafe fn from_q_object(
8798        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8799    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8800        let ffi_result = {
8801            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty1(
8802                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
8803                    .as_raw_ptr() as *mut ::qt_core::QObject,
8804            )
8805        };
8806        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8807    }
8808
8809    /// <p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the default property of <i>obj</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>. If there is no default property, an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> will be created.</p>
8810    ///
8811    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(QObject* arg1, QQmlContext* arg2)```</span>.
8812    ///
8813    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the default property of <i>obj</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>. If there is no default property, an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> will be created.</p></div>
8814    #[inline(always)]
8815    pub unsafe fn from_q_object_q_qml_context(
8816        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8817        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
8818    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8819        let ffi_result = {
8820            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty2(
8821                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
8822                    .as_raw_ptr() as *mut ::qt_core::QObject,
8823                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg2)
8824                    .as_raw_ptr() as *mut crate::QQmlContext,
8825            )
8826        };
8827        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8828    }
8829
8830    /// <p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the default property of <i>obj</i> using the environment for instantiating QML components that is provided by <i>engine</i>. If there is no default property, an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> will be created.</p>
8831    ///
8832    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(QObject* arg1, QQmlEngine* arg2)```</span>.
8833    ///
8834    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the default property of <i>obj</i> using the environment for instantiating QML components that is provided by <i>engine</i>. If there is no default property, an invalid <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> will be created.</p></div>
8835    #[inline(always)]
8836    pub unsafe fn from_q_object_q_qml_engine(
8837        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8838        arg2: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
8839    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8840        let ffi_result = {
8841            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty3(
8842                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
8843                    .as_raw_ptr() as *mut ::qt_core::QObject,
8844                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg2)
8845                    .as_raw_ptr() as *mut crate::QQmlEngine,
8846            )
8847        };
8848        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8849    }
8850
8851    /// <p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the property <i>name</i> of <i>obj</i>.</p>
8852    ///
8853    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(QObject* arg1, const QString& arg2)```</span>.
8854    ///
8855    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-4">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the property <i>name</i> of <i>obj</i>.</p></div>
8856    #[inline(always)]
8857    pub unsafe fn from_q_object_q_string(
8858        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8859        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
8860    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8861        let ffi_result = {
8862            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty4(
8863                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
8864                    .as_raw_ptr() as *mut ::qt_core::QObject,
8865                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
8866                    .as_raw_ptr(),
8867            )
8868        };
8869        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8870    }
8871
8872    /// <p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the property <i>name</i> of <i>obj</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>.</p>
8873    ///
8874    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(QObject* arg1, const QString& arg2, QQmlContext* arg3)```</span>.
8875    ///
8876    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-5">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the property <i>name</i> of <i>obj</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>.</p>
8877    /// <p>Creating a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> without a context will render some properties - like attached properties - inaccessible.</p></div>
8878    #[inline(always)]
8879    pub unsafe fn from_q_object_q_string_q_qml_context(
8880        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8881        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
8882        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
8883    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8884        let ffi_result = {
8885            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty5(
8886                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
8887                    .as_raw_ptr() as *mut ::qt_core::QObject,
8888                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
8889                    .as_raw_ptr(),
8890                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg3)
8891                    .as_raw_ptr() as *mut crate::QQmlContext,
8892            )
8893        };
8894        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8895    }
8896
8897    /// <p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the property <i>name</i> of <i>obj</i> using the environment for instantiating QML components that is provided by <i>engine</i>.</p>
8898    ///
8899    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(QObject* arg1, const QString& arg2, QQmlEngine* arg3)```</span>.
8900    ///
8901    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-6">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> for the property <i>name</i> of <i>obj</i> using the environment for instantiating QML components that is provided by <i>engine</i>.</p></div>
8902    #[inline(always)]
8903    pub unsafe fn from_q_object_q_string_q_qml_engine(
8904        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
8905        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
8906        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
8907    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8908        let ffi_result = {
8909            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty6(
8910                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
8911                    .as_raw_ptr() as *mut ::qt_core::QObject,
8912                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
8913                    .as_raw_ptr(),
8914                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg3)
8915                    .as_raw_ptr() as *mut crate::QQmlEngine,
8916            )
8917        };
8918        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8919    }
8920
8921    /// <p>Create a copy of <i>other</i>.</p>
8922    ///
8923    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlProperty::QQmlProperty(const QQmlProperty& arg1)```</span>.
8924    ///
8925    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty-7">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Create a copy of <i>other</i>.</p></div>
8926    #[inline(always)]
8927    pub unsafe fn new_copy(
8928        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlProperty>>,
8929    ) -> ::cpp_core::CppBox<crate::QQmlProperty> {
8930        let ffi_result = {
8931            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_QQmlProperty7(
8932                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlProperty>>::cast_into(arg1)
8933                    .as_raw_ptr(),
8934            )
8935        };
8936        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8937    }
8938
8939    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>'s <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
8940    ///
8941    /// Calls C++ function: <span style='color: green;'>```QObject* QQmlProperty::object() const```</span>.
8942    ///
8943    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#object">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a>'s <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p></div>
8944    #[inline(always)]
8945    pub unsafe fn object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
8946        let ffi_result = {
8947            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_object(self as *const crate::QQmlProperty)
8948        };
8949        ::qt_core::QPtr::from_raw(ffi_result)
8950    }
8951
8952    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qmetaproperty.html">Qt property</a> associated with this QML property.</p>
8953    ///
8954    /// Calls C++ function: <span style='color: green;'>```QMetaProperty QQmlProperty::property() const```</span>.
8955    ///
8956    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#property">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qmetaproperty.html">Qt property</a> associated with this QML property.</p></div>
8957    #[inline(always)]
8958    pub unsafe fn property(&self) -> ::cpp_core::CppBox<::qt_core::QMetaProperty> {
8959        let ffi_result = {
8960            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_property(self as *const crate::QQmlProperty)
8961        };
8962        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8963    }
8964
8965    /// <p>Returns the <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> type of the property, or QVariant::Invalid if the property has no <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> type.</p>
8966    ///
8967    /// Calls C++ function: <span style='color: green;'>```int QQmlProperty::propertyType() const```</span>.
8968    ///
8969    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#propertyType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> type of the property, or QVariant::Invalid if the property has no <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> type.</p></div>
8970    #[inline(always)]
8971    pub unsafe fn property_type(&self) -> ::std::os::raw::c_int {
8972        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_propertyType(self as *const crate::QQmlProperty)
8973    }
8974
8975    /// <p>Returns the property category.</p>
8976    ///
8977    /// Calls C++ function: <span style='color: green;'>```QQmlProperty::PropertyTypeCategory QQmlProperty::propertyTypeCategory() const```</span>.
8978    ///
8979    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#propertyTypeCategory">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the property category.</p></div>
8980    #[inline(always)]
8981    pub unsafe fn property_type_category(&self) -> crate::q_qml_property::PropertyTypeCategory {
8982        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_propertyTypeCategory(
8983            self as *const crate::QQmlProperty,
8984        )
8985    }
8986
8987    /// <p>Returns the type name of the property, or 0 if the property has no type name.</p>
8988    ///
8989    /// Calls C++ function: <span style='color: green;'>```const char* QQmlProperty::propertyTypeName() const```</span>.
8990    ///
8991    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#propertyTypeName">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the type name of the property, or 0 if the property has no type name.</p></div>
8992    #[inline(always)]
8993    pub unsafe fn property_type_name(&self) -> *const ::std::os::raw::c_char {
8994        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_propertyTypeName(
8995            self as *const crate::QQmlProperty,
8996        )
8997    }
8998
8999    /// <p>Returns the property value.</p>
9000    ///
9001    /// Calls C++ function: <span style='color: green;'>```QVariant QQmlProperty::read() const```</span>.
9002    ///
9003    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#read">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the property value.</p></div>
9004    #[inline(always)]
9005    pub unsafe fn read(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
9006        let ffi_result =
9007            { crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_read(self as *const crate::QQmlProperty) };
9008        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9009    }
9010
9011    /// <p>Return the <i>name</i> property value of <i>object</i>. This method is equivalent to:</p>
9012    ///
9013    /// Calls C++ function: <span style='color: green;'>```static QVariant QQmlProperty::read(const QObject* arg1, const QString& arg2)```</span>.
9014    ///
9015    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#read-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the <i>name</i> property value of <i>object</i>. This method is equivalent to:</p>
9016    /// <pre class="cpp">
9017    ///
9018    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> p(object<span class="operator">,</span> name);
9019    ///   p<span class="operator">.</span>read();
9020    ///
9021    /// </pre></div>
9022    #[inline(always)]
9023    pub unsafe fn read_q_object_q_string(
9024        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9025        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9026    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
9027        let ffi_result = {
9028            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_read1(
9029                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
9030                    .as_raw_ptr(),
9031                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
9032                    .as_raw_ptr(),
9033            )
9034        };
9035        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9036    }
9037
9038    /// <p>Return the <i>name</i> property value of <i>object</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>. This method is equivalent to:</p>
9039    ///
9040    /// Calls C++ function: <span style='color: green;'>```static QVariant QQmlProperty::read(const QObject* arg1, const QString& arg2, QQmlContext* arg3)```</span>.
9041    ///
9042    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#read-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the <i>name</i> property value of <i>object</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>. This method is equivalent to:</p>
9043    /// <pre class="cpp">
9044    ///
9045    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> p(object<span class="operator">,</span> name<span class="operator">,</span> context);
9046    ///   p<span class="operator">.</span>read();
9047    ///
9048    /// </pre></div>
9049    #[inline(always)]
9050    pub unsafe fn read_q_object_q_string_q_qml_context(
9051        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9052        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9053        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
9054    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
9055        let ffi_result = {
9056            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_read2(
9057                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
9058                    .as_raw_ptr(),
9059                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
9060                    .as_raw_ptr(),
9061                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg3)
9062                    .as_raw_ptr() as *mut crate::QQmlContext,
9063            )
9064        };
9065        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9066    }
9067
9068    /// <p>Return the <i>name</i> property value of <i>object</i> using the environment for instantiating QML components that is provided by <i>engine</i>. . This method is equivalent to:</p>
9069    ///
9070    /// Calls C++ function: <span style='color: green;'>```static QVariant QQmlProperty::read(const QObject* arg1, const QString& arg2, QQmlEngine* arg3)```</span>.
9071    ///
9072    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#read-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Return the <i>name</i> property value of <i>object</i> using the environment for instantiating QML components that is provided by <i>engine</i>. . This method is equivalent to:</p>
9073    /// <pre class="cpp">
9074    ///
9075    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> p(object<span class="operator">,</span> name<span class="operator">,</span> engine);
9076    ///   p<span class="operator">.</span>read();
9077    ///
9078    /// </pre></div>
9079    #[inline(always)]
9080    pub unsafe fn read_q_object_q_string_q_qml_engine(
9081        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9082        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9083        arg3: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
9084    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
9085        let ffi_result = {
9086            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_read3(
9087                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
9088                    .as_raw_ptr(),
9089                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
9090                    .as_raw_ptr(),
9091                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg3)
9092                    .as_raw_ptr() as *mut crate::QQmlEngine,
9093            )
9094        };
9095        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9096    }
9097
9098    /// <p>Resets the property and returns true if the property is resettable. If the property is not resettable, nothing happens and false is returned.</p>
9099    ///
9100    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::reset() const```</span>.
9101    ///
9102    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#reset">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Resets the property and returns true if the property is resettable. If the property is not resettable, nothing happens and false is returned.</p></div>
9103    #[inline(always)]
9104    pub unsafe fn reset(&self) -> bool {
9105        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_reset(self as *const crate::QQmlProperty)
9106    }
9107
9108    /// <p>Returns the type of the property.</p>
9109    ///
9110    /// Calls C++ function: <span style='color: green;'>```QQmlProperty::Type QQmlProperty::type() const```</span>.
9111    ///
9112    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#type">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the type of the property.</p></div>
9113    #[inline(always)]
9114    pub unsafe fn type_(&self) -> crate::q_qml_property::Type {
9115        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_type(self as *const crate::QQmlProperty)
9116    }
9117
9118    /// <p>Sets the property value to <i>value</i>. Returns <code>true</code> on success, or <code>false</code> if the property can't be set because the <i>value</i> is the wrong type, for example.</p>
9119    ///
9120    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::write(const QVariant& arg1) const```</span>.
9121    ///
9122    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#write">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the property value to <i>value</i>. Returns <code>true</code> on success, or <code>false</code> if the property can't be set because the <i>value</i> is the wrong type, for example.</p></div>
9123    #[inline(always)]
9124    pub unsafe fn write_q_variant(
9125        &self,
9126        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
9127    ) -> bool {
9128        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_write(
9129            self as *const crate::QQmlProperty,
9130            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg1)
9131                .as_raw_ptr(),
9132        )
9133    }
9134
9135    /// <p>Writes <i>value</i> to the <i>name</i> property of <i>object</i>. This method is equivalent to:</p>
9136    ///
9137    /// Calls C++ function: <span style='color: green;'>```static bool QQmlProperty::write(QObject* arg1, const QString& arg2, const QVariant& arg3)```</span>.
9138    ///
9139    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#write-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes <i>value</i> to the <i>name</i> property of <i>object</i>. This method is equivalent to:</p>
9140    /// <pre class="cpp">
9141    ///
9142    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> p(object<span class="operator">,</span> name);
9143    ///   p<span class="operator">.</span>write(value);
9144    ///
9145    /// </pre>
9146    /// <p>Returns <code>true</code> on success, <code>false</code> otherwise.</p></div>
9147    #[inline(always)]
9148    pub unsafe fn write_q_object_q_string_q_variant(
9149        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9150        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9151        arg3: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
9152    ) -> bool {
9153        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_write1(
9154            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
9155                .as_raw_ptr() as *mut ::qt_core::QObject,
9156            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
9157                .as_raw_ptr(),
9158            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg3)
9159                .as_raw_ptr(),
9160        )
9161    }
9162
9163    /// <p>Writes <i>value</i> to the <i>name</i> property of <i>object</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>. This method is equivalent to:</p>
9164    ///
9165    /// Calls C++ function: <span style='color: green;'>```static bool QQmlProperty::write(QObject* arg1, const QString& arg2, const QVariant& arg3, QQmlContext* arg4)```</span>.
9166    ///
9167    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#write-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes <i>value</i> to the <i>name</i> property of <i>object</i> using the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">context</a> <i>ctxt</i>. This method is equivalent to:</p>
9168    /// <pre class="cpp">
9169    ///
9170    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> p(object<span class="operator">,</span> name<span class="operator">,</span> ctxt);
9171    ///   p<span class="operator">.</span>write(value);
9172    ///
9173    /// </pre>
9174    /// <p>Returns <code>true</code> on success, <code>false</code> otherwise.</p></div>
9175    #[inline(always)]
9176    pub unsafe fn write_q_object_q_string_q_variant_q_qml_context(
9177        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9178        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9179        arg3: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
9180        arg4: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlContext>>,
9181    ) -> bool {
9182        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_write2(
9183            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
9184                .as_raw_ptr() as *mut ::qt_core::QObject,
9185            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
9186                .as_raw_ptr(),
9187            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg3)
9188                .as_raw_ptr(),
9189            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlContext>>::cast_into(arg4)
9190                .as_raw_ptr() as *mut crate::QQmlContext,
9191        )
9192    }
9193
9194    /// <p>Writes <i>value</i> to the <i>name</i> property of <i>object</i> using the environment for instantiating QML components that is provided by <i>engine</i>. This method is equivalent to:</p>
9195    ///
9196    /// Calls C++ function: <span style='color: green;'>```static bool QQmlProperty::write(QObject* arg1, const QString& arg2, const QVariant& arg3, QQmlEngine* arg4)```</span>.
9197    ///
9198    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#write-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes <i>value</i> to the <i>name</i> property of <i>object</i> using the environment for instantiating QML components that is provided by <i>engine</i>. This method is equivalent to:</p>
9199    /// <pre class="cpp">
9200    ///
9201    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlproperty.html#QQmlProperty">QQmlProperty</a></span> p(object<span class="operator">,</span> name<span class="operator">,</span> engine);
9202    ///   p<span class="operator">.</span>write(value);
9203    ///
9204    /// </pre>
9205    /// <p>Returns <code>true</code> on success, <code>false</code> otherwise.</p></div>
9206    #[inline(always)]
9207    pub unsafe fn write_q_object_q_string_q_variant_q_qml_engine(
9208        arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9209        arg2: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9210        arg3: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
9211        arg4: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QQmlEngine>>,
9212    ) -> bool {
9213        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_write3(
9214            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
9215                .as_raw_ptr() as *mut ::qt_core::QObject,
9216            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg2)
9217                .as_raw_ptr(),
9218            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg3)
9219                .as_raw_ptr(),
9220            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QQmlEngine>>::cast_into(arg4).as_raw_ptr()
9221                as *mut crate::QQmlEngine,
9222        )
9223    }
9224}
9225
9226/// <p><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">QQmlPropertyMap</a> provides a convenient way to expose domain data to the UI layer. The following example shows how you might declare data in C++ and then access it in QML.</p>
9227///
9228/// C++ class: <span style='color: green;'>```QQmlPropertyMap```</span>.
9229///
9230/// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">QQmlPropertyMap</a> provides a convenient way to expose domain data to the UI layer. The following example shows how you might declare data in C++ and then access it in QML.</p>
9231/// <p>In the C++ file:</p>
9232/// <pre class="cpp">
9233///
9234///   <span class="comment">// create our data</span>
9235///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#QQmlPropertyMap">QQmlPropertyMap</a></span> ownerData;
9236///   ownerData<span class="operator">.</span>insert(<span class="string">"name"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span>(<span class="string">"John Smith"</span>)));
9237///   ownerData<span class="operator">.</span>insert(<span class="string">"phone"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span>(<span class="string">"555-5555"</span>)));
9238///
9239///   <span class="comment">// expose it to the UI layer</span>
9240///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickview.html">QQuickView</a></span> view;
9241///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a></span> <span class="operator">*</span>ctxt <span class="operator">=</span> view<span class="operator">.</span>rootContext();
9242///   ctxt<span class="operator">-</span><span class="operator">&gt;</span>setContextProperty(<span class="string">"owner"</span><span class="operator">,</span> <span class="operator">&amp;</span>ownerData);
9243///
9244///   view<span class="operator">.</span>setSource(<span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"main.qml"</span>));
9245///   view<span class="operator">.</span>show();
9246///
9247/// </pre>
9248/// <p>Then, in <code>main.qml</code>:</p>
9249/// <pre class="cpp">
9250///
9251///   Text { text: owner<span class="operator">.</span>name <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> owner<span class="operator">.</span>phone }
9252///
9253/// </pre>
9254/// <p>The binding is dynamic - whenever a key's value is updated, anything bound to that key will be updated as well.</p>
9255/// <p>To detect value changes made in the UI layer you can connect to the <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#valueChanged">valueChanged</a>() signal. However, note that <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#valueChanged">valueChanged</a>() is <b>NOT</b> emitted when changes are made by calling <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#insert">insert</a>() or <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#clear">clear</a>() - it is only emitted when a value is updated from QML.</p>
9256/// <p><b>Note: </b>It is not possible to remove keys from the map; once a key has been added, you can only modify or clear its associated value.</p><p><b>Note: </b>When deriving a class from <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">QQmlPropertyMap</a>, use the <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#QQmlPropertyMap-1">protected two-argument constructor</a> which ensures that the class is correctly registered with the Qt <a href="http://doc.qt.io/qt-5/metaobjects.html">Meta-Object System</a>.</p></div>
9257#[repr(C)]
9258pub struct QQmlPropertyMap {
9259    _unused: u8,
9260}
9261impl QQmlPropertyMap {
9262    /// <p>This signal is emitted whenever one of the values in the map is changed. <i>key</i> is the key corresponding to the <i>value</i> that was changed.</p>
9263    ///
9264    /// Returns a built-in Qt signal `QQmlPropertyMap::valueChanged` that can be passed to `qt_core::Signal::connect`.
9265    ///
9266    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#valueChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted whenever one of the values in the map is changed. <i>key</i> is the key corresponding to the <i>value</i> that was changed.</p>
9267    /// <p><b>Note: </b>valueChanged() is <b>NOT</b> emitted when changes are made by calling <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#insert">insert</a>() or <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#clear">clear</a>() - it is only emitted when a value is updated from QML.</p></div>
9268    #[inline(always)]
9269    pub fn value_changed(
9270        &self,
9271    ) -> ::qt_core::Signal<(*const ::qt_core::QString, *const ::qt_core::QVariant)> {
9272        unsafe {
9273            ::qt_core::Signal::new(
9274                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9275                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9276                    b"2valueChanged(QString const &,QVariant const &)\0",
9277                ),
9278            )
9279        }
9280    }
9281
9282    /// <p>Clears the value (if any) associated with <i>key</i>.</p>
9283    ///
9284    /// Calls C++ function: <span style='color: green;'>```void QQmlPropertyMap::clear(const QString& key)```</span>.
9285    ///
9286    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clears the value (if any) associated with <i>key</i>.</p></div>
9287    #[inline(always)]
9288    pub unsafe fn clear(
9289        &self,
9290        key: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9291    ) {
9292        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_clear(
9293            self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
9294            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(key)
9295                .as_raw_ptr(),
9296        )
9297    }
9298
9299    /// <p>Returns true if the map contains <i>key</i>.</p>
9300    ///
9301    /// Calls C++ function: <span style='color: green;'>```bool QQmlPropertyMap::contains(const QString& key) const```</span>.
9302    ///
9303    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the map contains <i>key</i>.</p>
9304    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#size">size</a>().</p></div>
9305    #[inline(always)]
9306    pub unsafe fn contains(
9307        &self,
9308        key: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9309    ) -> bool {
9310        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_contains(
9311            self as *const crate::QQmlPropertyMap,
9312            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(key)
9313                .as_raw_ptr(),
9314        )
9315    }
9316
9317    /// <p>This is an overloaded function.</p>
9318    ///
9319    /// Calls C++ function: <span style='color: green;'>```int QQmlPropertyMap::count() const```</span>.
9320    ///
9321    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
9322    /// <p>Same as <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#size">size</a>().</p></div>
9323    #[inline(always)]
9324    pub unsafe fn count(&self) -> ::std::os::raw::c_int {
9325        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_count(self as *const crate::QQmlPropertyMap)
9326    }
9327
9328    /// <p>Returns the value associated with the key <i>key</i> as a modifiable reference.</p>
9329    ///
9330    /// Calls C++ function: <span style='color: green;'>```QVariant& QQmlPropertyMap::operator[](const QString& key)```</span>.
9331    ///
9332    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value associated with the key <i>key</i> as a modifiable reference.</p>
9333    /// <p>If the map contains no item with key <i>key</i>, the function inserts an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> into the map with key <i>key</i>, and returns a reference to it.</p>
9334    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#insert">insert</a>() and <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#value">value</a>().</p></div>
9335    #[inline(always)]
9336    pub unsafe fn index_mut(
9337        &self,
9338        key: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9339    ) -> ::cpp_core::Ref<::qt_core::QVariant> {
9340        let ffi_result = {
9341            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_operator__(
9342                self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
9343                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(key)
9344                    .as_raw_ptr(),
9345            )
9346        };
9347        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9348    }
9349
9350    /// <p>This is an overloaded function.</p>
9351    ///
9352    /// Calls C++ function: <span style='color: green;'>```QVariant QQmlPropertyMap::operator[](const QString& key) const```</span>.
9353    ///
9354    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
9355    /// <p>Same as <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#value">value</a>().</p></div>
9356    #[inline(always)]
9357    pub unsafe fn index(
9358        &self,
9359        key: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9360    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
9361        let ffi_result = {
9362            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_operator__1(
9363                self as *const crate::QQmlPropertyMap,
9364                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(key)
9365                    .as_raw_ptr(),
9366            )
9367        };
9368        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9369    }
9370
9371    /// <p>Sets the value associated with <i>key</i> to <i>value</i>.</p>
9372    ///
9373    /// Calls C++ function: <span style='color: green;'>```void QQmlPropertyMap::insert(const QString& key, const QVariant& value)```</span>.
9374    ///
9375    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the value associated with <i>key</i> to <i>value</i>.</p>
9376    /// <p>If the key doesn't exist, it is automatically created.</p></div>
9377    #[inline(always)]
9378    pub unsafe fn insert(
9379        &self,
9380        key: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9381        value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
9382    ) {
9383        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_insert(
9384            self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
9385            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(key)
9386                .as_raw_ptr(),
9387            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(value)
9388                .as_raw_ptr(),
9389        )
9390    }
9391
9392    /// <p>Returns true if the map contains no keys; otherwise returns false.</p>
9393    ///
9394    /// Calls C++ function: <span style='color: green;'>```bool QQmlPropertyMap::isEmpty() const```</span>.
9395    ///
9396    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the map contains no keys; otherwise returns false.</p>
9397    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#size">size</a>().</p></div>
9398    #[inline(always)]
9399    pub unsafe fn is_empty(&self) -> bool {
9400        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_isEmpty(self as *const crate::QQmlPropertyMap)
9401    }
9402
9403    /// <p>Returns the list of keys.</p>
9404    ///
9405    /// Calls C++ function: <span style='color: green;'>```QStringList QQmlPropertyMap::keys() const```</span>.
9406    ///
9407    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#keys">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of keys.</p>
9408    /// <p>Keys that have been cleared will still appear in this list, even though their associated values are invalid QVariants.</p>
9409    /// <p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p></div>
9410    #[inline(always)]
9411    pub unsafe fn keys(&self) -> ::cpp_core::CppBox<::qt_core::QStringList> {
9412        let ffi_result = {
9413            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_keys(self as *const crate::QQmlPropertyMap)
9414        };
9415        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9416    }
9417
9418    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* QQmlPropertyMap::metaObject() const```</span>.
9419    #[inline(always)]
9420    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
9421        let ffi_result = {
9422            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_metaObject(
9423                self as *const crate::QQmlPropertyMap,
9424            )
9425        };
9426        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
9427    }
9428
9429    /// <p>Constructs a bindable map with parent object <i>parent</i>.</p>
9430    ///
9431    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlPropertyMap::QQmlPropertyMap(QObject* parent = …)```</span>.
9432    ///
9433    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#QQmlPropertyMap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a bindable map with parent object <i>parent</i>.</p></div>
9434    #[inline(always)]
9435    pub unsafe fn new_1a(
9436        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
9437    ) -> ::qt_core::QBox<crate::QQmlPropertyMap> {
9438        let ffi_result = {
9439            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_QQmlPropertyMap(
9440                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
9441                    .as_raw_ptr() as *mut ::qt_core::QObject,
9442            )
9443        };
9444        ::qt_core::QBox::from_raw(ffi_result)
9445    }
9446
9447    /// <p><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">QQmlPropertyMap</a> provides a convenient way to expose domain data to the UI layer. The following example shows how you might declare data in C++ and then access it in QML.</p>
9448    ///
9449    /// Calls C++ function: <span style='color: green;'>```[constructor] void QQmlPropertyMap::QQmlPropertyMap()```</span>.
9450    ///
9451    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">QQmlPropertyMap</a> provides a convenient way to expose domain data to the UI layer. The following example shows how you might declare data in C++ and then access it in QML.</p>
9452    /// <p>In the C++ file:</p>
9453    /// <pre class="cpp">
9454    ///
9455    ///   <span class="comment">// create our data</span>
9456    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#QQmlPropertyMap">QQmlPropertyMap</a></span> ownerData;
9457    ///   ownerData<span class="operator">.</span>insert(<span class="string">"name"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span>(<span class="string">"John Smith"</span>)));
9458    ///   ownerData<span class="operator">.</span>insert(<span class="string">"phone"</span><span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span>(<span class="string">"555-5555"</span>)));
9459    ///
9460    ///   <span class="comment">// expose it to the UI layer</span>
9461    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qquickview.html">QQuickView</a></span> view;
9462    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a></span> <span class="operator">*</span>ctxt <span class="operator">=</span> view<span class="operator">.</span>rootContext();
9463    ///   ctxt<span class="operator">-</span><span class="operator">&gt;</span>setContextProperty(<span class="string">"owner"</span><span class="operator">,</span> <span class="operator">&amp;</span>ownerData);
9464    ///
9465    ///   view<span class="operator">.</span>setSource(<span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span><span class="operator">::</span>fromLocalFile(<span class="string">"main.qml"</span>));
9466    ///   view<span class="operator">.</span>show();
9467    ///
9468    /// </pre>
9469    /// <p>Then, in <code>main.qml</code>:</p>
9470    /// <pre class="cpp">
9471    ///
9472    ///   Text { text: owner<span class="operator">.</span>name <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> owner<span class="operator">.</span>phone }
9473    ///
9474    /// </pre>
9475    /// <p>The binding is dynamic - whenever a key's value is updated, anything bound to that key will be updated as well.</p>
9476    /// <p>To detect value changes made in the UI layer you can connect to the <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#valueChanged">valueChanged</a>() signal. However, note that <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#valueChanged">valueChanged</a>() is <b>NOT</b> emitted when changes are made by calling <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#insert">insert</a>() or <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#clear">clear</a>() - it is only emitted when a value is updated from QML.</p>
9477    /// <p><b>Note: </b>It is not possible to remove keys from the map; once a key has been added, you can only modify or clear its associated value.</p><p><b>Note: </b>When deriving a class from <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html">QQmlPropertyMap</a>, use the <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#QQmlPropertyMap-1">protected two-argument constructor</a> which ensures that the class is correctly registered with the Qt <a href="http://doc.qt.io/qt-5/metaobjects.html">Meta-Object System</a>.</p></div>
9478    #[inline(always)]
9479    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QQmlPropertyMap> {
9480        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_QQmlPropertyMap1() };
9481        ::qt_core::QBox::from_raw(ffi_result)
9482    }
9483
9484    /// Calls C++ function: <span style='color: green;'>```virtual int QQmlPropertyMap::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
9485    #[inline(always)]
9486    pub unsafe fn qt_metacall(
9487        &self,
9488        arg1: ::qt_core::q_meta_object::Call,
9489        arg2: ::std::os::raw::c_int,
9490        arg3: *mut *mut ::std::ffi::c_void,
9491    ) -> ::std::os::raw::c_int {
9492        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_qt_metacall(
9493            self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
9494            arg1,
9495            arg2,
9496            arg3,
9497        )
9498    }
9499
9500    /// Calls C++ function: <span style='color: green;'>```virtual void* QQmlPropertyMap::qt_metacast(const char* arg1)```</span>.
9501    #[inline(always)]
9502    pub unsafe fn qt_metacast(
9503        &self,
9504        arg1: *const ::std::os::raw::c_char,
9505    ) -> *mut ::std::ffi::c_void {
9506        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_qt_metacast(
9507            self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
9508            arg1,
9509        )
9510    }
9511
9512    /// <p>Returns the number of keys in the map.</p>
9513    ///
9514    /// Calls C++ function: <span style='color: green;'>```int QQmlPropertyMap::size() const```</span>.
9515    ///
9516    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of keys in the map.</p>
9517    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#count">count</a>().</p></div>
9518    #[inline(always)]
9519    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
9520        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_size(self as *const crate::QQmlPropertyMap)
9521    }
9522
9523    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
9524    #[inline(always)]
9525    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
9526        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_staticMetaObject() };
9527        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
9528            .expect("attempted to construct a null Ref")
9529    }
9530
9531    /// Calls C++ function: <span style='color: green;'>```static QString QQmlPropertyMap::tr(const char* s, const char* c, int n)```</span>.
9532    #[inline(always)]
9533    pub unsafe fn tr(
9534        s: *const ::std::os::raw::c_char,
9535        c: *const ::std::os::raw::c_char,
9536        n: ::std::os::raw::c_int,
9537    ) -> ::cpp_core::CppBox<::qt_core::QString> {
9538        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_tr(s, c, n) };
9539        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9540    }
9541
9542    /// Calls C++ function: <span style='color: green;'>```static QString QQmlPropertyMap::trUtf8(const char* s, const char* c, int n)```</span>.
9543    #[inline(always)]
9544    pub unsafe fn tr_utf8(
9545        s: *const ::std::os::raw::c_char,
9546        c: *const ::std::os::raw::c_char,
9547        n: ::std::os::raw::c_int,
9548    ) -> ::cpp_core::CppBox<::qt_core::QString> {
9549        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_trUtf8(s, c, n) };
9550        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9551    }
9552
9553    /// <p>Returns the value associated with <i>key</i>.</p>
9554    ///
9555    /// Calls C++ function: <span style='color: green;'>```QVariant QQmlPropertyMap::value(const QString& key) const```</span>.
9556    ///
9557    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value associated with <i>key</i>.</p>
9558    /// <p>If no value has been set for this key (or if the value has been cleared), an invalid <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a> is returned.</p></div>
9559    #[inline(always)]
9560    pub unsafe fn value(
9561        &self,
9562        key: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
9563    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
9564        let ffi_result = {
9565            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_value(
9566                self as *const crate::QQmlPropertyMap,
9567                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(key)
9568                    .as_raw_ptr(),
9569            )
9570        };
9571        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9572    }
9573}
9574
9575pub mod q_list_of_q_j_s_value {
9576    //! C++ type: <span style='color: green;'>```QList<QJSValue>```</span>
9577
9578    /// <p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9579    ///
9580    /// C++ class: <span style='color: green;'>```QList<QJSValue>::iterator```</span>.
9581    ///
9582    /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9583    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> features both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
9584    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;) and to modify the list item associated with the iterator. If you want to iterate over a const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>, use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
9585    /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
9586    /// <pre class="cpp">
9587    ///
9588    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
9589    ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
9590    ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
9591    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9592    ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
9593    ///
9594    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
9595    ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
9596    /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
9597    ///
9598    /// </pre>
9599    /// <p>Let's see a few examples of things we can do with a <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> that we cannot do with a <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a>. Here's an example that increments every value stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;int&gt; by 2:</p>
9600    /// <pre class="cpp">
9601    ///
9602    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
9603    ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
9604    /// &#32;     <span class="operator">*</span>i <span class="operator">+</span><span class="operator">=</span> <span class="number">2</span>;
9605    ///
9606    /// </pre>
9607    /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
9608    /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
9609    /// <pre class="cpp">
9610    ///
9611    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
9612    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9613    ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>begin()<span class="operator">,</span> list<span class="operator">.</span>end());
9614    ///
9615    /// </pre>
9616    /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
9617    /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
9618    #[repr(C)]
9619    pub struct Iterator {
9620        _unused: u8,
9621    }
9622    impl Iterator {
9623        /// <p>Advances the iterator by <i>j</i> items. (If <i>j</i> is negative, the iterator goes backward.)</p>
9624        ///
9625        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator+=(long long j)```</span>.
9626        ///
9627        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-eq">C++ documentation</a> for <span style='color: green;'>```iterator &iterator::operator+=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Advances the iterator by <i>j</i> items. (If <i>j</i> is negative, the iterator goes backward.)</p>
9628        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--eq">operator-=</a>() and <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b">operator+</a>().</p></div>
9629        #[inline(always)]
9630        pub unsafe fn add_assign(
9631            &self,
9632            j: ::std::os::raw::c_longlong,
9633        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
9634            let ffi_result = {
9635                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__14(
9636                    self as *const crate::q_list_of_q_j_s_value::Iterator
9637                        as *mut crate::q_list_of_q_j_s_value::Iterator,
9638                    j,
9639                )
9640            };
9641            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9642        }
9643
9644        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9645        ///
9646        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator=(const QList<QJSValue>::iterator& other)```</span>.
9647        ///
9648        /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9649        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> features both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
9650        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;) and to modify the list item associated with the iterator. If you want to iterate over a const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>, use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
9651        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
9652        /// <pre class="cpp">
9653        ///
9654        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
9655        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
9656        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
9657        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9658        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
9659        ///
9660        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
9661        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
9662        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
9663        ///
9664        /// </pre>
9665        /// <p>Let's see a few examples of things we can do with a <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> that we cannot do with a <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a>. Here's an example that increments every value stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;int&gt; by 2:</p>
9666        /// <pre class="cpp">
9667        ///
9668        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
9669        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
9670        /// &#32;     <span class="operator">*</span>i <span class="operator">+</span><span class="operator">=</span> <span class="number">2</span>;
9671        ///
9672        /// </pre>
9673        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
9674        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
9675        /// <pre class="cpp">
9676        ///
9677        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
9678        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9679        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>begin()<span class="operator">,</span> list<span class="operator">.</span>end());
9680        ///
9681        /// </pre>
9682        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
9683        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
9684        #[inline(always)]
9685        pub unsafe fn copy_from(
9686            &self,
9687            other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
9688        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
9689            let ffi_result = {
9690                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_8(self as *const crate::q_list_of_q_j_s_value::Iterator as *mut crate::q_list_of_q_j_s_value::Iterator, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(other).as_raw_ptr())
9691            };
9692            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9693        }
9694
9695        /// <p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
9696        ///
9697        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator--()```</span>.
9698        ///
9699        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
9700        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#begin">QHash::begin</a>() leads to undefined results.</p>
9701        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">operator++</a>().</p></div>
9702        #[inline(always)]
9703        pub unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
9704            let ffi_result = {
9705                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__12(
9706                    self as *const crate::q_list_of_q_j_s_value::Iterator
9707                        as *mut crate::q_list_of_q_j_s_value::Iterator,
9708                )
9709            };
9710            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9711        }
9712
9713        /// <p>This is an overloaded function.</p>
9714        ///
9715        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::iterator::operator--(int arg1)```</span>.
9716        ///
9717        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator---1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
9718        /// <p>The postfix -- operator (<code>i--</code>) makes the preceding item current and returns an iterator pointing to the previously current item.</p></div>
9719        #[inline(always)]
9720        pub unsafe fn dec_postfix(
9721            &self,
9722            arg1: ::std::os::raw::c_int,
9723        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
9724            let ffi_result = {
9725                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__13(
9726                    self as *const crate::q_list_of_q_j_s_value::Iterator
9727                        as *mut crate::q_list_of_q_j_s_value::Iterator,
9728                    arg1,
9729                )
9730            };
9731            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9732        }
9733
9734        /// <p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
9735        ///
9736        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator++()```</span>.
9737        ///
9738        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
9739        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#end">QHash::end</a>() leads to undefined results.</p>
9740        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">operator--</a>().</p></div>
9741        #[inline(always)]
9742        pub unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
9743            let ffi_result = {
9744                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__10(
9745                    self as *const crate::q_list_of_q_j_s_value::Iterator
9746                        as *mut crate::q_list_of_q_j_s_value::Iterator,
9747                )
9748            };
9749            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9750        }
9751
9752        /// <p>This is an overloaded function.</p>
9753        ///
9754        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::iterator::operator++(int arg1)```</span>.
9755        ///
9756        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
9757        /// <p>The postfix ++ operator (<code>i++</code>) advances the iterator to the next item in the hash and returns an iterator to the previously current item.</p></div>
9758        #[inline(always)]
9759        pub unsafe fn inc_postfix(
9760            &self,
9761            arg1: ::std::os::raw::c_int,
9762        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
9763            let ffi_result = {
9764                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__11(
9765                    self as *const crate::q_list_of_q_j_s_value::Iterator
9766                        as *mut crate::q_list_of_q_j_s_value::Iterator,
9767                    arg1,
9768                )
9769            };
9770            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9771        }
9772
9773        /// <p>Returns a modifiable reference to the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
9774        ///
9775        /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::iterator::operator[](long long j) const```</span>.
9776        ///
9777        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-5b-5d">C++ documentation</a> for <span style='color: green;'>```QJsonValueRef iterator::operator[](int j) const```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a modifiable reference to the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
9778        /// <p>This function is provided to make <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> iterators behave like C++ pointers.</p>
9779        /// <p>The return value is of type <a href="http://doc.qt.io/qt-5/qjsonvalue.html#qjsonvalueref">QJsonValueRef</a>, a helper class for <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> and <a href="http://doc.qt.io/qt-5/qjsonobject.html">QJsonObject</a>. When you get an object of type <a href="http://doc.qt.io/qt-5/qjsonvalue.html#qjsonvalueref">QJsonValueRef</a>, you can use it as if it were a reference to a <a href="http://doc.qt.io/qt-5/qjsonvalue.html">QJsonValue</a>. If you assign to it, the assignment will apply to the character in the <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> of <a href="http://doc.qt.io/qt-5/qjsonobject.html">QJsonObject</a> from which you got the reference.</p>
9780        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-2b">operator+</a>().</p></div>
9781        #[inline(always)]
9782        pub unsafe fn index(
9783            &self,
9784            j: ::std::os::raw::c_longlong,
9785        ) -> ::cpp_core::Ref<crate::QJSValue> {
9786            let ffi_result = {
9787                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__1(
9788                    self as *const crate::q_list_of_q_j_s_value::Iterator,
9789                    j,
9790                )
9791            };
9792            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9793        }
9794
9795        /// <p>Returns a modifiable reference to the current item's value.</p>
9796        ///
9797        /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::iterator::operator*() const```</span>.
9798        ///
9799        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a modifiable reference to the current item's value.</p>
9800        /// <p>Same as <a href="http://doc.qt.io/qt-5/qhash-iterator.html#value">value</a>().</p>
9801        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#key">key</a>().</p></div>
9802        #[inline(always)]
9803        pub unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QJSValue> {
9804            let ffi_result = {
9805                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_(
9806                    self as *const crate::q_list_of_q_j_s_value::Iterator,
9807                )
9808            };
9809            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9810        }
9811
9812        /// <p>Constructs an uninitialized iterator.</p>
9813        ///
9814        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::iterator::iterator()```</span>.
9815        ///
9816        /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html#iterator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an uninitialized iterator.</p>
9817        /// <p>Functions like operator*() and operator++() should not be called on an uninitialized iterator. Use operator=() to assign a value to it before using it.</p>
9818        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>().</p></div>
9819        #[inline(always)]
9820        pub unsafe fn new() -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
9821            let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_iterator() };
9822            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9823        }
9824
9825        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::iterator::iterator(const QList<QJSValue>::iterator& o)```</span>.
9826        #[inline(always)]
9827        pub unsafe fn new_copy(
9828            o: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
9829        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
9830            let ffi_result = {
9831                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_iterator1(::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(o).as_raw_ptr())
9832            };
9833            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9834        }
9835
9836        /// <p>Returns a pointer to the current item's value.</p>
9837        ///
9838        /// Calls C++ function: <span style='color: green;'>```QJSValue* QList<QJSValue>::iterator::operator->() const```</span>.
9839        ///
9840        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the current item's value.</p>
9841        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#value">value</a>().</p></div>
9842        #[inline(always)]
9843        pub unsafe fn struct_deref(&self) -> ::cpp_core::Ptr<crate::QJSValue> {
9844            let ffi_result = {
9845                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__(
9846                    self as *const crate::q_list_of_q_j_s_value::Iterator,
9847                )
9848            };
9849            ::cpp_core::Ptr::from_raw(ffi_result)
9850        }
9851
9852        /// <p>Makes the iterator go back by <i>j</i> items. (If <i>j</i> is negative, the iterator goes forward.)</p>
9853        ///
9854        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator-=(long long j)```</span>.
9855        ///
9856        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--eq">C++ documentation</a> for <span style='color: green;'>```iterator &iterator::operator-=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Makes the iterator go back by <i>j</i> items. (If <i>j</i> is negative, the iterator goes forward.)</p>
9857        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-eq">operator+=</a>() and <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-">operator-</a>().</p></div>
9858        #[inline(always)]
9859        pub unsafe fn sub_assign(
9860            &self,
9861            j: ::std::os::raw::c_longlong,
9862        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
9863            let ffi_result = {
9864                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__15(
9865                    self as *const crate::q_list_of_q_j_s_value::Iterator
9866                        as *mut crate::q_list_of_q_j_s_value::Iterator,
9867                    j,
9868                )
9869            };
9870            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9871        }
9872    }
9873
9874    /// <p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9875    ///
9876    /// C++ class: <span style='color: green;'>```QList<QJSValue>::const_iterator```</span>.
9877    ///
9878    /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9879    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
9880    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::const_iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or a <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;). If you want to modify the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as you iterate over it, use <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
9881    /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
9882    /// <pre class="cpp">
9883    ///
9884    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
9885    ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
9886    ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
9887    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9888    ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
9889    ///
9890    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>const_iterator i;
9891    ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>constBegin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>constEnd(); <span class="operator">+</span><span class="operator">+</span>i)
9892    /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
9893    ///
9894    /// </pre>
9895    /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
9896    /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
9897    /// <pre class="cpp">
9898    ///
9899    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
9900    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9901    ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>constBegin()<span class="operator">,</span> list<span class="operator">.</span>constEnd());
9902    ///
9903    /// </pre>
9904    /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
9905    /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
9906    #[repr(C)]
9907    pub struct ConstIterator {
9908        _unused: u8,
9909    }
9910    impl ConstIterator {
9911        /// <p>Advances the iterator by <i>j</i> items.</p>
9912        ///
9913        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator+=(long long j)```</span>.
9914        ///
9915        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-eq">C++ documentation</a> for <span style='color: green;'>```const_iterator &const_iterator::operator+=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Advances the iterator by <i>j</i> items.</p>
9916        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--eq">operator-=</a>() and <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b">operator+</a>().</p></div>
9917        #[inline(always)]
9918        pub unsafe fn add_assign(
9919            &self,
9920            j: ::std::os::raw::c_longlong,
9921        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
9922            let ffi_result = {
9923                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__10(
9924                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
9925                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
9926                    j,
9927                )
9928            };
9929            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9930        }
9931
9932        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9933        ///
9934        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator=(const QList<QJSValue>::const_iterator& other)```</span>.
9935        ///
9936        /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
9937        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
9938        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::const_iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or a <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;). If you want to modify the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as you iterate over it, use <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
9939        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
9940        /// <pre class="cpp">
9941        ///
9942        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
9943        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
9944        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
9945        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9946        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
9947        ///
9948        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>const_iterator i;
9949        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>constBegin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>constEnd(); <span class="operator">+</span><span class="operator">+</span>i)
9950        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
9951        ///
9952        /// </pre>
9953        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
9954        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
9955        /// <pre class="cpp">
9956        ///
9957        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
9958        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
9959        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>constBegin()<span class="operator">,</span> list<span class="operator">.</span>constEnd());
9960        ///
9961        /// </pre>
9962        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
9963        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
9964        #[inline(always)]
9965        pub unsafe fn copy_from(
9966            &self,
9967            other: impl ::cpp_core::CastInto<
9968                ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
9969            >,
9970        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
9971            let ffi_result = {
9972                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_6(
9973                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
9974                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
9975                    ::cpp_core::CastInto::<
9976                        ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
9977                    >::cast_into(other)
9978                    .as_raw_ptr(),
9979                )
9980            };
9981            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
9982        }
9983
9984        /// <p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
9985        ///
9986        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator--()```</span>.
9987        ///
9988        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
9989        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#begin">QAssociativeIterable::begin</a>() leads to undefined results.</p>
9990        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">operator++</a>().</p></div>
9991        #[inline(always)]
9992        pub unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
9993            let ffi_result = {
9994                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__8(
9995                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
9996                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
9997                )
9998            };
9999            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10000        }
10001
10002        /// <p>This is an overloaded function.</p>
10003        ///
10004        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::const_iterator::operator--(int arg1)```</span>.
10005        ///
10006        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator---1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
10007        /// <p>The postfix -- operator (<code>it--</code>) makes the preceding item current and returns an iterator to the previously current item.</p></div>
10008        #[inline(always)]
10009        pub unsafe fn dec_postfix(
10010            &self,
10011            arg1: ::std::os::raw::c_int,
10012        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10013            let ffi_result = {
10014                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__9(
10015                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
10016                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10017                    arg1,
10018                )
10019            };
10020            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10021        }
10022
10023        /// <p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
10024        ///
10025        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator++()```</span>.
10026        ///
10027        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
10028        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#end">QAssociativeIterable::end</a>() leads to undefined results.</p>
10029        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">operator--</a>().</p></div>
10030        #[inline(always)]
10031        pub unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
10032            let ffi_result = {
10033                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__6(
10034                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
10035                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10036                )
10037            };
10038            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10039        }
10040
10041        /// <p>This is an overloaded function.</p>
10042        ///
10043        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::const_iterator::operator++(int arg1)```</span>.
10044        ///
10045        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
10046        /// <p>The postfix ++ operator (<code>it++</code>) advances the iterator to the next item in the container and returns an iterator to the previously current item.</p></div>
10047        #[inline(always)]
10048        pub unsafe fn inc_postfix(
10049            &self,
10050            arg1: ::std::os::raw::c_int,
10051        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10052            let ffi_result = {
10053                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__7(
10054                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
10055                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10056                    arg1,
10057                )
10058            };
10059            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10060        }
10061
10062        /// <p>Returns the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
10063        ///
10064        /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::const_iterator::operator[](long long j) const```</span>.
10065        ///
10066        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-5b-5d">C++ documentation</a> for <span style='color: green;'>```QJsonValue const_iterator::operator[](int j) const```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
10067        /// <p>This function is provided to make <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> iterators behave like C++ pointers.</p>
10068        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-2b">operator+</a>().</p></div>
10069        #[inline(always)]
10070        pub unsafe fn index(
10071            &self,
10072            j: ::std::os::raw::c_longlong,
10073        ) -> ::cpp_core::Ref<crate::QJSValue> {
10074            let ffi_result = {
10075                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__1(
10076                    self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10077                    j,
10078                )
10079            };
10080            ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
10081                .expect("attempted to construct a null Ref")
10082        }
10083
10084        /// <p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
10085        ///
10086        /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::const_iterator::operator*() const```</span>.
10087        ///
10088        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p></div>
10089        #[inline(always)]
10090        pub unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QJSValue> {
10091            let ffi_result = {
10092                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_(
10093                    self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10094                )
10095            };
10096            ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
10097                .expect("attempted to construct a null Ref")
10098        }
10099
10100        /// <p>Constructs an uninitialized iterator.</p>
10101        ///
10102        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::const_iterator::const_iterator()```</span>.
10103        ///
10104        /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html#const_iterator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an uninitialized iterator.</p>
10105        /// <p>Functions like operator*() and operator++() should not be called on an uninitialized iterator. Use operator=() to assign a value to it before using it.</p>
10106        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>().</p></div>
10107        #[inline(always)]
10108        pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10109            let ffi_result =
10110                { crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_const_iterator() };
10111            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10112        }
10113
10114        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::const_iterator::const_iterator(const QList<QJSValue>::iterator& o)```</span>.
10115        #[inline(always)]
10116        pub unsafe fn new_1a(
10117            o: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
10118        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10119            let ffi_result = {
10120                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_const_iterator2(::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(o).as_raw_ptr())
10121            };
10122            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10123        }
10124
10125        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::const_iterator::const_iterator(const QList<QJSValue>::const_iterator& o)```</span>.
10126        #[inline(always)]
10127        pub unsafe fn new_copy(
10128            o: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>,
10129        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10130            let ffi_result = {
10131                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_const_iterator1(
10132                    ::cpp_core::CastInto::<
10133                        ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10134                    >::cast_into(o)
10135                    .as_raw_ptr(),
10136                )
10137            };
10138            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10139        }
10140
10141        /// <p>Returns a pointer to the current result.</p>
10142        ///
10143        /// Calls C++ function: <span style='color: green;'>```const QJSValue* QList<QJSValue>::const_iterator::operator->() const```</span>.
10144        ///
10145        /// <a href="http://doc.qt.io/qt-5/qfuture-const-iterator.html#operator--gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the current result.</p></div>
10146        #[inline(always)]
10147        pub unsafe fn struct_deref(&self) -> ::cpp_core::Ptr<crate::QJSValue> {
10148            let ffi_result = {
10149                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__(
10150                    self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10151                )
10152            };
10153            ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::QJSValue)
10154        }
10155
10156        /// <p>Makes the iterator go back by <i>j</i> items.</p>
10157        ///
10158        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator-=(long long j)```</span>.
10159        ///
10160        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--eq">C++ documentation</a> for <span style='color: green;'>```const_iterator &const_iterator::operator-=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Makes the iterator go back by <i>j</i> items.</p>
10161        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-eq">operator+=</a>() and <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-">operator-</a>().</p></div>
10162        #[inline(always)]
10163        pub unsafe fn sub_assign(
10164            &self,
10165            j: ::std::os::raw::c_longlong,
10166        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
10167            let ffi_result = {
10168                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__11(
10169                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
10170                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10171                    j,
10172                )
10173            };
10174            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10175        }
10176    }
10177
10178    /// C++ class: <span style='color: green;'>```QList<QJSValue>::MemoryLayout```</span>.
10179    #[repr(C)]
10180    pub struct MemoryLayout {
10181        _unused: u8,
10182    }
10183    impl MemoryLayout {
10184        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::MemoryLayout& QList<QJSValue>::MemoryLayout::operator=(const QList<QJSValue>::MemoryLayout& other)```</span>.
10185        #[inline(always)]
10186        pub unsafe fn copy_from(
10187            &self,
10188            other: impl ::cpp_core::CastInto<
10189                ::cpp_core::Ref<crate::q_list_of_q_j_s_value::MemoryLayout>,
10190            >,
10191        ) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::MemoryLayout> {
10192            let ffi_result = {
10193                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_MemoryLayout_operator_(
10194                    self as *const crate::q_list_of_q_j_s_value::MemoryLayout
10195                        as *mut crate::q_list_of_q_j_s_value::MemoryLayout,
10196                    ::cpp_core::CastInto::<
10197                        ::cpp_core::Ref<crate::q_list_of_q_j_s_value::MemoryLayout>,
10198                    >::cast_into(other)
10199                    .as_raw_ptr(),
10200                )
10201            };
10202            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10203        }
10204
10205        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::MemoryLayout::MemoryLayout()```</span>.
10206        #[inline(always)]
10207        pub unsafe fn new() -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::MemoryLayout> {
10208            let ffi_result =
10209                { crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_MemoryLayout_MemoryLayout() };
10210            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10211        }
10212
10213        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::MemoryLayout::MemoryLayout(const QList<QJSValue>::MemoryLayout& other)```</span>.
10214        #[inline(always)]
10215        pub unsafe fn new_copy(
10216            other: impl ::cpp_core::CastInto<
10217                ::cpp_core::Ref<crate::q_list_of_q_j_s_value::MemoryLayout>,
10218            >,
10219        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::MemoryLayout> {
10220            let ffi_result = {
10221                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_MemoryLayout_MemoryLayout1(
10222                    ::cpp_core::CastInto::<
10223                        ::cpp_core::Ref<crate::q_list_of_q_j_s_value::MemoryLayout>,
10224                    >::cast_into(other)
10225                    .as_raw_ptr(),
10226                )
10227            };
10228            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10229        }
10230    }
10231
10232    impl ::cpp_core::ops::Indirection for crate::q_list_of_q_j_s_value::Iterator {
10233        type Output = ::cpp_core::Ref<crate::QJSValue>;
10234        /// <p>Returns a modifiable reference to the current item's value.</p>
10235        ///
10236        /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::iterator::operator*() const```</span>.
10237        ///
10238        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a modifiable reference to the current item's value.</p>
10239        /// <p>Same as <a href="http://doc.qt.io/qt-5/qhash-iterator.html#value">value</a>().</p>
10240        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#key">key</a>().</p></div>
10241        #[inline(always)]
10242        unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QJSValue> {
10243            let ffi_result = {
10244                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_(
10245                    self as *const crate::q_list_of_q_j_s_value::Iterator,
10246                )
10247            };
10248            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10249        }
10250    }
10251
10252    impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>
10253        for crate::q_list_of_q_j_s_value::Iterator
10254    {
10255        /// <p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
10256        ///
10257        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator==(const QList<QJSValue>::iterator& o) const```</span>.
10258        ///
10259        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
10260        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-not-eq">operator!=</a>().</p></div>
10261        #[inline(always)]
10262        fn eq(&self, o: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>) -> bool {
10263            unsafe {
10264                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__2(
10265                    self as *const crate::q_list_of_q_j_s_value::Iterator,
10266                    o.as_raw_ptr(),
10267                )
10268            }
10269        }
10270    }
10271
10272    impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>
10273        for crate::q_list_of_q_j_s_value::Iterator
10274    {
10275        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p>
10276        ///
10277        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator<(const QList<QJSValue>::iterator& other) const```</span>.
10278        ///
10279        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p></div>
10280        #[inline(always)]
10281        unsafe fn lt(
10282            &self,
10283            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>,
10284        ) -> bool {
10285            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_1(
10286                self as *const crate::q_list_of_q_j_s_value::Iterator,
10287                other.as_raw_ptr(),
10288            )
10289        }
10290    }
10291
10292    impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>
10293        for crate::q_list_of_q_j_s_value::Iterator
10294    {
10295        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p>
10296        ///
10297        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator<=(const QList<QJSValue>::iterator& other) const```</span>.
10298        ///
10299        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
10300        #[inline(always)]
10301        unsafe fn le(
10302            &self,
10303            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>,
10304        ) -> bool {
10305            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__4(
10306                self as *const crate::q_list_of_q_j_s_value::Iterator,
10307                other.as_raw_ptr(),
10308            )
10309        }
10310    }
10311
10312    impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>
10313        for crate::q_list_of_q_j_s_value::Iterator
10314    {
10315        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p>
10316        ///
10317        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator>(const QList<QJSValue>::iterator& other) const```</span>.
10318        ///
10319        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p></div>
10320        #[inline(always)]
10321        unsafe fn gt(
10322            &self,
10323            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>,
10324        ) -> bool {
10325            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_2(
10326                self as *const crate::q_list_of_q_j_s_value::Iterator,
10327                other.as_raw_ptr(),
10328            )
10329        }
10330    }
10331
10332    impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>
10333        for crate::q_list_of_q_j_s_value::Iterator
10334    {
10335        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p>
10336        ///
10337        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator>=(const QList<QJSValue>::iterator& other) const```</span>.
10338        ///
10339        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
10340        #[inline(always)]
10341        unsafe fn ge(
10342            &self,
10343            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>,
10344        ) -> bool {
10345            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__5(
10346                self as *const crate::q_list_of_q_j_s_value::Iterator,
10347                other.as_raw_ptr(),
10348            )
10349        }
10350    }
10351
10352    impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10353        for crate::q_list_of_q_j_s_value::Iterator
10354    {
10355        /// <p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
10356        ///
10357        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator==(const QList<QJSValue>::const_iterator& o) const```</span>.
10358        ///
10359        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-eq-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
10360        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-not-eq">operator!=</a>().</p></div>
10361        #[inline(always)]
10362        fn eq(&self, o: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>) -> bool {
10363            unsafe {
10364                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__6(
10365                    self as *const crate::q_list_of_q_j_s_value::Iterator,
10366                    o.as_raw_ptr(),
10367                )
10368            }
10369        }
10370    }
10371
10372    impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10373        for crate::q_list_of_q_j_s_value::Iterator
10374    {
10375        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p>
10376        ///
10377        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator<(const QList<QJSValue>::const_iterator& other) const```</span>.
10378        ///
10379        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p></div>
10380        #[inline(always)]
10381        unsafe fn lt(
10382            &self,
10383            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10384        ) -> bool {
10385            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_3(
10386                self as *const crate::q_list_of_q_j_s_value::Iterator,
10387                other.as_raw_ptr(),
10388            )
10389        }
10390    }
10391
10392    impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10393        for crate::q_list_of_q_j_s_value::Iterator
10394    {
10395        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p>
10396        ///
10397        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator<=(const QList<QJSValue>::const_iterator& other) const```</span>.
10398        ///
10399        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
10400        #[inline(always)]
10401        unsafe fn le(
10402            &self,
10403            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10404        ) -> bool {
10405            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__8(
10406                self as *const crate::q_list_of_q_j_s_value::Iterator,
10407                other.as_raw_ptr(),
10408            )
10409        }
10410    }
10411
10412    impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10413        for crate::q_list_of_q_j_s_value::Iterator
10414    {
10415        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p>
10416        ///
10417        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator>(const QList<QJSValue>::const_iterator& other) const```</span>.
10418        ///
10419        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p></div>
10420        #[inline(always)]
10421        unsafe fn gt(
10422            &self,
10423            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10424        ) -> bool {
10425            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_4(
10426                self as *const crate::q_list_of_q_j_s_value::Iterator,
10427                other.as_raw_ptr(),
10428            )
10429        }
10430    }
10431
10432    impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10433        for crate::q_list_of_q_j_s_value::Iterator
10434    {
10435        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p>
10436        ///
10437        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::iterator::operator>=(const QList<QJSValue>::const_iterator& other) const```</span>.
10438        ///
10439        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
10440        #[inline(always)]
10441        unsafe fn ge(
10442            &self,
10443            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10444        ) -> bool {
10445            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__9(
10446                self as *const crate::q_list_of_q_j_s_value::Iterator,
10447                other.as_raw_ptr(),
10448            )
10449        }
10450    }
10451
10452    impl ::cpp_core::ops::Increment for crate::q_list_of_q_j_s_value::Iterator {
10453        type Output = ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>;
10454        /// <p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
10455        ///
10456        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator++()```</span>.
10457        ///
10458        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
10459        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#end">QHash::end</a>() leads to undefined results.</p>
10460        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">operator--</a>().</p></div>
10461        #[inline(always)]
10462        unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
10463            let ffi_result = {
10464                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__10(
10465                    self as *const crate::q_list_of_q_j_s_value::Iterator
10466                        as *mut crate::q_list_of_q_j_s_value::Iterator,
10467                )
10468            };
10469            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10470        }
10471    }
10472
10473    impl ::cpp_core::ops::Decrement for crate::q_list_of_q_j_s_value::Iterator {
10474        type Output = ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>;
10475        /// <p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
10476        ///
10477        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator& QList<QJSValue>::iterator::operator--()```</span>.
10478        ///
10479        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
10480        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#begin">QHash::begin</a>() leads to undefined results.</p>
10481        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">operator++</a>().</p></div>
10482        #[inline(always)]
10483        unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator> {
10484            let ffi_result = {
10485                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator__12(
10486                    self as *const crate::q_list_of_q_j_s_value::Iterator
10487                        as *mut crate::q_list_of_q_j_s_value::Iterator,
10488                )
10489            };
10490            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10491        }
10492    }
10493
10494    impl ::std::ops::Add<::std::os::raw::c_longlong> for &crate::q_list_of_q_j_s_value::Iterator {
10495        type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator>;
10496        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::iterator::operator+(long long j) const```</span>.
10497        #[inline(always)]
10498        fn add(
10499            self,
10500            j: ::std::os::raw::c_longlong,
10501        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
10502            let ffi_result = {
10503                unsafe {
10504                    crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_5(
10505                        self as *const crate::q_list_of_q_j_s_value::Iterator,
10506                        j,
10507                    )
10508                }
10509            };
10510            unsafe {
10511                ::cpp_core::CppBox::from_raw(ffi_result)
10512                    .expect("attempted to construct a null CppBox")
10513            }
10514        }
10515    }
10516
10517    impl ::std::ops::Sub<::std::os::raw::c_longlong> for &crate::q_list_of_q_j_s_value::Iterator {
10518        type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator>;
10519        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::iterator::operator-(long long j) const```</span>.
10520        #[inline(always)]
10521        fn sub(
10522            self,
10523            j: ::std::os::raw::c_longlong,
10524        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
10525            let ffi_result = {
10526                unsafe {
10527                    crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_6(
10528                        self as *const crate::q_list_of_q_j_s_value::Iterator,
10529                        j,
10530                    )
10531                }
10532            };
10533            unsafe {
10534                ::cpp_core::CppBox::from_raw(ffi_result)
10535                    .expect("attempted to construct a null CppBox")
10536            }
10537        }
10538    }
10539
10540    impl ::std::ops::Sub<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>
10541        for &crate::q_list_of_q_j_s_value::Iterator
10542    {
10543        type Output = ::std::os::raw::c_int;
10544        /// Calls C++ function: <span style='color: green;'>```int QList<QJSValue>::iterator::operator-(QList<QJSValue>::iterator j) const```</span>.
10545        #[inline(always)]
10546        fn sub(
10547            self,
10548            j: ::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>,
10549        ) -> ::std::os::raw::c_int {
10550            unsafe {
10551                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_operator_7(
10552                    self as *const crate::q_list_of_q_j_s_value::Iterator,
10553                    j.as_raw_ptr(),
10554                )
10555            }
10556        }
10557    }
10558
10559    impl ::cpp_core::ops::Indirection for crate::q_list_of_q_j_s_value::ConstIterator {
10560        type Output = ::cpp_core::Ref<crate::QJSValue>;
10561        /// <p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
10562        ///
10563        /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::const_iterator::operator*() const```</span>.
10564        ///
10565        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p></div>
10566        #[inline(always)]
10567        unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QJSValue> {
10568            let ffi_result = {
10569                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_(
10570                    self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10571                )
10572            };
10573            ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
10574                .expect("attempted to construct a null Ref")
10575        }
10576    }
10577
10578    impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10579        for crate::q_list_of_q_j_s_value::ConstIterator
10580    {
10581        /// <p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
10582        ///
10583        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::const_iterator::operator==(const QList<QJSValue>::const_iterator& o) const```</span>.
10584        ///
10585        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
10586        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-not-eq">operator!=</a>().</p></div>
10587        #[inline(always)]
10588        fn eq(&self, o: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>) -> bool {
10589            unsafe {
10590                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__2(
10591                    self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10592                    o.as_raw_ptr(),
10593                )
10594            }
10595        }
10596    }
10597
10598    impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10599        for crate::q_list_of_q_j_s_value::ConstIterator
10600    {
10601        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p>
10602        ///
10603        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::const_iterator::operator<(const QList<QJSValue>::const_iterator& other) const```</span>.
10604        ///
10605        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p></div>
10606        #[inline(always)]
10607        unsafe fn lt(
10608            &self,
10609            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10610        ) -> bool {
10611            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_1(
10612                self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10613                other.as_raw_ptr(),
10614            )
10615        }
10616    }
10617
10618    impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10619        for crate::q_list_of_q_j_s_value::ConstIterator
10620    {
10621        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p>
10622        ///
10623        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::const_iterator::operator<=(const QList<QJSValue>::const_iterator& other) const```</span>.
10624        ///
10625        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-lt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
10626        #[inline(always)]
10627        unsafe fn le(
10628            &self,
10629            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10630        ) -> bool {
10631            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__4(
10632                self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10633                other.as_raw_ptr(),
10634            )
10635        }
10636    }
10637
10638    impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10639        for crate::q_list_of_q_j_s_value::ConstIterator
10640    {
10641        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p>
10642        ///
10643        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::const_iterator::operator>(const QList<QJSValue>::const_iterator& other) const```</span>.
10644        ///
10645        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p></div>
10646        #[inline(always)]
10647        unsafe fn gt(
10648            &self,
10649            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10650        ) -> bool {
10651            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_2(
10652                self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10653                other.as_raw_ptr(),
10654            )
10655        }
10656    }
10657
10658    impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10659        for crate::q_list_of_q_j_s_value::ConstIterator
10660    {
10661        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p>
10662        ///
10663        /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::const_iterator::operator>=(const QList<QJSValue>::const_iterator& other) const```</span>.
10664        ///
10665        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-gt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
10666        #[inline(always)]
10667        unsafe fn ge(
10668            &self,
10669            other: &::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10670        ) -> bool {
10671            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__5(
10672                self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10673                other.as_raw_ptr(),
10674            )
10675        }
10676    }
10677
10678    impl ::cpp_core::ops::Increment for crate::q_list_of_q_j_s_value::ConstIterator {
10679        type Output = ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>;
10680        /// <p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
10681        ///
10682        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator++()```</span>.
10683        ///
10684        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
10685        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#end">QAssociativeIterable::end</a>() leads to undefined results.</p>
10686        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">operator--</a>().</p></div>
10687        #[inline(always)]
10688        unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
10689            let ffi_result = {
10690                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__6(
10691                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
10692                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10693                )
10694            };
10695            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10696        }
10697    }
10698
10699    impl ::cpp_core::ops::Decrement for crate::q_list_of_q_j_s_value::ConstIterator {
10700        type Output = ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>;
10701        /// <p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
10702        ///
10703        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator& QList<QJSValue>::const_iterator::operator--()```</span>.
10704        ///
10705        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
10706        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#begin">QAssociativeIterable::begin</a>() leads to undefined results.</p>
10707        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">operator++</a>().</p></div>
10708        #[inline(always)]
10709        unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator> {
10710            let ffi_result = {
10711                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator__8(
10712                    self as *const crate::q_list_of_q_j_s_value::ConstIterator
10713                        as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10714                )
10715            };
10716            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10717        }
10718    }
10719
10720    impl ::std::ops::Add<::std::os::raw::c_longlong> for &crate::q_list_of_q_j_s_value::ConstIterator {
10721        type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator>;
10722        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::const_iterator::operator+(long long j) const```</span>.
10723        #[inline(always)]
10724        fn add(
10725            self,
10726            j: ::std::os::raw::c_longlong,
10727        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10728            let ffi_result = {
10729                unsafe {
10730                    crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_3(
10731                        self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10732                        j,
10733                    )
10734                }
10735            };
10736            unsafe {
10737                ::cpp_core::CppBox::from_raw(ffi_result)
10738                    .expect("attempted to construct a null CppBox")
10739            }
10740        }
10741    }
10742
10743    impl ::std::ops::Sub<::std::os::raw::c_longlong> for &crate::q_list_of_q_j_s_value::ConstIterator {
10744        type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator>;
10745        /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::const_iterator::operator-(long long j) const```</span>.
10746        #[inline(always)]
10747        fn sub(
10748            self,
10749            j: ::std::os::raw::c_longlong,
10750        ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
10751            let ffi_result = {
10752                unsafe {
10753                    crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_4(
10754                        self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10755                        j,
10756                    )
10757                }
10758            };
10759            unsafe {
10760                ::cpp_core::CppBox::from_raw(ffi_result)
10761                    .expect("attempted to construct a null CppBox")
10762            }
10763        }
10764    }
10765
10766    impl ::std::ops::Sub<::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>>
10767        for &crate::q_list_of_q_j_s_value::ConstIterator
10768    {
10769        type Output = ::std::os::raw::c_int;
10770        /// Calls C++ function: <span style='color: green;'>```int QList<QJSValue>::const_iterator::operator-(QList<QJSValue>::const_iterator j) const```</span>.
10771        #[inline(always)]
10772        fn sub(
10773            self,
10774            j: ::cpp_core::Ref<crate::q_list_of_q_j_s_value::ConstIterator>,
10775        ) -> ::std::os::raw::c_int {
10776            unsafe {
10777                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_operator_5(
10778                    self as *const crate::q_list_of_q_j_s_value::ConstIterator,
10779                    j.as_raw_ptr(),
10780                )
10781            }
10782        }
10783    }
10784
10785    impl ::cpp_core::CppDeletable for crate::q_list_of_q_j_s_value::Iterator {
10786        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
10787        ///
10788        /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QJSValue>::iterator::~iterator()```</span>.
10789        ///
10790        /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
10791        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> features both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
10792        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;) and to modify the list item associated with the iterator. If you want to iterate over a const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>, use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
10793        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
10794        /// <pre class="cpp">
10795        ///
10796        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
10797        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
10798        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
10799        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
10800        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
10801        ///
10802        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
10803        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
10804        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
10805        ///
10806        /// </pre>
10807        /// <p>Let's see a few examples of things we can do with a <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> that we cannot do with a <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a>. Here's an example that increments every value stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;int&gt; by 2:</p>
10808        /// <pre class="cpp">
10809        ///
10810        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
10811        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
10812        /// &#32;     <span class="operator">*</span>i <span class="operator">+</span><span class="operator">=</span> <span class="number">2</span>;
10813        ///
10814        /// </pre>
10815        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
10816        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
10817        /// <pre class="cpp">
10818        ///
10819        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
10820        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
10821        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>begin()<span class="operator">,</span> list<span class="operator">.</span>end());
10822        ///
10823        /// </pre>
10824        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
10825        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
10826        #[inline(always)]
10827        unsafe fn delete(&self) {
10828            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_iterator_diterator(
10829                self as *const crate::q_list_of_q_j_s_value::Iterator
10830                    as *mut crate::q_list_of_q_j_s_value::Iterator,
10831            )
10832        }
10833    }
10834
10835    impl ::cpp_core::CppDeletable for crate::q_list_of_q_j_s_value::ConstIterator {
10836        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
10837        ///
10838        /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QJSValue>::const_iterator::~const_iterator()```</span>.
10839        ///
10840        /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
10841        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
10842        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::const_iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or a <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;). If you want to modify the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as you iterate over it, use <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
10843        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
10844        /// <pre class="cpp">
10845        ///
10846        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
10847        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
10848        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
10849        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
10850        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
10851        ///
10852        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>const_iterator i;
10853        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>constBegin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>constEnd(); <span class="operator">+</span><span class="operator">+</span>i)
10854        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
10855        ///
10856        /// </pre>
10857        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
10858        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
10859        /// <pre class="cpp">
10860        ///
10861        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
10862        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
10863        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>constBegin()<span class="operator">,</span> list<span class="operator">.</span>constEnd());
10864        ///
10865        /// </pre>
10866        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
10867        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
10868        #[inline(always)]
10869        unsafe fn delete(&self) {
10870            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_const_iterator_dconst_iterator(
10871                self as *const crate::q_list_of_q_j_s_value::ConstIterator
10872                    as *mut crate::q_list_of_q_j_s_value::ConstIterator,
10873            )
10874        }
10875    }
10876
10877    impl ::cpp_core::CppDeletable for crate::q_list_of_q_j_s_value::MemoryLayout {
10878        /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QJSValue>::MemoryLayout::~MemoryLayout()```</span>.
10879        #[inline(always)]
10880        unsafe fn delete(&self) {
10881            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_MemoryLayout_dMemoryLayout(
10882                self as *const crate::q_list_of_q_j_s_value::MemoryLayout
10883                    as *mut crate::q_list_of_q_j_s_value::MemoryLayout,
10884            )
10885        }
10886    }
10887}
10888/// <p>The <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> class is a template class that provides lists.</p>
10889///
10890/// C++ class: <span style='color: green;'>```QList<QJSValue>```</span>.
10891///
10892/// <a href="http://doc.qt.io/qt-5/qlist.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> class is a template class that provides lists.</p>
10893/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores items in a list that provides fast index-based access and index-based insertions and removals.</p>
10894/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
10895/// <ul>
10896/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
10897/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
10898/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
10899/// </ul>
10900/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Internally, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; is represented as an array of T if <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. Otherwise, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; is represented as an array of T* and the items are allocated on the heap.</p>
10901/// <p>The array representation allows very fast insertions and index-based access. The <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>() operations are also very fast because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates memory at both ends of its internal array. (See <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">Algorithmic Complexity</a> for details.</p>
10902/// <p>Note, however, that when the conditions specified above are not met, each append or insert of a new item requires allocating the new item on the heap, and this per item allocation will make <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> a better choice for use cases that do a lot of appending or inserting, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> can allocate memory for many items in a single heap allocation.</p>
10903/// <p>Note that the internal array only ever gets bigger over the life of the list. It never shrinks. The internal array is deallocated by the destructor and by the assignment operator, when one list is assigned to another.</p>
10904/// <p>Here's an example of a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> that stores <a href="http://doc.qt.io/qt-5/qdate.html">QDate</a> values:</p>
10905/// <pre class="cpp">
10906///
10907///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerList;
10908///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qdate.html">QDate</a></span><span class="operator">&gt;</span> dateList;
10909///
10910/// </pre>
10911/// <p>Qt includes a <a href="http://doc.qt.io/qt-5/qstringlist.html">QStringList</a> class that inherits <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qstring.html">QString</a>&gt; and adds a few convenience functions, such as <a href="http://doc.qt.io/qt-5/qstringlist.html#join">QStringList::join</a>() and <a href="http://doc.qt.io/qt-5/qstringlist.html#filter">QStringList::filter</a>(). <a href="http://doc.qt.io/qt-5/qstring.html#split">QString::split</a>() creates QStringLists from strings.</p>
10912/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> stores a list of items. The default constructor creates an empty list. To insert items into the list, you can use operator&lt;&lt;():</p>
10913/// <pre class="cpp">
10914///
10915///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
10916///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"one"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"two"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"three"</span>;
10917///   <span class="comment">// list: ["one", "two", "three"]</span>
10918///
10919/// </pre>
10920/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#move">move</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#swap">swap</a>(). In addition, it provides the following convenience functions: <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>().</p>
10921/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const lists, operator[]() returns a reference to the item and can be used on the left side of an assignment:</p>
10922/// <pre class="cpp">
10923///
10924///   <span class="keyword">if</span> (list<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Bob"</span>)
10925/// &#32;     list<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Robert"</span>;
10926///
10927/// </pre>
10928/// <p>Because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is implemented as an array of pointers for types that are larger than a pointer or are not movable, this operation requires (<a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>). For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>():</p>
10929/// <pre class="cpp">
10930///
10931///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> list<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
10932/// &#32;     <span class="keyword">if</span> (list<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Jane"</span>)
10933/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Jane at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
10934///   }
10935///
10936/// </pre>
10937/// <p><a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
10938/// <p>A common requirement is to remove an item from a list and do something with it. For this, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>(). Here's a loop that removes the items from a list one at a time and calls <code>delete</code> on them:</p>
10939/// <pre class="cpp">
10940///
10941///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
10942///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
10943///   <span class="keyword">while</span> (<span class="operator">!</span>list<span class="operator">.</span>isEmpty())
10944/// &#32;     <span class="keyword">delete</span> list<span class="operator">.</span>takeFirst();
10945///
10946/// </pre>
10947/// <p>Inserting and removing items at either end of the list is very fast (<a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> in most cases), because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates extra space on both sides of its internal buffer to allow for fast growth at both ends of the list.</p>
10948/// <p>If you want to find all occurrences of a particular value in a list, use <a href="http://doc.qt.io/qt-5/qlist.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qlist.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of a matching item if they find it; otherwise, they return -1. For example:</p>
10949/// <pre class="cpp">
10950///
10951///   <span class="type">int</span> i <span class="operator">=</span> list<span class="operator">.</span>indexOf(<span class="string">"Jane"</span>);
10952///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
10953/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Jane is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
10954///
10955/// </pre>
10956/// <p>If you simply want to check whether a list contains a particular value, use <a href="http://doc.qt.io/qt-5/qlist.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the list, use <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>(). If you want to replace all occurrences of a particular value with another, use <a href="http://doc.qt.io/qt-5/qlist.html#replace">replace</a>().</p>
10957/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qlist.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
10958/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qlistiterator.html">QListIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablelistiterator.html">QMutableListIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is implemented in such a way that direct index-based access is just as fast as using iterators.</p>
10959/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
10960/// <p>To make <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as efficient as possible, its member functions don't validate their input before using it. Except for <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>(), member functions always assume the list is <i>not</i> empty. Member functions that take index values as parameters always assume their index value parameters are in the valid range. This means <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> member functions can fail. If you define QT_NO_DEBUG when you compile, failures will not be detected. If you <i>don't</i> define QT_NO_DEBUG, failures will be detected using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_ASSERT">Q_ASSERT</a>() or <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_ASSERT_X">Q_ASSERT_X</a>() with an appropriate message.</p>
10961/// <p>To avoid failures when your list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling other member functions. If you must pass an index value that might not be in the valid range, check that it is less than the value returned by <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() but <i>not</i> less than 0.</p>
10962/// <a name="more-members"></a></div>
10963#[repr(C)]
10964pub struct QListOfQJSValue {
10965    _unused: u8,
10966}
10967impl QListOfQJSValue {
10968    /// <p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
10969    ///
10970    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>& QList<QJSValue>::operator+=(const QList<QJSValue>& l)```</span>.
10971    ///
10972    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
10973    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>().</p></div>
10974    #[inline(always)]
10975    pub unsafe fn add_assign_q_list_of_q_j_s_value(
10976        &self,
10977        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
10978    ) -> ::cpp_core::Ref<crate::QListOfQJSValue> {
10979        let ffi_result = {
10980            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator__4(
10981                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
10982                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(l)
10983                    .as_raw_ptr(),
10984            )
10985        };
10986        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
10987    }
10988
10989    /// <p>This is an overloaded function.</p>
10990    ///
10991    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>& QList<QJSValue>::operator+=(const QJSValue& t)```</span>.
10992    ///
10993    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
10994    /// <p>Appends <i>value</i> to the list.</p>
10995    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
10996    #[inline(always)]
10997    pub unsafe fn add_assign_q_j_s_value(
10998        &self,
10999        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
11000    ) -> ::cpp_core::Ref<crate::QListOfQJSValue> {
11001        let ffi_result = {
11002            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator__5(
11003                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11004                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11005            )
11006        };
11007        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11008    }
11009
11010    /// <p>Inserts <i>value</i> at the end of the list.</p>
11011    ///
11012    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::append(const QJSValue& t)```</span>.
11013    ///
11014    /// <a href="http://doc.qt.io/qt-5/qlist.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the list.</p>
11015    /// <p>Example:</p>
11016    /// <pre class="cpp">
11017    ///
11018    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
11019    ///   list<span class="operator">.</span>append(<span class="string">"one"</span>);
11020    ///   list<span class="operator">.</span>append(<span class="string">"two"</span>);
11021    ///   list<span class="operator">.</span>append(<span class="string">"three"</span>);
11022    ///   <span class="comment">// list: ["one", "two", "three"]</span>
11023    ///
11024    /// </pre>
11025    /// <p>This is the same as list.insert(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(), <i>value</i>).</p>
11026    /// <p>If this list is not shared, this operation is typically very fast (amortized <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>), because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates extra space on both sides of its internal buffer to allow for fast growth at both ends of the list.</p>
11027    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>().</p></div>
11028    #[inline(always)]
11029    pub unsafe fn append_q_j_s_value(
11030        &self,
11031        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
11032    ) {
11033        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_append(
11034            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11035            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11036        )
11037    }
11038
11039    /// <p>This is an overloaded function.</p>
11040    ///
11041    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::append(const QList<QJSValue>& t)```</span>.
11042    ///
11043    /// <a href="http://doc.qt.io/qt-5/qlist.html#append-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
11044    /// <p>Appends the items of the <i>value</i> list to this list.</p>
11045    /// <p>This function was introduced in  Qt 4.5.</p>
11046    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">operator+=</a>().</p></div>
11047    #[inline(always)]
11048    pub unsafe fn append_q_list_of_q_j_s_value(
11049        &self,
11050        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
11051    ) {
11052        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_append1(
11053            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11054            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(t)
11055                .as_raw_ptr(),
11056        )
11057    }
11058
11059    /// <p>Returns the item at index position <i>i</i> in the list. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11060    ///
11061    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::at(int i) const```</span>.
11062    ///
11063    /// <a href="http://doc.qt.io/qt-5/qlist.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the list. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11064    /// <p>This function is very fast (<a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>).</p>
11065    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">operator[]</a>().</p></div>
11066    #[inline(always)]
11067    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QJSValue> {
11068        let ffi_result = {
11069            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_at(self as *const crate::QListOfQJSValue, i)
11070        };
11071        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11072            .expect("attempted to construct a null Ref")
11073    }
11074
11075    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11076    ///
11077    /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::back()```</span>.
11078    ///
11079    /// <a href="http://doc.qt.io/qt-5/qlist.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
11080    #[inline(always)]
11081    pub unsafe fn back_mut(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11082        let ffi_result = {
11083            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_back(
11084                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11085            )
11086        };
11087        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11088    }
11089
11090    /// <p>This is an overloaded function.</p>
11091    ///
11092    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::back() const```</span>.
11093    ///
11094    /// <a href="http://doc.qt.io/qt-5/qlist.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
11095    #[inline(always)]
11096    pub unsafe fn back(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11097        let ffi_result = {
11098            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_back1(self as *const crate::QListOfQJSValue)
11099        };
11100        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11101            .expect("attempted to construct a null Ref")
11102    }
11103
11104    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
11105    ///
11106    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::begin()```</span>.
11107    ///
11108    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
11109    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
11110    #[inline(always)]
11111    pub unsafe fn begin_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
11112        let ffi_result = {
11113            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_begin(
11114                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11115            )
11116        };
11117        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11118    }
11119
11120    /// <p>This is an overloaded function.</p>
11121    ///
11122    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::begin() const```</span>.
11123    ///
11124    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
11125    #[inline(always)]
11126    pub unsafe fn begin(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
11127        let ffi_result = {
11128            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_begin1(
11129                self as *const crate::QListOfQJSValue,
11130            )
11131        };
11132        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11133    }
11134
11135    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
11136    ///
11137    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::cbegin() const```</span>.
11138    ///
11139    /// <a href="http://doc.qt.io/qt-5/qlist.html#cbegin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
11140    /// <p>This function was introduced in  Qt 5.0.</p>
11141    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#cend">cend</a>().</p></div>
11142    #[inline(always)]
11143    pub unsafe fn cbegin(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
11144        let ffi_result = {
11145            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_cbegin(
11146                self as *const crate::QListOfQJSValue,
11147            )
11148        };
11149        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11150    }
11151
11152    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
11153    ///
11154    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::cend() const```</span>.
11155    ///
11156    /// <a href="http://doc.qt.io/qt-5/qlist.html#cend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
11157    /// <p>This function was introduced in  Qt 5.0.</p>
11158    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#cbegin">cbegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
11159    #[inline(always)]
11160    pub unsafe fn cend(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
11161        let ffi_result = {
11162            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_cend(self as *const crate::QListOfQJSValue)
11163        };
11164        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11165    }
11166
11167    /// <p>Removes all items from the list.</p>
11168    ///
11169    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::clear()```</span>.
11170    ///
11171    /// <a href="http://doc.qt.io/qt-5/qlist.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all items from the list.</p>
11172    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAll">removeAll</a>().</p></div>
11173    #[inline(always)]
11174    pub unsafe fn clear(&self) {
11175        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_clear(
11176            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11177        )
11178    }
11179
11180    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
11181    ///
11182    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::constBegin() const```</span>.
11183    ///
11184    /// <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
11185    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">constEnd</a>().</p></div>
11186    #[inline(always)]
11187    pub unsafe fn const_begin(
11188        &self,
11189    ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
11190        let ffi_result = {
11191            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_constBegin(
11192                self as *const crate::QListOfQJSValue,
11193            )
11194        };
11195        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11196    }
11197
11198    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
11199    ///
11200    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::constEnd() const```</span>.
11201    ///
11202    /// <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
11203    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
11204    #[inline(always)]
11205    pub unsafe fn const_end(
11206        &self,
11207    ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
11208        let ffi_result = {
11209            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_constEnd(
11210                self as *const crate::QListOfQJSValue,
11211            )
11212        };
11213        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11214    }
11215
11216    /// <p>Returns a const reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11217    ///
11218    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::constFirst() const```</span>.
11219    ///
11220    /// <a href="http://doc.qt.io/qt-5/qlist.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11221    /// <p>This function was introduced in  Qt 5.6.</p>
11222    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>().</p></div>
11223    #[inline(always)]
11224    pub unsafe fn const_first(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11225        let ffi_result = {
11226            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_constFirst(
11227                self as *const crate::QListOfQJSValue,
11228            )
11229        };
11230        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11231            .expect("attempted to construct a null Ref")
11232    }
11233
11234    /// <p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11235    ///
11236    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::constLast() const```</span>.
11237    ///
11238    /// <a href="http://doc.qt.io/qt-5/qlist.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11239    /// <p>This function was introduced in  Qt 5.6.</p>
11240    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>().</p></div>
11241    #[inline(always)]
11242    pub unsafe fn const_last(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11243        let ffi_result = {
11244            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_constLast(
11245                self as *const crate::QListOfQJSValue,
11246            )
11247        };
11248        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11249            .expect("attempted to construct a null Ref")
11250    }
11251
11252    /// <p>Assigns <i>other</i> to this list and returns a reference to this list.</p>
11253    ///
11254    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>& QList<QJSValue>::operator=(const QList<QJSValue>& l)```</span>.
11255    ///
11256    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this list and returns a reference to this list.</p></div>
11257    #[inline(always)]
11258    pub unsafe fn copy_from(
11259        &self,
11260        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
11261    ) -> ::cpp_core::Ref<crate::QListOfQJSValue> {
11262        let ffi_result = {
11263            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator_(
11264                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11265                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(l)
11266                    .as_raw_ptr(),
11267            )
11268        };
11269        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11270    }
11271
11272    /// <p>Returns the number of items in the list. This is effectively the same as <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
11273    ///
11274    /// Calls C++ function: <span style='color: green;'>```int QList<QJSValue>::count() const```</span>.
11275    ///
11276    /// <a href="http://doc.qt.io/qt-5/qlist.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the list. This is effectively the same as <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p></div>
11277    #[inline(always)]
11278    pub unsafe fn count(&self) -> ::std::os::raw::c_int {
11279        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_count1(self as *const crate::QListOfQJSValue)
11280    }
11281
11282    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::detach()```</span>.
11283    #[inline(always)]
11284    pub unsafe fn detach(&self) {
11285        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_detach(
11286            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11287        )
11288    }
11289
11290    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::detachShared()```</span>.
11291    #[inline(always)]
11292    pub unsafe fn detach_shared(&self) {
11293        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_detachShared(
11294            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11295        )
11296    }
11297
11298    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and returns <code>true</code> if the list is empty.</p>
11299    ///
11300    /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::empty() const```</span>.
11301    ///
11302    /// <a href="http://doc.qt.io/qt-5/qlist.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and returns <code>true</code> if the list is empty.</p></div>
11303    #[inline(always)]
11304    pub unsafe fn empty(&self) -> bool {
11305        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_empty(self as *const crate::QListOfQJSValue)
11306    }
11307
11308    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
11309    ///
11310    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::end()```</span>.
11311    ///
11312    /// <a href="http://doc.qt.io/qt-5/qlist.html#end">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
11313    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">constEnd</a>().</p></div>
11314    #[inline(always)]
11315    pub unsafe fn end_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
11316        let ffi_result = {
11317            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_end(
11318                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11319            )
11320        };
11321        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11322    }
11323
11324    /// <p>This is an overloaded function.</p>
11325    ///
11326    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::end() const```</span>.
11327    ///
11328    /// <a href="http://doc.qt.io/qt-5/qlist.html#end-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
11329    #[inline(always)]
11330    pub unsafe fn end(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
11331        let ffi_result = {
11332            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_end1(self as *const crate::QListOfQJSValue)
11333        };
11334        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11335    }
11336
11337    /// <p>Removes the item associated with the iterator <i>pos</i> from the list, and returns an iterator to the next item in the list (which may be <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>()).</p>
11338    ///
11339    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::erase(QList<QJSValue>::iterator pos)```</span>.
11340    ///
11341    /// <a href="http://doc.qt.io/qt-5/qlist.html#erase">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the item associated with the iterator <i>pos</i> from the list, and returns an iterator to the next item in the list (which may be <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>()).</p>
11342    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>().</p></div>
11343    #[inline(always)]
11344    pub unsafe fn erase_1a(
11345        &self,
11346        pos: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
11347    ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
11348        let ffi_result = {
11349            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_erase(self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(pos).as_raw_ptr())
11350        };
11351        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11352    }
11353
11354    /// <p>This is an overloaded function.</p>
11355    ///
11356    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::erase(QList<QJSValue>::iterator first, QList<QJSValue>::iterator last)```</span>.
11357    ///
11358    /// <a href="http://doc.qt.io/qt-5/qlist.html#erase-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
11359    /// <p>Removes all the items from <i>begin</i> up to (but not including) <i>end</i>. Returns an iterator to the same item that <i>end</i> referred to before the call.</p></div>
11360    #[inline(always)]
11361    pub unsafe fn erase_2a(
11362        &self,
11363        first: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
11364        last: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
11365    ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
11366        let ffi_result = {
11367            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_erase1(self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(first).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(last).as_raw_ptr())
11368        };
11369        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11370    }
11371
11372    /// <p>Returns a reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11373    ///
11374    /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::first()```</span>.
11375    ///
11376    /// <a href="http://doc.qt.io/qt-5/qlist.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11377    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>().</p></div>
11378    #[inline(always)]
11379    pub unsafe fn first_mut(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11380        let ffi_result = {
11381            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_first(
11382                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11383            )
11384        };
11385        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11386    }
11387
11388    /// <p>This is an overloaded function.</p>
11389    ///
11390    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::first() const```</span>.
11391    ///
11392    /// <a href="http://doc.qt.io/qt-5/qlist.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
11393    #[inline(always)]
11394    pub unsafe fn first(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11395        let ffi_result = {
11396            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_first1(
11397                self as *const crate::QListOfQJSValue,
11398            )
11399        };
11400        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11401            .expect("attempted to construct a null Ref")
11402    }
11403
11404    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11405    ///
11406    /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::front()```</span>.
11407    ///
11408    /// <a href="http://doc.qt.io/qt-5/qlist.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
11409    #[inline(always)]
11410    pub unsafe fn front_mut(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11411        let ffi_result = {
11412            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_front(
11413                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11414            )
11415        };
11416        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11417    }
11418
11419    /// <p>This is an overloaded function.</p>
11420    ///
11421    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::front() const```</span>.
11422    ///
11423    /// <a href="http://doc.qt.io/qt-5/qlist.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
11424    #[inline(always)]
11425    pub unsafe fn front(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11426        let ffi_result = {
11427            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_front1(
11428                self as *const crate::QListOfQJSValue,
11429            )
11430        };
11431        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11432            .expect("attempted to construct a null Ref")
11433    }
11434
11435    /// <p>This is an overloaded function.</p>
11436    ///
11437    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::operator[](int i) const```</span>.
11438    ///
11439    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
11440    /// <p>Same as <a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>(). This function runs in <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>.</p></div>
11441    #[inline(always)]
11442    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QJSValue> {
11443        let ffi_result = {
11444            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator__2(
11445                self as *const crate::QListOfQJSValue,
11446                i,
11447            )
11448        };
11449        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11450            .expect("attempted to construct a null Ref")
11451    }
11452
11453    /// <p>Returns the item at index position <i>i</i> as a modifiable reference. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11454    ///
11455    /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::operator[](int i)```</span>.
11456    ///
11457    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11458    /// <p>If this function is called on a list that is currently being shared, it will trigger a copy of all elements. Otherwise, this function runs in <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>. If you do not want to modify the list you should use <a href="http://doc.qt.io/qt-5/qlist.html#at">QList::at</a>().</p>
11459    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#value">value</a>().</p></div>
11460    #[inline(always)]
11461    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QJSValue> {
11462        let ffi_result = {
11463            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator__3(
11464                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11465                i,
11466            )
11467        };
11468        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11469    }
11470
11471    /// <p>Inserts <i>value</i> at index position <i>i</i> in the list. If <i>i</i> &lt;= 0, the value is prepended to the list. If <i>i</i> &gt;= <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(), the value is appended to the list.</p>
11472    ///
11473    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::insert(int i, const QJSValue& t)```</span>.
11474    ///
11475    /// <a href="http://doc.qt.io/qt-5/qlist.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the list. If <i>i</i> &lt;= 0, the value is prepended to the list. If <i>i</i> &gt;= <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(), the value is appended to the list.</p>
11476    /// <p>Example:</p>
11477    /// <pre class="cpp">
11478    ///
11479    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
11480    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
11481    ///   list<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
11482    ///   <span class="comment">// list: ["alpha", "beta", "gamma", "delta"]</span>
11483    ///
11484    /// </pre>
11485    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>().</p></div>
11486    #[inline(always)]
11487    pub unsafe fn insert_int_q_j_s_value(
11488        &self,
11489        i: ::std::os::raw::c_int,
11490        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
11491    ) {
11492        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_insert(
11493            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11494            i,
11495            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11496        )
11497    }
11498
11499    /// <p>This is an overloaded function.</p>
11500    ///
11501    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::insert(QList<QJSValue>::iterator before, const QJSValue& t)```</span>.
11502    ///
11503    /// <a href="http://doc.qt.io/qt-5/qlist.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
11504    /// <p>Inserts <i>value</i> in front of the item pointed to by the iterator <i>before</i>. Returns an iterator pointing at the inserted item. Note that the iterator passed to the function will be invalid after the call; the returned iterator should be used instead.</p></div>
11505    #[inline(always)]
11506    pub unsafe fn insert_iterator_q_j_s_value(
11507        &self,
11508        before: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>,
11509        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
11510    ) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
11511        let ffi_result = {
11512            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_insert1(self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_j_s_value::Iterator>>::cast_into(before).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr())
11513        };
11514        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11515    }
11516
11517    /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::isDetached() const```</span>.
11518    #[inline(always)]
11519    pub unsafe fn is_detached(&self) -> bool {
11520        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_isDetached(
11521            self as *const crate::QListOfQJSValue,
11522        )
11523    }
11524
11525    /// <p>Returns <code>true</code> if the list contains no items; otherwise returns false.</p>
11526    ///
11527    /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::isEmpty() const```</span>.
11528    ///
11529    /// <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the list contains no items; otherwise returns false.</p>
11530    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p></div>
11531    #[inline(always)]
11532    pub unsafe fn is_empty(&self) -> bool {
11533        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_isEmpty(self as *const crate::QListOfQJSValue)
11534    }
11535
11536    /// Calls C++ function: <span style='color: green;'>```bool QList<QJSValue>::isSharedWith(const QList<QJSValue>& other) const```</span>.
11537    #[inline(always)]
11538    pub unsafe fn is_shared_with(
11539        &self,
11540        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
11541    ) -> bool {
11542        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_isSharedWith(
11543            self as *const crate::QListOfQJSValue,
11544            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(other)
11545                .as_raw_ptr(),
11546        )
11547    }
11548
11549    /// <p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11550    ///
11551    /// Calls C++ function: <span style='color: green;'>```QJSValue& QList<QJSValue>::last()```</span>.
11552    ///
11553    /// <a href="http://doc.qt.io/qt-5/qlist.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11554    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>().</p></div>
11555    #[inline(always)]
11556    pub unsafe fn last_mut(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11557        let ffi_result = {
11558            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_last(
11559                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11560            )
11561        };
11562        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
11563    }
11564
11565    /// <p>This is an overloaded function.</p>
11566    ///
11567    /// Calls C++ function: <span style='color: green;'>```const QJSValue& QList<QJSValue>::last() const```</span>.
11568    ///
11569    /// <a href="http://doc.qt.io/qt-5/qlist.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
11570    #[inline(always)]
11571    pub unsafe fn last(&self) -> ::cpp_core::Ref<crate::QJSValue> {
11572        let ffi_result = {
11573            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_last1(self as *const crate::QListOfQJSValue)
11574        };
11575        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QJSValue)
11576            .expect("attempted to construct a null Ref")
11577    }
11578
11579    /// <p>This function is identical to <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p>
11580    ///
11581    /// Calls C++ function: <span style='color: green;'>```int QList<QJSValue>::length() const```</span>.
11582    ///
11583    /// <a href="http://doc.qt.io/qt-5/qlist.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is identical to <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p>
11584    /// <p>This function was introduced in  Qt 4.5.</p>
11585    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p></div>
11586    #[inline(always)]
11587    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
11588        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_length(self as *const crate::QListOfQJSValue)
11589    }
11590
11591    /// <p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
11592    ///
11593    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue> QList<QJSValue>::mid(int pos, int length = …) const```</span>.
11594    ///
11595    /// <a href="http://doc.qt.io/qt-5/qlist.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
11596    #[inline(always)]
11597    pub unsafe fn mid_2a(
11598        &self,
11599        pos: ::std::os::raw::c_int,
11600        length: ::std::os::raw::c_int,
11601    ) -> ::cpp_core::CppBox<crate::QListOfQJSValue> {
11602        let ffi_result = {
11603            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_mid(
11604                self as *const crate::QListOfQJSValue,
11605                pos,
11606                length,
11607            )
11608        };
11609        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11610    }
11611
11612    /// <p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
11613    ///
11614    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue> QList<QJSValue>::mid(int pos) const```</span>.
11615    ///
11616    /// <a href="http://doc.qt.io/qt-5/qlist.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
11617    #[inline(always)]
11618    pub unsafe fn mid_1a(
11619        &self,
11620        pos: ::std::os::raw::c_int,
11621    ) -> ::cpp_core::CppBox<crate::QListOfQJSValue> {
11622        let ffi_result = {
11623            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_mid1(
11624                self as *const crate::QListOfQJSValue,
11625                pos,
11626            )
11627        };
11628        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11629    }
11630
11631    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
11632    ///
11633    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::move(int from, int to)```</span>.
11634    ///
11635    /// <a href="http://doc.qt.io/qt-5/qlist.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
11636    /// <p>Example:</p>
11637    /// <pre class="cpp">
11638    ///
11639    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
11640    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"D"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"E"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"F"</span>;
11641    ///   list<span class="operator">.</span>move(<span class="number">1</span><span class="operator">,</span> <span class="number">4</span>);
11642    ///   <span class="comment">// list: ["A", "C", "D", "E", "B", "F"]</span>
11643    ///
11644    /// </pre>
11645    /// <p>This is the same as insert(<i>to</i>, <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(<i>from</i>)).This function assumes that both <i>from</i> and <i>to</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>from</i> and <i>to</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
11646    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#swap">swap</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>().</p></div>
11647    #[inline(always)]
11648    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
11649        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_move(
11650            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11651            from,
11652            to,
11653        )
11654    }
11655
11656    /// <p>Constructs an empty list.</p>
11657    ///
11658    /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::QList()```</span>.
11659    ///
11660    /// <a href="http://doc.qt.io/qt-5/qlist.html#QList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty list.</p></div>
11661    #[inline(always)]
11662    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QListOfQJSValue> {
11663        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_QList() };
11664        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11665    }
11666
11667    /// <p>Constructs a copy of <i>other</i>.</p>
11668    ///
11669    /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QJSValue>::QList(const QList<QJSValue>& l)```</span>.
11670    ///
11671    /// <a href="http://doc.qt.io/qt-5/qlist.html#QList-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
11672    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
11673    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-eq">operator=</a>().</p></div>
11674    #[inline(always)]
11675    pub unsafe fn new_copy(
11676        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
11677    ) -> ::cpp_core::CppBox<crate::QListOfQJSValue> {
11678        let ffi_result = {
11679            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_QList1(
11680                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(l)
11681                    .as_raw_ptr(),
11682            )
11683        };
11684        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11685    }
11686
11687    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11688    ///
11689    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::pop_back()```</span>.
11690    ///
11691    /// <a href="http://doc.qt.io/qt-5/qlist.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
11692    #[inline(always)]
11693    pub unsafe fn pop_back(&self) {
11694        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_pop_back(
11695            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11696        )
11697    }
11698
11699    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11700    ///
11701    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::pop_front()```</span>.
11702    ///
11703    /// <a href="http://doc.qt.io/qt-5/qlist.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
11704    #[inline(always)]
11705    pub unsafe fn pop_front(&self) {
11706        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_pop_front(
11707            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11708        )
11709    }
11710
11711    /// <p>Inserts <i>value</i> at the beginning of the list.</p>
11712    ///
11713    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::prepend(const QJSValue& t)```</span>.
11714    ///
11715    /// <a href="http://doc.qt.io/qt-5/qlist.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the list.</p>
11716    /// <p>Example:</p>
11717    /// <pre class="cpp">
11718    ///
11719    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
11720    ///   list<span class="operator">.</span>prepend(<span class="string">"one"</span>);
11721    ///   list<span class="operator">.</span>prepend(<span class="string">"two"</span>);
11722    ///   list<span class="operator">.</span>prepend(<span class="string">"three"</span>);
11723    ///   <span class="comment">// list: ["three", "two", "one"]</span>
11724    ///
11725    /// </pre>
11726    /// <p>This is the same as list.insert(0, <i>value</i>).</p>
11727    /// <p>If this list is not shared, this operation is typically very fast (amortized <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>), because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates extra space on both sides of its internal buffer to allow for fast growth at both ends of the list.</p>
11728    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>().</p></div>
11729    #[inline(always)]
11730    pub unsafe fn prepend(&self, t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>) {
11731        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_prepend(
11732            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11733            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11734        )
11735    }
11736
11737    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(<i>value</i>).</p>
11738    ///
11739    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::push_back(const QJSValue& t)```</span>.
11740    ///
11741    /// <a href="http://doc.qt.io/qt-5/qlist.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(<i>value</i>).</p></div>
11742    #[inline(always)]
11743    pub unsafe fn push_back(&self, t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>) {
11744        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_push_back(
11745            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11746            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11747        )
11748    }
11749
11750    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(<i>value</i>).</p>
11751    ///
11752    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::push_front(const QJSValue& t)```</span>.
11753    ///
11754    /// <a href="http://doc.qt.io/qt-5/qlist.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(<i>value</i>).</p></div>
11755    #[inline(always)]
11756    pub unsafe fn push_front(
11757        &self,
11758        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
11759    ) {
11760        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_push_front(
11761            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11762            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11763        )
11764    }
11765
11766    /// <p>Removes the item at index position <i>i</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11767    ///
11768    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::removeAt(int i)```</span>.
11769    ///
11770    /// <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the item at index position <i>i</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11771    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">removeOne</a>().</p></div>
11772    #[inline(always)]
11773    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
11774        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_removeAt(
11775            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11776            i,
11777        )
11778    }
11779
11780    /// <p>Removes the first item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(0). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11781    ///
11782    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::removeFirst()```</span>.
11783    ///
11784    /// <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(0). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11785    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>().</p></div>
11786    #[inline(always)]
11787    pub unsafe fn remove_first(&self) {
11788        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_removeFirst(
11789            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11790        )
11791    }
11792
11793    /// <p>Removes the last item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11794    ///
11795    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::removeLast()```</span>.
11796    ///
11797    /// <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11798    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>().</p></div>
11799    #[inline(always)]
11800    pub unsafe fn remove_last(&self) {
11801        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_removeLast(
11802            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11803        )
11804    }
11805
11806    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11807    ///
11808    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::replace(int i, const QJSValue& t)```</span>.
11809    ///
11810    /// <a href="http://doc.qt.io/qt-5/qlist.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11811    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>().</p></div>
11812    #[inline(always)]
11813    pub unsafe fn replace(
11814        &self,
11815        i: ::std::os::raw::c_int,
11816        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
11817    ) {
11818        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_replace(
11819            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11820            i,
11821            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(t).as_raw_ptr(),
11822        )
11823    }
11824
11825    /// <p>Reserve space for <i>alloc</i> elements.</p>
11826    ///
11827    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::reserve(int size)```</span>.
11828    ///
11829    /// <a href="http://doc.qt.io/qt-5/qlist.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Reserve space for <i>alloc</i> elements.</p>
11830    /// <p>If <i>alloc</i> is smaller than the current size of the list, nothing will happen.</p>
11831    /// <p>Use this function to avoid repetetive reallocation of <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>'s internal data if you can predict how many elements will be appended. Note that the reservation applies only to the internal pointer array.</p>
11832    /// <p>This function was introduced in  Qt 4.7.</p></div>
11833    #[inline(always)]
11834    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
11835        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_reserve(
11836            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11837            size,
11838        )
11839    }
11840
11841    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::setSharable(bool sharable)```</span>.
11842    #[inline(always)]
11843    pub unsafe fn set_sharable(&self, sharable: bool) {
11844        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_setSharable(
11845            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11846            sharable,
11847        )
11848    }
11849
11850    /// <p>Returns the number of items in the list.</p>
11851    ///
11852    /// Calls C++ function: <span style='color: green;'>```int QList<QJSValue>::size() const```</span>.
11853    ///
11854    /// <a href="http://doc.qt.io/qt-5/qlist.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the list.</p>
11855    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p></div>
11856    #[inline(always)]
11857    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
11858        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_size(self as *const crate::QListOfQJSValue)
11859    }
11860
11861    /// <p>Swaps list <i>other</i> with this list. This operation is very fast and never fails.</p>
11862    ///
11863    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::swap(QList<QJSValue>& other)```</span>.
11864    ///
11865    /// <a href="http://doc.qt.io/qt-5/qlist.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps list <i>other</i> with this list. This operation is very fast and never fails.</p>
11866    /// <p>This function was introduced in  Qt 4.8.</p></div>
11867    #[inline(always)]
11868    pub unsafe fn swap_1a(
11869        &self,
11870        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQJSValue>>,
11871    ) {
11872        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_swap(
11873            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11874            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQJSValue>>::cast_into(other)
11875                .as_raw_ptr() as *mut crate::QListOfQJSValue,
11876        )
11877    }
11878
11879    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
11880    ///
11881    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::swap(int i, int j)```</span>.
11882    ///
11883    /// <a href="http://doc.qt.io/qt-5/qlist.html#swap-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
11884    /// <p>Example:</p>
11885    /// <pre class="cpp">
11886    ///
11887    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
11888    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"D"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"E"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"F"</span>;
11889    ///   list<span class="operator">.</span>swap(<span class="number">1</span><span class="operator">,</span> <span class="number">4</span>);
11890    ///   <span class="comment">// list: ["A", "E", "C", "D", "B", "F"]</span>
11891    ///
11892    /// </pre>
11893    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">move</a>().</p></div>
11894    #[inline(always)]
11895    pub unsafe fn swap_2a(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
11896        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_swap1(
11897            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11898            i,
11899            j,
11900        )
11901    }
11902
11903    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
11904    ///
11905    /// Calls C++ function: <span style='color: green;'>```void QList<QJSValue>::swapItemsAt(int i, int j)```</span>.
11906    ///
11907    /// <a href="http://doc.qt.io/qt-5/qlist.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
11908    /// <p>Example:</p>
11909    /// <pre class="cpp">
11910    ///
11911    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
11912    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"D"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"E"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"F"</span>;
11913    ///   list<span class="operator">.</span>swapItemsAt(<span class="number">1</span><span class="operator">,</span> <span class="number">4</span>);
11914    ///   <span class="comment">// list: ["A", "E", "C", "D", "B", "F"]</span>
11915    ///
11916    /// </pre>
11917    /// <p>This function was introduced in  Qt 5.13.</p>
11918    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">move</a>().</p></div>
11919    #[inline(always)]
11920    #[cfg_attr(
11921        feature = "ritual_rustdoc_nightly",
11922        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
11923    )]
11924    #[cfg(any(
11925        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
11926        feature = "ritual_rustdoc"
11927    ))]
11928    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
11929        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_swapItemsAt(
11930            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11931            i,
11932            j,
11933        )
11934    }
11935
11936    /// <p>Removes the item at index position <i>i</i> and returns it. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11937    ///
11938    /// Calls C++ function: <span style='color: green;'>```QJSValue QList<QJSValue>::takeAt(int i)```</span>.
11939    ///
11940    /// <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the item at index position <i>i</i> and returns it. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
11941    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>() is more efficient.</p>
11942    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>().</p></div>
11943    #[inline(always)]
11944    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::cpp_core::CppBox<crate::QJSValue> {
11945        let ffi_result = {
11946            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_takeAt(
11947                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11948                i,
11949            )
11950        };
11951        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11952    }
11953
11954    /// <p>Removes the first item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(0). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11955    ///
11956    /// Calls C++ function: <span style='color: green;'>```QJSValue QList<QJSValue>::takeFirst()```</span>.
11957    ///
11958    /// <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(0). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11959    /// <p>If this list is not shared, this operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>.</p>
11960    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>() is more efficient.</p>
11961    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>().</p></div>
11962    #[inline(always)]
11963    pub unsafe fn take_first(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
11964        let ffi_result = {
11965            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_takeFirst(
11966                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11967            )
11968        };
11969        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11970    }
11971
11972    /// <p>Removes the last item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11973    ///
11974    /// Calls C++ function: <span style='color: green;'>```QJSValue QList<QJSValue>::takeLast()```</span>.
11975    ///
11976    /// <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
11977    /// <p>If this list is not shared, this operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>.</p>
11978    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>() is more efficient.</p>
11979    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>().</p></div>
11980    #[inline(always)]
11981    pub unsafe fn take_last(&self) -> ::cpp_core::CppBox<crate::QJSValue> {
11982        let ffi_result = {
11983            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_takeLast(
11984                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
11985            )
11986        };
11987        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11988    }
11989
11990    /// <p>Returns the value at index position <i>i</i> in the list.</p>
11991    ///
11992    /// Calls C++ function: <span style='color: green;'>```QJSValue QList<QJSValue>::value(int i) const```</span>.
11993    ///
11994    /// <a href="http://doc.qt.io/qt-5/qlist.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the list.</p>
11995    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that the index is going to be within bounds, you can use <a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() instead, which is slightly faster.</p>
11996    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">operator[]</a>().</p></div>
11997    #[inline(always)]
11998    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::cpp_core::CppBox<crate::QJSValue> {
11999        let ffi_result = {
12000            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_value(
12001                self as *const crate::QListOfQJSValue,
12002                i,
12003            )
12004        };
12005        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12006    }
12007
12008    /// <p>This is an overloaded function.</p>
12009    ///
12010    /// Calls C++ function: <span style='color: green;'>```QJSValue QList<QJSValue>::value(int i, const QJSValue& defaultValue) const```</span>.
12011    ///
12012    /// <a href="http://doc.qt.io/qt-5/qlist.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
12013    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
12014    #[inline(always)]
12015    pub unsafe fn value_2a(
12016        &self,
12017        i: ::std::os::raw::c_int,
12018        default_value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
12019    ) -> ::cpp_core::CppBox<crate::QJSValue> {
12020        let ffi_result = {
12021            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_value1(
12022                self as *const crate::QListOfQJSValue,
12023                i,
12024                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(default_value)
12025                    .as_raw_ptr(),
12026            )
12027        };
12028        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12029    }
12030}
12031
12032pub mod q_list_of_q_qml_error {
12033    //! C++ type: <span style='color: green;'>```QList<QQmlError>```</span>
12034
12035    /// <p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12036    ///
12037    /// C++ class: <span style='color: green;'>```QList<QQmlError>::iterator```</span>.
12038    ///
12039    /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12040    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> features both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
12041    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;) and to modify the list item associated with the iterator. If you want to iterate over a const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>, use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
12042    /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
12043    /// <pre class="cpp">
12044    ///
12045    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
12046    ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
12047    ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
12048    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12049    ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
12050    ///
12051    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
12052    ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
12053    /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
12054    ///
12055    /// </pre>
12056    /// <p>Let's see a few examples of things we can do with a <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> that we cannot do with a <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a>. Here's an example that increments every value stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;int&gt; by 2:</p>
12057    /// <pre class="cpp">
12058    ///
12059    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
12060    ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
12061    /// &#32;     <span class="operator">*</span>i <span class="operator">+</span><span class="operator">=</span> <span class="number">2</span>;
12062    ///
12063    /// </pre>
12064    /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
12065    /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
12066    /// <pre class="cpp">
12067    ///
12068    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
12069    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12070    ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>begin()<span class="operator">,</span> list<span class="operator">.</span>end());
12071    ///
12072    /// </pre>
12073    /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
12074    /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
12075    #[repr(C)]
12076    pub struct Iterator {
12077        _unused: u8,
12078    }
12079    impl Iterator {
12080        /// <p>Advances the iterator by <i>j</i> items. (If <i>j</i> is negative, the iterator goes backward.)</p>
12081        ///
12082        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator+=(long long j)```</span>.
12083        ///
12084        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-eq">C++ documentation</a> for <span style='color: green;'>```iterator &iterator::operator+=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Advances the iterator by <i>j</i> items. (If <i>j</i> is negative, the iterator goes backward.)</p>
12085        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--eq">operator-=</a>() and <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b">operator+</a>().</p></div>
12086        #[inline(always)]
12087        pub unsafe fn add_assign(
12088            &self,
12089            j: ::std::os::raw::c_longlong,
12090        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12091            let ffi_result = {
12092                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__14(
12093                    self as *const crate::q_list_of_q_qml_error::Iterator
12094                        as *mut crate::q_list_of_q_qml_error::Iterator,
12095                    j,
12096                )
12097            };
12098            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12099        }
12100
12101        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12102        ///
12103        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator=(const QList<QQmlError>::iterator& other)```</span>.
12104        ///
12105        /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12106        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> features both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
12107        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;) and to modify the list item associated with the iterator. If you want to iterate over a const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>, use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
12108        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
12109        /// <pre class="cpp">
12110        ///
12111        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
12112        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
12113        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
12114        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12115        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
12116        ///
12117        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
12118        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
12119        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
12120        ///
12121        /// </pre>
12122        /// <p>Let's see a few examples of things we can do with a <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> that we cannot do with a <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a>. Here's an example that increments every value stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;int&gt; by 2:</p>
12123        /// <pre class="cpp">
12124        ///
12125        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
12126        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
12127        /// &#32;     <span class="operator">*</span>i <span class="operator">+</span><span class="operator">=</span> <span class="number">2</span>;
12128        ///
12129        /// </pre>
12130        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
12131        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
12132        /// <pre class="cpp">
12133        ///
12134        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
12135        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12136        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>begin()<span class="operator">,</span> list<span class="operator">.</span>end());
12137        ///
12138        /// </pre>
12139        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
12140        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
12141        #[inline(always)]
12142        pub unsafe fn copy_from(
12143            &self,
12144            other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
12145        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12146            let ffi_result = {
12147                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_8(self as *const crate::q_list_of_q_qml_error::Iterator as *mut crate::q_list_of_q_qml_error::Iterator, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(other).as_raw_ptr())
12148            };
12149            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12150        }
12151
12152        /// <p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
12153        ///
12154        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator--()```</span>.
12155        ///
12156        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
12157        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#begin">QHash::begin</a>() leads to undefined results.</p>
12158        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">operator++</a>().</p></div>
12159        #[inline(always)]
12160        pub unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12161            let ffi_result = {
12162                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__12(
12163                    self as *const crate::q_list_of_q_qml_error::Iterator
12164                        as *mut crate::q_list_of_q_qml_error::Iterator,
12165                )
12166            };
12167            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12168        }
12169
12170        /// <p>This is an overloaded function.</p>
12171        ///
12172        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::iterator::operator--(int arg1)```</span>.
12173        ///
12174        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator---1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
12175        /// <p>The postfix -- operator (<code>i--</code>) makes the preceding item current and returns an iterator pointing to the previously current item.</p></div>
12176        #[inline(always)]
12177        pub unsafe fn dec_postfix(
12178            &self,
12179            arg1: ::std::os::raw::c_int,
12180        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
12181            let ffi_result = {
12182                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__13(
12183                    self as *const crate::q_list_of_q_qml_error::Iterator
12184                        as *mut crate::q_list_of_q_qml_error::Iterator,
12185                    arg1,
12186                )
12187            };
12188            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12189        }
12190
12191        /// <p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
12192        ///
12193        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator++()```</span>.
12194        ///
12195        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
12196        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#end">QHash::end</a>() leads to undefined results.</p>
12197        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">operator--</a>().</p></div>
12198        #[inline(always)]
12199        pub unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12200            let ffi_result = {
12201                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__10(
12202                    self as *const crate::q_list_of_q_qml_error::Iterator
12203                        as *mut crate::q_list_of_q_qml_error::Iterator,
12204                )
12205            };
12206            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12207        }
12208
12209        /// <p>This is an overloaded function.</p>
12210        ///
12211        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::iterator::operator++(int arg1)```</span>.
12212        ///
12213        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
12214        /// <p>The postfix ++ operator (<code>i++</code>) advances the iterator to the next item in the hash and returns an iterator to the previously current item.</p></div>
12215        #[inline(always)]
12216        pub unsafe fn inc_postfix(
12217            &self,
12218            arg1: ::std::os::raw::c_int,
12219        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
12220            let ffi_result = {
12221                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__11(
12222                    self as *const crate::q_list_of_q_qml_error::Iterator
12223                        as *mut crate::q_list_of_q_qml_error::Iterator,
12224                    arg1,
12225                )
12226            };
12227            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12228        }
12229
12230        /// <p>Returns a modifiable reference to the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
12231        ///
12232        /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::iterator::operator[](long long j) const```</span>.
12233        ///
12234        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-5b-5d">C++ documentation</a> for <span style='color: green;'>```QJsonValueRef iterator::operator[](int j) const```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a modifiable reference to the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
12235        /// <p>This function is provided to make <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> iterators behave like C++ pointers.</p>
12236        /// <p>The return value is of type <a href="http://doc.qt.io/qt-5/qjsonvalue.html#qjsonvalueref">QJsonValueRef</a>, a helper class for <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> and <a href="http://doc.qt.io/qt-5/qjsonobject.html">QJsonObject</a>. When you get an object of type <a href="http://doc.qt.io/qt-5/qjsonvalue.html#qjsonvalueref">QJsonValueRef</a>, you can use it as if it were a reference to a <a href="http://doc.qt.io/qt-5/qjsonvalue.html">QJsonValue</a>. If you assign to it, the assignment will apply to the character in the <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> of <a href="http://doc.qt.io/qt-5/qjsonobject.html">QJsonObject</a> from which you got the reference.</p>
12237        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-2b">operator+</a>().</p></div>
12238        #[inline(always)]
12239        pub unsafe fn index(
12240            &self,
12241            j: ::std::os::raw::c_longlong,
12242        ) -> ::cpp_core::Ref<crate::QQmlError> {
12243            let ffi_result = {
12244                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__1(
12245                    self as *const crate::q_list_of_q_qml_error::Iterator,
12246                    j,
12247                )
12248            };
12249            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12250        }
12251
12252        /// <p>Returns a modifiable reference to the current item's value.</p>
12253        ///
12254        /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::iterator::operator*() const```</span>.
12255        ///
12256        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a modifiable reference to the current item's value.</p>
12257        /// <p>Same as <a href="http://doc.qt.io/qt-5/qhash-iterator.html#value">value</a>().</p>
12258        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#key">key</a>().</p></div>
12259        #[inline(always)]
12260        pub unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QQmlError> {
12261            let ffi_result = {
12262                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_(
12263                    self as *const crate::q_list_of_q_qml_error::Iterator,
12264                )
12265            };
12266            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12267        }
12268
12269        /// <p>Constructs an uninitialized iterator.</p>
12270        ///
12271        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::iterator::iterator()```</span>.
12272        ///
12273        /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html#iterator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an uninitialized iterator.</p>
12274        /// <p>Functions like operator*() and operator++() should not be called on an uninitialized iterator. Use operator=() to assign a value to it before using it.</p>
12275        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>().</p></div>
12276        #[inline(always)]
12277        pub unsafe fn new() -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
12278            let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_iterator() };
12279            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12280        }
12281
12282        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::iterator::iterator(const QList<QQmlError>::iterator& o)```</span>.
12283        #[inline(always)]
12284        pub unsafe fn new_copy(
12285            o: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
12286        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
12287            let ffi_result = {
12288                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_iterator1(::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(o).as_raw_ptr())
12289            };
12290            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12291        }
12292
12293        /// <p>Returns a pointer to the current item's value.</p>
12294        ///
12295        /// Calls C++ function: <span style='color: green;'>```QQmlError* QList<QQmlError>::iterator::operator->() const```</span>.
12296        ///
12297        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the current item's value.</p>
12298        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#value">value</a>().</p></div>
12299        #[inline(always)]
12300        pub unsafe fn struct_deref(&self) -> ::cpp_core::Ptr<crate::QQmlError> {
12301            let ffi_result = {
12302                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__(
12303                    self as *const crate::q_list_of_q_qml_error::Iterator,
12304                )
12305            };
12306            ::cpp_core::Ptr::from_raw(ffi_result)
12307        }
12308
12309        /// <p>Makes the iterator go back by <i>j</i> items. (If <i>j</i> is negative, the iterator goes forward.)</p>
12310        ///
12311        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator-=(long long j)```</span>.
12312        ///
12313        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--eq">C++ documentation</a> for <span style='color: green;'>```iterator &iterator::operator-=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Makes the iterator go back by <i>j</i> items. (If <i>j</i> is negative, the iterator goes forward.)</p>
12314        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-eq">operator+=</a>() and <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-">operator-</a>().</p></div>
12315        #[inline(always)]
12316        pub unsafe fn sub_assign(
12317            &self,
12318            j: ::std::os::raw::c_longlong,
12319        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12320            let ffi_result = {
12321                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__15(
12322                    self as *const crate::q_list_of_q_qml_error::Iterator
12323                        as *mut crate::q_list_of_q_qml_error::Iterator,
12324                    j,
12325                )
12326            };
12327            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12328        }
12329    }
12330
12331    /// <p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12332    ///
12333    /// C++ class: <span style='color: green;'>```QList<QQmlError>::const_iterator```</span>.
12334    ///
12335    /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12336    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
12337    /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::const_iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or a <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;). If you want to modify the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as you iterate over it, use <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
12338    /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
12339    /// <pre class="cpp">
12340    ///
12341    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
12342    ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
12343    ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
12344    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12345    ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
12346    ///
12347    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>const_iterator i;
12348    ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>constBegin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>constEnd(); <span class="operator">+</span><span class="operator">+</span>i)
12349    /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
12350    ///
12351    /// </pre>
12352    /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
12353    /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
12354    /// <pre class="cpp">
12355    ///
12356    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
12357    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12358    ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>constBegin()<span class="operator">,</span> list<span class="operator">.</span>constEnd());
12359    ///
12360    /// </pre>
12361    /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
12362    /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
12363    #[repr(C)]
12364    pub struct ConstIterator {
12365        _unused: u8,
12366    }
12367    impl ConstIterator {
12368        /// <p>Advances the iterator by <i>j</i> items.</p>
12369        ///
12370        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator+=(long long j)```</span>.
12371        ///
12372        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-eq">C++ documentation</a> for <span style='color: green;'>```const_iterator &const_iterator::operator+=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Advances the iterator by <i>j</i> items.</p>
12373        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--eq">operator-=</a>() and <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b">operator+</a>().</p></div>
12374        #[inline(always)]
12375        pub unsafe fn add_assign(
12376            &self,
12377            j: ::std::os::raw::c_longlong,
12378        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
12379            let ffi_result = {
12380                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__10(
12381                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12382                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12383                    j,
12384                )
12385            };
12386            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12387        }
12388
12389        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12390        ///
12391        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator=(const QList<QQmlError>::const_iterator& other)```</span>.
12392        ///
12393        /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
12394        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
12395        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::const_iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or a <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;). If you want to modify the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as you iterate over it, use <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
12396        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
12397        /// <pre class="cpp">
12398        ///
12399        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
12400        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
12401        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
12402        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12403        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
12404        ///
12405        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>const_iterator i;
12406        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>constBegin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>constEnd(); <span class="operator">+</span><span class="operator">+</span>i)
12407        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
12408        ///
12409        /// </pre>
12410        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
12411        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
12412        /// <pre class="cpp">
12413        ///
12414        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
12415        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
12416        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>constBegin()<span class="operator">,</span> list<span class="operator">.</span>constEnd());
12417        ///
12418        /// </pre>
12419        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
12420        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
12421        #[inline(always)]
12422        pub unsafe fn copy_from(
12423            &self,
12424            other: impl ::cpp_core::CastInto<
12425                ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12426            >,
12427        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
12428            let ffi_result = {
12429                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_6(
12430                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12431                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12432                    ::cpp_core::CastInto::<
12433                        ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12434                    >::cast_into(other)
12435                    .as_raw_ptr(),
12436                )
12437            };
12438            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12439        }
12440
12441        /// <p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
12442        ///
12443        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator--()```</span>.
12444        ///
12445        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
12446        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#begin">QAssociativeIterable::begin</a>() leads to undefined results.</p>
12447        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">operator++</a>().</p></div>
12448        #[inline(always)]
12449        pub unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
12450            let ffi_result = {
12451                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__8(
12452                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12453                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12454                )
12455            };
12456            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12457        }
12458
12459        /// <p>This is an overloaded function.</p>
12460        ///
12461        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::const_iterator::operator--(int arg1)```</span>.
12462        ///
12463        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator---1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
12464        /// <p>The postfix -- operator (<code>it--</code>) makes the preceding item current and returns an iterator to the previously current item.</p></div>
12465        #[inline(always)]
12466        pub unsafe fn dec_postfix(
12467            &self,
12468            arg1: ::std::os::raw::c_int,
12469        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
12470            let ffi_result = {
12471                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__9(
12472                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12473                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12474                    arg1,
12475                )
12476            };
12477            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12478        }
12479
12480        /// <p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
12481        ///
12482        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator++()```</span>.
12483        ///
12484        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
12485        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#end">QAssociativeIterable::end</a>() leads to undefined results.</p>
12486        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">operator--</a>().</p></div>
12487        #[inline(always)]
12488        pub unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
12489            let ffi_result = {
12490                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__6(
12491                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12492                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12493                )
12494            };
12495            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12496        }
12497
12498        /// <p>This is an overloaded function.</p>
12499        ///
12500        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::const_iterator::operator++(int arg1)```</span>.
12501        ///
12502        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
12503        /// <p>The postfix ++ operator (<code>it++</code>) advances the iterator to the next item in the container and returns an iterator to the previously current item.</p></div>
12504        #[inline(always)]
12505        pub unsafe fn inc_postfix(
12506            &self,
12507            arg1: ::std::os::raw::c_int,
12508        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
12509            let ffi_result = {
12510                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__7(
12511                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12512                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12513                    arg1,
12514                )
12515            };
12516            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12517        }
12518
12519        /// <p>Returns the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
12520        ///
12521        /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::const_iterator::operator[](long long j) const```</span>.
12522        ///
12523        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-5b-5d">C++ documentation</a> for <span style='color: green;'>```QJsonValue const_iterator::operator[](int j) const```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at offset <i>j</i> from the item pointed to by this iterator (the item at position <code>*this + j</code>).</p>
12524        /// <p>This function is provided to make <a href="http://doc.qt.io/qt-5/qjsonarray.html">QJsonArray</a> iterators behave like C++ pointers.</p>
12525        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-2b">operator+</a>().</p></div>
12526        #[inline(always)]
12527        pub unsafe fn index(
12528            &self,
12529            j: ::std::os::raw::c_longlong,
12530        ) -> ::cpp_core::Ref<crate::QQmlError> {
12531            let ffi_result = {
12532                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__1(
12533                    self as *const crate::q_list_of_q_qml_error::ConstIterator,
12534                    j,
12535                )
12536            };
12537            ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
12538                .expect("attempted to construct a null Ref")
12539        }
12540
12541        /// <p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
12542        ///
12543        /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::const_iterator::operator*() const```</span>.
12544        ///
12545        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p></div>
12546        #[inline(always)]
12547        pub unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QQmlError> {
12548            let ffi_result = {
12549                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_(
12550                    self as *const crate::q_list_of_q_qml_error::ConstIterator,
12551                )
12552            };
12553            ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
12554                .expect("attempted to construct a null Ref")
12555        }
12556
12557        /// <p>Constructs an uninitialized iterator.</p>
12558        ///
12559        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::const_iterator::const_iterator()```</span>.
12560        ///
12561        /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html#const_iterator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an uninitialized iterator.</p>
12562        /// <p>Functions like operator*() and operator++() should not be called on an uninitialized iterator. Use operator=() to assign a value to it before using it.</p>
12563        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>().</p></div>
12564        #[inline(always)]
12565        pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
12566            let ffi_result =
12567                { crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_const_iterator() };
12568            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12569        }
12570
12571        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::const_iterator::const_iterator(const QList<QQmlError>::iterator& o)```</span>.
12572        #[inline(always)]
12573        pub unsafe fn new_1a(
12574            o: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
12575        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
12576            let ffi_result = {
12577                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_const_iterator2(::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(o).as_raw_ptr())
12578            };
12579            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12580        }
12581
12582        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::const_iterator::const_iterator(const QList<QQmlError>::const_iterator& o)```</span>.
12583        #[inline(always)]
12584        pub unsafe fn new_copy(
12585            o: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>,
12586        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
12587            let ffi_result = {
12588                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_const_iterator1(
12589                    ::cpp_core::CastInto::<
12590                        ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12591                    >::cast_into(o)
12592                    .as_raw_ptr(),
12593                )
12594            };
12595            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12596        }
12597
12598        /// <p>Returns a pointer to the current result.</p>
12599        ///
12600        /// Calls C++ function: <span style='color: green;'>```const QQmlError* QList<QQmlError>::const_iterator::operator->() const```</span>.
12601        ///
12602        /// <a href="http://doc.qt.io/qt-5/qfuture-const-iterator.html#operator--gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the current result.</p></div>
12603        #[inline(always)]
12604        pub unsafe fn struct_deref(&self) -> ::cpp_core::Ptr<crate::QQmlError> {
12605            let ffi_result = {
12606                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__(
12607                    self as *const crate::q_list_of_q_qml_error::ConstIterator,
12608                )
12609            };
12610            ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::QQmlError)
12611        }
12612
12613        /// <p>Makes the iterator go back by <i>j</i> items.</p>
12614        ///
12615        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator-=(long long j)```</span>.
12616        ///
12617        /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--eq">C++ documentation</a> for <span style='color: green;'>```const_iterator &const_iterator::operator-=(int j)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Makes the iterator go back by <i>j</i> items.</p>
12618        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-eq">operator+=</a>() and <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-">operator-</a>().</p></div>
12619        #[inline(always)]
12620        pub unsafe fn sub_assign(
12621            &self,
12622            j: ::std::os::raw::c_longlong,
12623        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
12624            let ffi_result = {
12625                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__11(
12626                    self as *const crate::q_list_of_q_qml_error::ConstIterator
12627                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
12628                    j,
12629                )
12630            };
12631            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12632        }
12633    }
12634
12635    /// C++ class: <span style='color: green;'>```QList<QQmlError>::MemoryLayout```</span>.
12636    #[repr(C)]
12637    pub struct MemoryLayout {
12638        _unused: u8,
12639    }
12640    impl MemoryLayout {
12641        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::MemoryLayout& QList<QQmlError>::MemoryLayout::operator=(const QList<QQmlError>::MemoryLayout& other)```</span>.
12642        #[inline(always)]
12643        pub unsafe fn copy_from(
12644            &self,
12645            other: impl ::cpp_core::CastInto<
12646                ::cpp_core::Ref<crate::q_list_of_q_qml_error::MemoryLayout>,
12647            >,
12648        ) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::MemoryLayout> {
12649            let ffi_result = {
12650                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_MemoryLayout_operator_(
12651                    self as *const crate::q_list_of_q_qml_error::MemoryLayout
12652                        as *mut crate::q_list_of_q_qml_error::MemoryLayout,
12653                    ::cpp_core::CastInto::<
12654                        ::cpp_core::Ref<crate::q_list_of_q_qml_error::MemoryLayout>,
12655                    >::cast_into(other)
12656                    .as_raw_ptr(),
12657                )
12658            };
12659            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12660        }
12661
12662        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::MemoryLayout::MemoryLayout()```</span>.
12663        #[inline(always)]
12664        pub unsafe fn new() -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::MemoryLayout> {
12665            let ffi_result =
12666                { crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_MemoryLayout_MemoryLayout() };
12667            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12668        }
12669
12670        /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::MemoryLayout::MemoryLayout(const QList<QQmlError>::MemoryLayout& other)```</span>.
12671        #[inline(always)]
12672        pub unsafe fn new_copy(
12673            other: impl ::cpp_core::CastInto<
12674                ::cpp_core::Ref<crate::q_list_of_q_qml_error::MemoryLayout>,
12675            >,
12676        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::MemoryLayout> {
12677            let ffi_result = {
12678                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_MemoryLayout_MemoryLayout1(
12679                    ::cpp_core::CastInto::<
12680                        ::cpp_core::Ref<crate::q_list_of_q_qml_error::MemoryLayout>,
12681                    >::cast_into(other)
12682                    .as_raw_ptr(),
12683                )
12684            };
12685            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12686        }
12687    }
12688
12689    impl ::cpp_core::ops::Indirection for crate::q_list_of_q_qml_error::Iterator {
12690        type Output = ::cpp_core::Ref<crate::QQmlError>;
12691        /// <p>Returns a modifiable reference to the current item's value.</p>
12692        ///
12693        /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::iterator::operator*() const```</span>.
12694        ///
12695        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a modifiable reference to the current item's value.</p>
12696        /// <p>Same as <a href="http://doc.qt.io/qt-5/qhash-iterator.html#value">value</a>().</p>
12697        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#key">key</a>().</p></div>
12698        #[inline(always)]
12699        unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QQmlError> {
12700            let ffi_result = {
12701                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_(
12702                    self as *const crate::q_list_of_q_qml_error::Iterator,
12703                )
12704            };
12705            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12706        }
12707    }
12708
12709    impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>
12710        for crate::q_list_of_q_qml_error::Iterator
12711    {
12712        /// <p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
12713        ///
12714        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator==(const QList<QQmlError>::iterator& o) const```</span>.
12715        ///
12716        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
12717        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-not-eq">operator!=</a>().</p></div>
12718        #[inline(always)]
12719        fn eq(&self, o: &::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>) -> bool {
12720            unsafe {
12721                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__2(
12722                    self as *const crate::q_list_of_q_qml_error::Iterator,
12723                    o.as_raw_ptr(),
12724                )
12725            }
12726        }
12727    }
12728
12729    impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>
12730        for crate::q_list_of_q_qml_error::Iterator
12731    {
12732        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p>
12733        ///
12734        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator<(const QList<QQmlError>::iterator& other) const```</span>.
12735        ///
12736        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p></div>
12737        #[inline(always)]
12738        unsafe fn lt(
12739            &self,
12740            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>,
12741        ) -> bool {
12742            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_1(
12743                self as *const crate::q_list_of_q_qml_error::Iterator,
12744                other.as_raw_ptr(),
12745            )
12746        }
12747    }
12748
12749    impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>
12750        for crate::q_list_of_q_qml_error::Iterator
12751    {
12752        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p>
12753        ///
12754        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator<=(const QList<QQmlError>::iterator& other) const```</span>.
12755        ///
12756        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
12757        #[inline(always)]
12758        unsafe fn le(
12759            &self,
12760            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>,
12761        ) -> bool {
12762            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__4(
12763                self as *const crate::q_list_of_q_qml_error::Iterator,
12764                other.as_raw_ptr(),
12765            )
12766        }
12767    }
12768
12769    impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>
12770        for crate::q_list_of_q_qml_error::Iterator
12771    {
12772        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p>
12773        ///
12774        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator>(const QList<QQmlError>::iterator& other) const```</span>.
12775        ///
12776        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p></div>
12777        #[inline(always)]
12778        unsafe fn gt(
12779            &self,
12780            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>,
12781        ) -> bool {
12782            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_2(
12783                self as *const crate::q_list_of_q_qml_error::Iterator,
12784                other.as_raw_ptr(),
12785            )
12786        }
12787    }
12788
12789    impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>
12790        for crate::q_list_of_q_qml_error::Iterator
12791    {
12792        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p>
12793        ///
12794        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator>=(const QList<QQmlError>::iterator& other) const```</span>.
12795        ///
12796        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
12797        #[inline(always)]
12798        unsafe fn ge(
12799            &self,
12800            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>,
12801        ) -> bool {
12802            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__5(
12803                self as *const crate::q_list_of_q_qml_error::Iterator,
12804                other.as_raw_ptr(),
12805            )
12806        }
12807    }
12808
12809    impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
12810        for crate::q_list_of_q_qml_error::Iterator
12811    {
12812        /// <p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
12813        ///
12814        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator==(const QList<QQmlError>::const_iterator& o) const```</span>.
12815        ///
12816        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-eq-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
12817        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-not-eq">operator!=</a>().</p></div>
12818        #[inline(always)]
12819        fn eq(&self, o: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>) -> bool {
12820            unsafe {
12821                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__6(
12822                    self as *const crate::q_list_of_q_qml_error::Iterator,
12823                    o.as_raw_ptr(),
12824                )
12825            }
12826        }
12827    }
12828
12829    impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
12830        for crate::q_list_of_q_qml_error::Iterator
12831    {
12832        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p>
12833        ///
12834        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator<(const QList<QQmlError>::const_iterator& other) const```</span>.
12835        ///
12836        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p></div>
12837        #[inline(always)]
12838        unsafe fn lt(
12839            &self,
12840            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12841        ) -> bool {
12842            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_3(
12843                self as *const crate::q_list_of_q_qml_error::Iterator,
12844                other.as_raw_ptr(),
12845            )
12846        }
12847    }
12848
12849    impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
12850        for crate::q_list_of_q_qml_error::Iterator
12851    {
12852        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p>
12853        ///
12854        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator<=(const QList<QQmlError>::const_iterator& other) const```</span>.
12855        ///
12856        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-lt-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
12857        #[inline(always)]
12858        unsafe fn le(
12859            &self,
12860            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12861        ) -> bool {
12862            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__8(
12863                self as *const crate::q_list_of_q_qml_error::Iterator,
12864                other.as_raw_ptr(),
12865            )
12866        }
12867    }
12868
12869    impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
12870        for crate::q_list_of_q_qml_error::Iterator
12871    {
12872        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p>
12873        ///
12874        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator>(const QList<QQmlError>::const_iterator& other) const```</span>.
12875        ///
12876        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p></div>
12877        #[inline(always)]
12878        unsafe fn gt(
12879            &self,
12880            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12881        ) -> bool {
12882            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_4(
12883                self as *const crate::q_list_of_q_qml_error::Iterator,
12884                other.as_raw_ptr(),
12885            )
12886        }
12887    }
12888
12889    impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
12890        for crate::q_list_of_q_qml_error::Iterator
12891    {
12892        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p>
12893        ///
12894        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::iterator::operator>=(const QList<QQmlError>::const_iterator& other) const```</span>.
12895        ///
12896        /// <a href="http://doc.qt.io/qt-5/qjsonarray-iterator.html#operator-gt-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
12897        #[inline(always)]
12898        unsafe fn ge(
12899            &self,
12900            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
12901        ) -> bool {
12902            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__9(
12903                self as *const crate::q_list_of_q_qml_error::Iterator,
12904                other.as_raw_ptr(),
12905            )
12906        }
12907    }
12908
12909    impl ::cpp_core::ops::Increment for crate::q_list_of_q_qml_error::Iterator {
12910        type Output = ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>;
12911        /// <p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
12912        ///
12913        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator++()```</span>.
12914        ///
12915        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++i</code>) advances the iterator to the next item in the hash and returns an iterator to the new current item.</p>
12916        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#end">QHash::end</a>() leads to undefined results.</p>
12917        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">operator--</a>().</p></div>
12918        #[inline(always)]
12919        unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12920            let ffi_result = {
12921                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__10(
12922                    self as *const crate::q_list_of_q_qml_error::Iterator
12923                        as *mut crate::q_list_of_q_qml_error::Iterator,
12924                )
12925            };
12926            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12927        }
12928    }
12929
12930    impl ::cpp_core::ops::Decrement for crate::q_list_of_q_qml_error::Iterator {
12931        type Output = ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>;
12932        /// <p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
12933        ///
12934        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator& QList<QQmlError>::iterator::operator--()```</span>.
12935        ///
12936        /// <a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--i</code>) makes the preceding item current and returns an iterator pointing to the new current item.</p>
12937        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qhash.html#begin">QHash::begin</a>() leads to undefined results.</p>
12938        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qhash-iterator.html#operator-2b-2b">operator++</a>().</p></div>
12939        #[inline(always)]
12940        unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator> {
12941            let ffi_result = {
12942                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator__12(
12943                    self as *const crate::q_list_of_q_qml_error::Iterator
12944                        as *mut crate::q_list_of_q_qml_error::Iterator,
12945                )
12946            };
12947            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
12948        }
12949    }
12950
12951    impl ::std::ops::Add<::std::os::raw::c_longlong> for &crate::q_list_of_q_qml_error::Iterator {
12952        type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator>;
12953        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::iterator::operator+(long long j) const```</span>.
12954        #[inline(always)]
12955        fn add(
12956            self,
12957            j: ::std::os::raw::c_longlong,
12958        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
12959            let ffi_result = {
12960                unsafe {
12961                    crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_5(
12962                        self as *const crate::q_list_of_q_qml_error::Iterator,
12963                        j,
12964                    )
12965                }
12966            };
12967            unsafe {
12968                ::cpp_core::CppBox::from_raw(ffi_result)
12969                    .expect("attempted to construct a null CppBox")
12970            }
12971        }
12972    }
12973
12974    impl ::std::ops::Sub<::std::os::raw::c_longlong> for &crate::q_list_of_q_qml_error::Iterator {
12975        type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator>;
12976        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::iterator::operator-(long long j) const```</span>.
12977        #[inline(always)]
12978        fn sub(
12979            self,
12980            j: ::std::os::raw::c_longlong,
12981        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
12982            let ffi_result = {
12983                unsafe {
12984                    crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_6(
12985                        self as *const crate::q_list_of_q_qml_error::Iterator,
12986                        j,
12987                    )
12988                }
12989            };
12990            unsafe {
12991                ::cpp_core::CppBox::from_raw(ffi_result)
12992                    .expect("attempted to construct a null CppBox")
12993            }
12994        }
12995    }
12996
12997    impl ::std::ops::Sub<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>
12998        for &crate::q_list_of_q_qml_error::Iterator
12999    {
13000        type Output = ::std::os::raw::c_int;
13001        /// Calls C++ function: <span style='color: green;'>```int QList<QQmlError>::iterator::operator-(QList<QQmlError>::iterator j) const```</span>.
13002        #[inline(always)]
13003        fn sub(
13004            self,
13005            j: ::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>,
13006        ) -> ::std::os::raw::c_int {
13007            unsafe {
13008                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_operator_7(
13009                    self as *const crate::q_list_of_q_qml_error::Iterator,
13010                    j.as_raw_ptr(),
13011                )
13012            }
13013        }
13014    }
13015
13016    impl ::cpp_core::ops::Indirection for crate::q_list_of_q_qml_error::ConstIterator {
13017        type Output = ::cpp_core::Ref<crate::QQmlError>;
13018        /// <p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
13019        ///
13020        /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::const_iterator::operator*() const```</span>.
13021        ///
13022        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current value, converted to a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p></div>
13023        #[inline(always)]
13024        unsafe fn indirection(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13025            let ffi_result = {
13026                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_(
13027                    self as *const crate::q_list_of_q_qml_error::ConstIterator,
13028                )
13029            };
13030            ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13031                .expect("attempted to construct a null Ref")
13032        }
13033    }
13034
13035    impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
13036        for crate::q_list_of_q_qml_error::ConstIterator
13037    {
13038        /// <p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
13039        ///
13040        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::const_iterator::operator==(const QList<QQmlError>::const_iterator& o) const```</span>.
13041        ///
13042        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> points to the same item as this iterator; otherwise returns <code>false</code>.</p>
13043        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-not-eq">operator!=</a>().</p></div>
13044        #[inline(always)]
13045        fn eq(&self, o: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>) -> bool {
13046            unsafe {
13047                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__2(
13048                    self as *const crate::q_list_of_q_qml_error::ConstIterator,
13049                    o.as_raw_ptr(),
13050                )
13051            }
13052        }
13053    }
13054
13055    impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
13056        for crate::q_list_of_q_qml_error::ConstIterator
13057    {
13058        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p>
13059        ///
13060        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::const_iterator::operator<(const QList<QQmlError>::const_iterator& other) const```</span>.
13061        ///
13062        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than the item pointed to by the <i>other</i> iterator.</p></div>
13063        #[inline(always)]
13064        unsafe fn lt(
13065            &self,
13066            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
13067        ) -> bool {
13068            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_1(
13069                self as *const crate::q_list_of_q_qml_error::ConstIterator,
13070                other.as_raw_ptr(),
13071            )
13072        }
13073    }
13074
13075    impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
13076        for crate::q_list_of_q_qml_error::ConstIterator
13077    {
13078        /// <p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p>
13079        ///
13080        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::const_iterator::operator<=(const QList<QQmlError>::const_iterator& other) const```</span>.
13081        ///
13082        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-lt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is less than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
13083        #[inline(always)]
13084        unsafe fn le(
13085            &self,
13086            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
13087        ) -> bool {
13088            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__4(
13089                self as *const crate::q_list_of_q_qml_error::ConstIterator,
13090                other.as_raw_ptr(),
13091            )
13092        }
13093    }
13094
13095    impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
13096        for crate::q_list_of_q_qml_error::ConstIterator
13097    {
13098        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p>
13099        ///
13100        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::const_iterator::operator>(const QList<QQmlError>::const_iterator& other) const```</span>.
13101        ///
13102        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than the item pointed to by the <i>other</i> iterator.</p></div>
13103        #[inline(always)]
13104        unsafe fn gt(
13105            &self,
13106            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
13107        ) -> bool {
13108            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_2(
13109                self as *const crate::q_list_of_q_qml_error::ConstIterator,
13110                other.as_raw_ptr(),
13111            )
13112        }
13113    }
13114
13115    impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
13116        for crate::q_list_of_q_qml_error::ConstIterator
13117    {
13118        /// <p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p>
13119        ///
13120        /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::const_iterator::operator>=(const QList<QQmlError>::const_iterator& other) const```</span>.
13121        ///
13122        /// <a href="http://doc.qt.io/qt-5/qjsonarray-const-iterator.html#operator-gt-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the item pointed to by this iterator is greater than or equal to the item pointed to by the <i>other</i> iterator.</p></div>
13123        #[inline(always)]
13124        unsafe fn ge(
13125            &self,
13126            other: &::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
13127        ) -> bool {
13128            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__5(
13129                self as *const crate::q_list_of_q_qml_error::ConstIterator,
13130                other.as_raw_ptr(),
13131            )
13132        }
13133    }
13134
13135    impl ::cpp_core::ops::Increment for crate::q_list_of_q_qml_error::ConstIterator {
13136        type Output = ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>;
13137        /// <p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
13138        ///
13139        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator++()```</span>.
13140        ///
13141        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix ++ operator (<code>++it</code>) advances the iterator to the next item in the container and returns an iterator to the new current item.</p>
13142        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#end">QAssociativeIterable::end</a>() leads to undefined results.</p>
13143        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">operator--</a>().</p></div>
13144        #[inline(always)]
13145        unsafe fn inc(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
13146            let ffi_result = {
13147                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__6(
13148                    self as *const crate::q_list_of_q_qml_error::ConstIterator
13149                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
13150                )
13151            };
13152            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13153        }
13154    }
13155
13156    impl ::cpp_core::ops::Decrement for crate::q_list_of_q_qml_error::ConstIterator {
13157        type Output = ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>;
13158        /// <p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
13159        ///
13160        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator& QList<QQmlError>::const_iterator::operator--()```</span>.
13161        ///
13162        /// <a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator--">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The prefix -- operator (<code>--it</code>) makes the preceding item current and returns an iterator to the new current item.</p>
13163        /// <p>Calling this function on <a href="http://doc.qt.io/qt-5/qassociativeiterable.html#begin">QAssociativeIterable::begin</a>() leads to undefined results.</p>
13164        /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qassociativeiterable-const-iterator.html#operator-2b-2b">operator++</a>().</p></div>
13165        #[inline(always)]
13166        unsafe fn dec(&self) -> ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator> {
13167            let ffi_result = {
13168                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator__8(
13169                    self as *const crate::q_list_of_q_qml_error::ConstIterator
13170                        as *mut crate::q_list_of_q_qml_error::ConstIterator,
13171                )
13172            };
13173            ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13174        }
13175    }
13176
13177    impl ::std::ops::Add<::std::os::raw::c_longlong> for &crate::q_list_of_q_qml_error::ConstIterator {
13178        type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator>;
13179        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::const_iterator::operator+(long long j) const```</span>.
13180        #[inline(always)]
13181        fn add(
13182            self,
13183            j: ::std::os::raw::c_longlong,
13184        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13185            let ffi_result = {
13186                unsafe {
13187                    crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_3(
13188                        self as *const crate::q_list_of_q_qml_error::ConstIterator,
13189                        j,
13190                    )
13191                }
13192            };
13193            unsafe {
13194                ::cpp_core::CppBox::from_raw(ffi_result)
13195                    .expect("attempted to construct a null CppBox")
13196            }
13197        }
13198    }
13199
13200    impl ::std::ops::Sub<::std::os::raw::c_longlong> for &crate::q_list_of_q_qml_error::ConstIterator {
13201        type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator>;
13202        /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::const_iterator::operator-(long long j) const```</span>.
13203        #[inline(always)]
13204        fn sub(
13205            self,
13206            j: ::std::os::raw::c_longlong,
13207        ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13208            let ffi_result = {
13209                unsafe {
13210                    crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_4(
13211                        self as *const crate::q_list_of_q_qml_error::ConstIterator,
13212                        j,
13213                    )
13214                }
13215            };
13216            unsafe {
13217                ::cpp_core::CppBox::from_raw(ffi_result)
13218                    .expect("attempted to construct a null CppBox")
13219            }
13220        }
13221    }
13222
13223    impl ::std::ops::Sub<::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>>
13224        for &crate::q_list_of_q_qml_error::ConstIterator
13225    {
13226        type Output = ::std::os::raw::c_int;
13227        /// Calls C++ function: <span style='color: green;'>```int QList<QQmlError>::const_iterator::operator-(QList<QQmlError>::const_iterator j) const```</span>.
13228        #[inline(always)]
13229        fn sub(
13230            self,
13231            j: ::cpp_core::Ref<crate::q_list_of_q_qml_error::ConstIterator>,
13232        ) -> ::std::os::raw::c_int {
13233            unsafe {
13234                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_operator_5(
13235                    self as *const crate::q_list_of_q_qml_error::ConstIterator,
13236                    j.as_raw_ptr(),
13237                )
13238            }
13239        }
13240    }
13241
13242    impl ::cpp_core::CppDeletable for crate::q_list_of_q_qml_error::Iterator {
13243        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
13244        ///
13245        /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QQmlError>::iterator::~iterator()```</span>.
13246        ///
13247        /// <a href="http://doc.qt.io/qt-5/qlist-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> class provides an STL-style non-const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
13248        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> features both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
13249        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;) and to modify the list item associated with the iterator. If you want to iterate over a const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>, use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
13250        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#begin">QList::begin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#end">QList::end</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
13251        /// <pre class="cpp">
13252        ///
13253        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
13254        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
13255        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
13256        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
13257        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
13258        ///
13259        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
13260        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
13261        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
13262        ///
13263        /// </pre>
13264        /// <p>Let's see a few examples of things we can do with a <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> that we cannot do with a <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a>. Here's an example that increments every value stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;int&gt; by 2:</p>
13265        /// <pre class="cpp">
13266        ///
13267        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span><span class="operator">::</span>iterator i;
13268        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>begin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>i)
13269        /// &#32;     <span class="operator">*</span>i <span class="operator">+</span><span class="operator">=</span> <span class="number">2</span>;
13270        ///
13271        /// </pre>
13272        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
13273        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
13274        /// <pre class="cpp">
13275        ///
13276        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
13277        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
13278        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>begin()<span class="operator">,</span> list<span class="operator">.</span>end());
13279        ///
13280        /// </pre>
13281        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
13282        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
13283        #[inline(always)]
13284        unsafe fn delete(&self) {
13285            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_iterator_diterator(
13286                self as *const crate::q_list_of_q_qml_error::Iterator
13287                    as *mut crate::q_list_of_q_qml_error::Iterator,
13288            )
13289        }
13290    }
13291
13292    impl ::cpp_core::CppDeletable for crate::q_list_of_q_qml_error::ConstIterator {
13293        /// <p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
13294        ///
13295        /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QQmlError>::const_iterator::~const_iterator()```</span>.
13296        ///
13297        /// <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> class provides an STL-style const iterator for <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> and <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>.</p>
13298        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides both <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> and <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a>. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.</p>
13299        /// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;::const_iterator allows you to iterate over a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; (or a <a href="http://doc.qt.io/qt-5/qqueue.html">QQueue</a>&lt;T&gt;). If you want to modify the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as you iterate over it, use <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a> instead. It is generally good practice to use <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> on a non-const <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as well, unless you need to change the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> through the iterator. Const iterators are slightly faster, and can improve code readability.</p>
13300        /// <p>The default <a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> constructor creates an uninitialized iterator. You must initialize it using a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> function like <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">QList::constBegin</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">QList::constEnd</a>(), or <a href="http://doc.qt.io/qt-5/qlist.html#insert">QList::insert</a>() before you can start iterating. Here's a typical loop that prints all the items stored in a list:</p>
13301        /// <pre class="cpp">
13302        ///
13303        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
13304        ///   list<span class="operator">.</span>append(<span class="string">"January"</span>);
13305        ///   list<span class="operator">.</span>append(<span class="string">"February"</span>);
13306        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
13307        ///   list<span class="operator">.</span>append(<span class="string">"December"</span>);
13308        ///
13309        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span><span class="operator">::</span>const_iterator i;
13310        ///   <span class="keyword">for</span> (i <span class="operator">=</span> list<span class="operator">.</span>constBegin(); i <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>constEnd(); <span class="operator">+</span><span class="operator">+</span>i)
13311        /// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">*</span>i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
13312        ///
13313        /// </pre>
13314        /// <p>Most <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> functions accept an integer index rather than an iterator. For that reason, iterators are rarely useful in connection with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. One place where STL-style iterators do make sense is as arguments to <a href="http://doc.qt.io/qt-5/qtalgorithms.html">generic algorithms</a>.</p>
13315        /// <p>For example, here's how to delete all the widgets stored in a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *&gt;:</p>
13316        /// <pre class="cpp">
13317        ///
13318        ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
13319        ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
13320        ///   <a href="http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll">qDeleteAll</a>(list<span class="operator">.</span>constBegin()<span class="operator">,</span> list<span class="operator">.</span>constEnd());
13321        ///
13322        /// </pre>
13323        /// <p>Multiple iterators can be used on the same list. However, be aware that any non-const function call performed on the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> will render all existing iterators undefined. If you need to keep iterators over a long period of time, we recommend that you use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> rather than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
13324        /// <p><b>Warning:</b> Iterators on implicitly shared containers do not work exactly like STL-iterators. You should avoid copying a container while iterators are active on that container. For more information, read <a href="http://doc.qt.io/qt-5/containers.html#implicit-sharing-iterator-problem">Implicit sharing iterator problem</a>.</p></div>
13325        #[inline(always)]
13326        unsafe fn delete(&self) {
13327            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_const_iterator_dconst_iterator(
13328                self as *const crate::q_list_of_q_qml_error::ConstIterator
13329                    as *mut crate::q_list_of_q_qml_error::ConstIterator,
13330            )
13331        }
13332    }
13333
13334    impl ::cpp_core::CppDeletable for crate::q_list_of_q_qml_error::MemoryLayout {
13335        /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QQmlError>::MemoryLayout::~MemoryLayout()```</span>.
13336        #[inline(always)]
13337        unsafe fn delete(&self) {
13338            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_MemoryLayout_dMemoryLayout(
13339                self as *const crate::q_list_of_q_qml_error::MemoryLayout
13340                    as *mut crate::q_list_of_q_qml_error::MemoryLayout,
13341            )
13342        }
13343    }
13344}
13345/// <p>The <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> class is a template class that provides lists.</p>
13346///
13347/// C++ class: <span style='color: green;'>```QList<QQmlError>```</span>.
13348///
13349/// <a href="http://doc.qt.io/qt-5/qlist.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> class is a template class that provides lists.</p>
13350/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores items in a list that provides fast index-based access and index-based insertions and removals.</p>
13351/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
13352/// <ul>
13353/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
13354/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
13355/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
13356/// </ul>
13357/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Internally, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; is represented as an array of T if <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. Otherwise, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; is represented as an array of T* and the items are allocated on the heap.</p>
13358/// <p>The array representation allows very fast insertions and index-based access. The <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>() operations are also very fast because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates memory at both ends of its internal array. (See <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">Algorithmic Complexity</a> for details.</p>
13359/// <p>Note, however, that when the conditions specified above are not met, each append or insert of a new item requires allocating the new item on the heap, and this per item allocation will make <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> a better choice for use cases that do a lot of appending or inserting, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> can allocate memory for many items in a single heap allocation.</p>
13360/// <p>Note that the internal array only ever gets bigger over the life of the list. It never shrinks. The internal array is deallocated by the destructor and by the assignment operator, when one list is assigned to another.</p>
13361/// <p>Here's an example of a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> that stores <a href="http://doc.qt.io/qt-5/qdate.html">QDate</a> values:</p>
13362/// <pre class="cpp">
13363///
13364///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerList;
13365///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qdate.html">QDate</a></span><span class="operator">&gt;</span> dateList;
13366///
13367/// </pre>
13368/// <p>Qt includes a <a href="http://doc.qt.io/qt-5/qstringlist.html">QStringList</a> class that inherits <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;<a href="http://doc.qt.io/qt-5/qstring.html">QString</a>&gt; and adds a few convenience functions, such as <a href="http://doc.qt.io/qt-5/qstringlist.html#join">QStringList::join</a>() and <a href="http://doc.qt.io/qt-5/qstringlist.html#filter">QStringList::filter</a>(). <a href="http://doc.qt.io/qt-5/qstring.html#split">QString::split</a>() creates QStringLists from strings.</p>
13369/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> stores a list of items. The default constructor creates an empty list. To insert items into the list, you can use operator&lt;&lt;():</p>
13370/// <pre class="cpp">
13371///
13372///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
13373///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"one"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"two"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"three"</span>;
13374///   <span class="comment">// list: ["one", "two", "three"]</span>
13375///
13376/// </pre>
13377/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#move">move</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#swap">swap</a>(). In addition, it provides the following convenience functions: <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>().</p>
13378/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const lists, operator[]() returns a reference to the item and can be used on the left side of an assignment:</p>
13379/// <pre class="cpp">
13380///
13381///   <span class="keyword">if</span> (list<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Bob"</span>)
13382/// &#32;     list<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Robert"</span>;
13383///
13384/// </pre>
13385/// <p>Because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is implemented as an array of pointers for types that are larger than a pointer or are not movable, this operation requires (<a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>). For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>():</p>
13386/// <pre class="cpp">
13387///
13388///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> list<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
13389/// &#32;     <span class="keyword">if</span> (list<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Jane"</span>)
13390/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Jane at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
13391///   }
13392///
13393/// </pre>
13394/// <p><a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
13395/// <p>A common requirement is to remove an item from a list and do something with it. For this, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>(). Here's a loop that removes the items from a list one at a time and calls <code>delete</code> on them:</p>
13396/// <pre class="cpp">
13397///
13398///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a></span> <span class="operator">*</span><span class="operator">&gt;</span> list;
13399///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
13400///   <span class="keyword">while</span> (<span class="operator">!</span>list<span class="operator">.</span>isEmpty())
13401/// &#32;     <span class="keyword">delete</span> list<span class="operator">.</span>takeFirst();
13402///
13403/// </pre>
13404/// <p>Inserting and removing items at either end of the list is very fast (<a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> in most cases), because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates extra space on both sides of its internal buffer to allow for fast growth at both ends of the list.</p>
13405/// <p>If you want to find all occurrences of a particular value in a list, use <a href="http://doc.qt.io/qt-5/qlist.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qlist.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of a matching item if they find it; otherwise, they return -1. For example:</p>
13406/// <pre class="cpp">
13407///
13408///   <span class="type">int</span> i <span class="operator">=</span> list<span class="operator">.</span>indexOf(<span class="string">"Jane"</span>);
13409///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
13410/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Jane is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
13411///
13412/// </pre>
13413/// <p>If you simply want to check whether a list contains a particular value, use <a href="http://doc.qt.io/qt-5/qlist.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the list, use <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>(). If you want to replace all occurrences of a particular value with another, use <a href="http://doc.qt.io/qt-5/qlist.html#replace">replace</a>().</p>
13414/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qlist.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
13415/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qlistiterator.html">QListIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablelistiterator.html">QMutableListIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qlist-const-iterator.html">QList::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qlist-iterator.html">QList::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is implemented in such a way that direct index-based access is just as fast as using iterators.</p>
13416/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
13417/// <p>To make <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> as efficient as possible, its member functions don't validate their input before using it. Except for <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>(), member functions always assume the list is <i>not</i> empty. Member functions that take index values as parameters always assume their index value parameters are in the valid range. This means <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> member functions can fail. If you define QT_NO_DEBUG when you compile, failures will not be detected. If you <i>don't</i> define QT_NO_DEBUG, failures will be detected using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_ASSERT">Q_ASSERT</a>() or <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_ASSERT_X">Q_ASSERT_X</a>() with an appropriate message.</p>
13418/// <p>To avoid failures when your list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling other member functions. If you must pass an index value that might not be in the valid range, check that it is less than the value returned by <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() but <i>not</i> less than 0.</p>
13419/// <a name="more-members"></a></div>
13420#[repr(C)]
13421pub struct QListOfQQmlError {
13422    _unused: u8,
13423}
13424impl QListOfQQmlError {
13425    /// <p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
13426    ///
13427    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>& QList<QQmlError>::operator+=(const QList<QQmlError>& l)```</span>.
13428    ///
13429    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
13430    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>().</p></div>
13431    #[inline(always)]
13432    pub unsafe fn add_assign_q_list_of_q_qml_error(
13433        &self,
13434        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
13435    ) -> ::cpp_core::Ref<crate::QListOfQQmlError> {
13436        let ffi_result = {
13437            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator__4(
13438                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13439                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(l)
13440                    .as_raw_ptr(),
13441            )
13442        };
13443        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13444    }
13445
13446    /// <p>This is an overloaded function.</p>
13447    ///
13448    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>& QList<QQmlError>::operator+=(const QQmlError& t)```</span>.
13449    ///
13450    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
13451    /// <p>Appends <i>value</i> to the list.</p>
13452    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
13453    #[inline(always)]
13454    pub unsafe fn add_assign_q_qml_error(
13455        &self,
13456        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
13457    ) -> ::cpp_core::Ref<crate::QListOfQQmlError> {
13458        let ffi_result = {
13459            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator__5(
13460                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13461                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t)
13462                    .as_raw_ptr(),
13463            )
13464        };
13465        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13466    }
13467
13468    /// <p>Inserts <i>value</i> at the end of the list.</p>
13469    ///
13470    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::append(const QQmlError& t)```</span>.
13471    ///
13472    /// <a href="http://doc.qt.io/qt-5/qlist.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the list.</p>
13473    /// <p>Example:</p>
13474    /// <pre class="cpp">
13475    ///
13476    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
13477    ///   list<span class="operator">.</span>append(<span class="string">"one"</span>);
13478    ///   list<span class="operator">.</span>append(<span class="string">"two"</span>);
13479    ///   list<span class="operator">.</span>append(<span class="string">"three"</span>);
13480    ///   <span class="comment">// list: ["one", "two", "three"]</span>
13481    ///
13482    /// </pre>
13483    /// <p>This is the same as list.insert(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(), <i>value</i>).</p>
13484    /// <p>If this list is not shared, this operation is typically very fast (amortized <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>), because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates extra space on both sides of its internal buffer to allow for fast growth at both ends of the list.</p>
13485    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>().</p></div>
13486    #[inline(always)]
13487    pub unsafe fn append_q_qml_error(
13488        &self,
13489        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
13490    ) {
13491        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_append(
13492            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13493            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr(),
13494        )
13495    }
13496
13497    /// <p>This is an overloaded function.</p>
13498    ///
13499    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::append(const QList<QQmlError>& t)```</span>.
13500    ///
13501    /// <a href="http://doc.qt.io/qt-5/qlist.html#append-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
13502    /// <p>Appends the items of the <i>value</i> list to this list.</p>
13503    /// <p>This function was introduced in  Qt 4.5.</p>
13504    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">operator+=</a>().</p></div>
13505    #[inline(always)]
13506    pub unsafe fn append_q_list_of_q_qml_error(
13507        &self,
13508        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
13509    ) {
13510        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_append1(
13511            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13512            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(t)
13513                .as_raw_ptr(),
13514        )
13515    }
13516
13517    /// <p>Returns the item at index position <i>i</i> in the list. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
13518    ///
13519    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::at(int i) const```</span>.
13520    ///
13521    /// <a href="http://doc.qt.io/qt-5/qlist.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the list. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
13522    /// <p>This function is very fast (<a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>).</p>
13523    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">operator[]</a>().</p></div>
13524    #[inline(always)]
13525    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QQmlError> {
13526        let ffi_result = {
13527            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_at(
13528                self as *const crate::QListOfQQmlError,
13529                i,
13530            )
13531        };
13532        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13533            .expect("attempted to construct a null Ref")
13534    }
13535
13536    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13537    ///
13538    /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::back()```</span>.
13539    ///
13540    /// <a href="http://doc.qt.io/qt-5/qlist.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
13541    #[inline(always)]
13542    pub unsafe fn back_mut(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13543        let ffi_result = {
13544            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_back(
13545                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13546            )
13547        };
13548        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13549    }
13550
13551    /// <p>This is an overloaded function.</p>
13552    ///
13553    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::back() const```</span>.
13554    ///
13555    /// <a href="http://doc.qt.io/qt-5/qlist.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
13556    #[inline(always)]
13557    pub unsafe fn back(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13558        let ffi_result = {
13559            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_back1(
13560                self as *const crate::QListOfQQmlError,
13561            )
13562        };
13563        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13564            .expect("attempted to construct a null Ref")
13565    }
13566
13567    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
13568    ///
13569    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::begin()```</span>.
13570    ///
13571    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
13572    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
13573    #[inline(always)]
13574    pub unsafe fn begin_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
13575        let ffi_result = {
13576            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_begin(
13577                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13578            )
13579        };
13580        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13581    }
13582
13583    /// <p>This is an overloaded function.</p>
13584    ///
13585    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::begin() const```</span>.
13586    ///
13587    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
13588    #[inline(always)]
13589    pub unsafe fn begin(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13590        let ffi_result = {
13591            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_begin1(
13592                self as *const crate::QListOfQQmlError,
13593            )
13594        };
13595        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13596    }
13597
13598    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
13599    ///
13600    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::cbegin() const```</span>.
13601    ///
13602    /// <a href="http://doc.qt.io/qt-5/qlist.html#cbegin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
13603    /// <p>This function was introduced in  Qt 5.0.</p>
13604    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#cend">cend</a>().</p></div>
13605    #[inline(always)]
13606    pub unsafe fn cbegin(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13607        let ffi_result = {
13608            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_cbegin(
13609                self as *const crate::QListOfQQmlError,
13610            )
13611        };
13612        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13613    }
13614
13615    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
13616    ///
13617    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::cend() const```</span>.
13618    ///
13619    /// <a href="http://doc.qt.io/qt-5/qlist.html#cend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
13620    /// <p>This function was introduced in  Qt 5.0.</p>
13621    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#cbegin">cbegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
13622    #[inline(always)]
13623    pub unsafe fn cend(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13624        let ffi_result = {
13625            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_cend(
13626                self as *const crate::QListOfQQmlError,
13627            )
13628        };
13629        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13630    }
13631
13632    /// <p>Removes all items from the list.</p>
13633    ///
13634    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::clear()```</span>.
13635    ///
13636    /// <a href="http://doc.qt.io/qt-5/qlist.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all items from the list.</p>
13637    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAll">removeAll</a>().</p></div>
13638    #[inline(always)]
13639    pub unsafe fn clear(&self) {
13640        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_clear(
13641            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13642        )
13643    }
13644
13645    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
13646    ///
13647    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::constBegin() const```</span>.
13648    ///
13649    /// <a href="http://doc.qt.io/qt-5/qlist.html#constBegin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
13650    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">constEnd</a>().</p></div>
13651    #[inline(always)]
13652    pub unsafe fn const_begin(
13653        &self,
13654    ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13655        let ffi_result = {
13656            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_constBegin(
13657                self as *const crate::QListOfQQmlError,
13658            )
13659        };
13660        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13661    }
13662
13663    /// <p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
13664    ///
13665    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::constEnd() const```</span>.
13666    ///
13667    /// <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
13668    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
13669    #[inline(always)]
13670    pub unsafe fn const_end(
13671        &self,
13672    ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13673        let ffi_result = {
13674            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_constEnd(
13675                self as *const crate::QListOfQQmlError,
13676            )
13677        };
13678        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13679    }
13680
13681    /// <p>Returns a const reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13682    ///
13683    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::constFirst() const```</span>.
13684    ///
13685    /// <a href="http://doc.qt.io/qt-5/qlist.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13686    /// <p>This function was introduced in  Qt 5.6.</p>
13687    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>().</p></div>
13688    #[inline(always)]
13689    pub unsafe fn const_first(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13690        let ffi_result = {
13691            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_constFirst(
13692                self as *const crate::QListOfQQmlError,
13693            )
13694        };
13695        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13696            .expect("attempted to construct a null Ref")
13697    }
13698
13699    /// <p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13700    ///
13701    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::constLast() const```</span>.
13702    ///
13703    /// <a href="http://doc.qt.io/qt-5/qlist.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13704    /// <p>This function was introduced in  Qt 5.6.</p>
13705    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>().</p></div>
13706    #[inline(always)]
13707    pub unsafe fn const_last(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13708        let ffi_result = {
13709            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_constLast(
13710                self as *const crate::QListOfQQmlError,
13711            )
13712        };
13713        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13714            .expect("attempted to construct a null Ref")
13715    }
13716
13717    /// <p>Assigns <i>other</i> to this list and returns a reference to this list.</p>
13718    ///
13719    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>& QList<QQmlError>::operator=(const QList<QQmlError>& l)```</span>.
13720    ///
13721    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this list and returns a reference to this list.</p></div>
13722    #[inline(always)]
13723    pub unsafe fn copy_from(
13724        &self,
13725        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
13726    ) -> ::cpp_core::Ref<crate::QListOfQQmlError> {
13727        let ffi_result = {
13728            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator_(
13729                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13730                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(l)
13731                    .as_raw_ptr(),
13732            )
13733        };
13734        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13735    }
13736
13737    /// <p>Returns the number of items in the list. This is effectively the same as <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
13738    ///
13739    /// Calls C++ function: <span style='color: green;'>```int QList<QQmlError>::count() const```</span>.
13740    ///
13741    /// <a href="http://doc.qt.io/qt-5/qlist.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the list. This is effectively the same as <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p></div>
13742    #[inline(always)]
13743    pub unsafe fn count(&self) -> ::std::os::raw::c_int {
13744        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_count1(self as *const crate::QListOfQQmlError)
13745    }
13746
13747    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::detach()```</span>.
13748    #[inline(always)]
13749    pub unsafe fn detach(&self) {
13750        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_detach(
13751            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13752        )
13753    }
13754
13755    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::detachShared()```</span>.
13756    #[inline(always)]
13757    pub unsafe fn detach_shared(&self) {
13758        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_detachShared(
13759            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13760        )
13761    }
13762
13763    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and returns <code>true</code> if the list is empty.</p>
13764    ///
13765    /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::empty() const```</span>.
13766    ///
13767    /// <a href="http://doc.qt.io/qt-5/qlist.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and returns <code>true</code> if the list is empty.</p></div>
13768    #[inline(always)]
13769    pub unsafe fn empty(&self) -> bool {
13770        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_empty(self as *const crate::QListOfQQmlError)
13771    }
13772
13773    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
13774    ///
13775    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::end()```</span>.
13776    ///
13777    /// <a href="http://doc.qt.io/qt-5/qlist.html#end">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
13778    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">constEnd</a>().</p></div>
13779    #[inline(always)]
13780    pub unsafe fn end_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
13781        let ffi_result = {
13782            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_end(
13783                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13784            )
13785        };
13786        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13787    }
13788
13789    /// <p>This is an overloaded function.</p>
13790    ///
13791    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::end() const```</span>.
13792    ///
13793    /// <a href="http://doc.qt.io/qt-5/qlist.html#end-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
13794    #[inline(always)]
13795    pub unsafe fn end(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
13796        let ffi_result = {
13797            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_end1(
13798                self as *const crate::QListOfQQmlError,
13799            )
13800        };
13801        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13802    }
13803
13804    /// <p>Removes the item associated with the iterator <i>pos</i> from the list, and returns an iterator to the next item in the list (which may be <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>()).</p>
13805    ///
13806    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::erase(QList<QQmlError>::iterator pos)```</span>.
13807    ///
13808    /// <a href="http://doc.qt.io/qt-5/qlist.html#erase">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the item associated with the iterator <i>pos</i> from the list, and returns an iterator to the next item in the list (which may be <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>()).</p>
13809    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>().</p></div>
13810    #[inline(always)]
13811    pub unsafe fn erase_1a(
13812        &self,
13813        pos: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
13814    ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
13815        let ffi_result = {
13816            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_erase(self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(pos).as_raw_ptr())
13817        };
13818        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13819    }
13820
13821    /// <p>This is an overloaded function.</p>
13822    ///
13823    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::erase(QList<QQmlError>::iterator first, QList<QQmlError>::iterator last)```</span>.
13824    ///
13825    /// <a href="http://doc.qt.io/qt-5/qlist.html#erase-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
13826    /// <p>Removes all the items from <i>begin</i> up to (but not including) <i>end</i>. Returns an iterator to the same item that <i>end</i> referred to before the call.</p></div>
13827    #[inline(always)]
13828    pub unsafe fn erase_2a(
13829        &self,
13830        first: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
13831        last: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
13832    ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
13833        let ffi_result = {
13834            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_erase1(self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(first).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(last).as_raw_ptr())
13835        };
13836        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13837    }
13838
13839    /// <p>Returns a reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13840    ///
13841    /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::first()```</span>.
13842    ///
13843    /// <a href="http://doc.qt.io/qt-5/qlist.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13844    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#last">last</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>().</p></div>
13845    #[inline(always)]
13846    pub unsafe fn first_mut(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13847        let ffi_result = {
13848            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_first(
13849                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13850            )
13851        };
13852        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13853    }
13854
13855    /// <p>This is an overloaded function.</p>
13856    ///
13857    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::first() const```</span>.
13858    ///
13859    /// <a href="http://doc.qt.io/qt-5/qlist.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
13860    #[inline(always)]
13861    pub unsafe fn first(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13862        let ffi_result = {
13863            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_first1(
13864                self as *const crate::QListOfQQmlError,
13865            )
13866        };
13867        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13868            .expect("attempted to construct a null Ref")
13869    }
13870
13871    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
13872    ///
13873    /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::front()```</span>.
13874    ///
13875    /// <a href="http://doc.qt.io/qt-5/qlist.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
13876    #[inline(always)]
13877    pub unsafe fn front_mut(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13878        let ffi_result = {
13879            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_front(
13880                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13881            )
13882        };
13883        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13884    }
13885
13886    /// <p>This is an overloaded function.</p>
13887    ///
13888    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::front() const```</span>.
13889    ///
13890    /// <a href="http://doc.qt.io/qt-5/qlist.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
13891    #[inline(always)]
13892    pub unsafe fn front(&self) -> ::cpp_core::Ref<crate::QQmlError> {
13893        let ffi_result = {
13894            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_front1(
13895                self as *const crate::QListOfQQmlError,
13896            )
13897        };
13898        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13899            .expect("attempted to construct a null Ref")
13900    }
13901
13902    /// <p>This is an overloaded function.</p>
13903    ///
13904    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::operator[](int i) const```</span>.
13905    ///
13906    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
13907    /// <p>Same as <a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>(). This function runs in <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>.</p></div>
13908    #[inline(always)]
13909    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QQmlError> {
13910        let ffi_result = {
13911            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator__2(
13912                self as *const crate::QListOfQQmlError,
13913                i,
13914            )
13915        };
13916        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
13917            .expect("attempted to construct a null Ref")
13918    }
13919
13920    /// <p>Returns the item at index position <i>i</i> as a modifiable reference. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
13921    ///
13922    /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::operator[](int i)```</span>.
13923    ///
13924    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
13925    /// <p>If this function is called on a list that is currently being shared, it will trigger a copy of all elements. Otherwise, this function runs in <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>. If you do not want to modify the list you should use <a href="http://doc.qt.io/qt-5/qlist.html#at">QList::at</a>().</p>
13926    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#value">value</a>().</p></div>
13927    #[inline(always)]
13928    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QQmlError> {
13929        let ffi_result = {
13930            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator__3(
13931                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13932                i,
13933            )
13934        };
13935        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
13936    }
13937
13938    /// <p>Inserts <i>value</i> at index position <i>i</i> in the list. If <i>i</i> &lt;= 0, the value is prepended to the list. If <i>i</i> &gt;= <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(), the value is appended to the list.</p>
13939    ///
13940    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::insert(int i, const QQmlError& t)```</span>.
13941    ///
13942    /// <a href="http://doc.qt.io/qt-5/qlist.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the list. If <i>i</i> &lt;= 0, the value is prepended to the list. If <i>i</i> &gt;= <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(), the value is appended to the list.</p>
13943    /// <p>Example:</p>
13944    /// <pre class="cpp">
13945    ///
13946    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
13947    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
13948    ///   list<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
13949    ///   <span class="comment">// list: ["alpha", "beta", "gamma", "delta"]</span>
13950    ///
13951    /// </pre>
13952    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>().</p></div>
13953    #[inline(always)]
13954    pub unsafe fn insert_int_q_qml_error(
13955        &self,
13956        i: ::std::os::raw::c_int,
13957        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
13958    ) {
13959        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_insert(
13960            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
13961            i,
13962            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr(),
13963        )
13964    }
13965
13966    /// <p>This is an overloaded function.</p>
13967    ///
13968    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::insert(QList<QQmlError>::iterator before, const QQmlError& t)```</span>.
13969    ///
13970    /// <a href="http://doc.qt.io/qt-5/qlist.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
13971    /// <p>Inserts <i>value</i> in front of the item pointed to by the iterator <i>before</i>. Returns an iterator pointing at the inserted item. Note that the iterator passed to the function will be invalid after the call; the returned iterator should be used instead.</p></div>
13972    #[inline(always)]
13973    pub unsafe fn insert_iterator_q_qml_error(
13974        &self,
13975        before: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>,
13976        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
13977    ) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
13978        let ffi_result = {
13979            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_insert1(self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_list_of_q_qml_error::Iterator>>::cast_into(before).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr())
13980        };
13981        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13982    }
13983
13984    /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::isDetached() const```</span>.
13985    #[inline(always)]
13986    pub unsafe fn is_detached(&self) -> bool {
13987        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_isDetached(
13988            self as *const crate::QListOfQQmlError,
13989        )
13990    }
13991
13992    /// <p>Returns <code>true</code> if the list contains no items; otherwise returns false.</p>
13993    ///
13994    /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::isEmpty() const```</span>.
13995    ///
13996    /// <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the list contains no items; otherwise returns false.</p>
13997    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p></div>
13998    #[inline(always)]
13999    pub unsafe fn is_empty(&self) -> bool {
14000        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_isEmpty(self as *const crate::QListOfQQmlError)
14001    }
14002
14003    /// Calls C++ function: <span style='color: green;'>```bool QList<QQmlError>::isSharedWith(const QList<QQmlError>& other) const```</span>.
14004    #[inline(always)]
14005    pub unsafe fn is_shared_with(
14006        &self,
14007        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
14008    ) -> bool {
14009        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_isSharedWith(
14010            self as *const crate::QListOfQQmlError,
14011            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(other)
14012                .as_raw_ptr(),
14013        )
14014    }
14015
14016    /// <p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14017    ///
14018    /// Calls C++ function: <span style='color: green;'>```QQmlError& QList<QQmlError>::last()```</span>.
14019    ///
14020    /// <a href="http://doc.qt.io/qt-5/qlist.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the list. The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14021    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#first">first</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>().</p></div>
14022    #[inline(always)]
14023    pub unsafe fn last_mut(&self) -> ::cpp_core::Ref<crate::QQmlError> {
14024        let ffi_result = {
14025            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_last(
14026                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14027            )
14028        };
14029        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
14030    }
14031
14032    /// <p>This is an overloaded function.</p>
14033    ///
14034    /// Calls C++ function: <span style='color: green;'>```const QQmlError& QList<QQmlError>::last() const```</span>.
14035    ///
14036    /// <a href="http://doc.qt.io/qt-5/qlist.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
14037    #[inline(always)]
14038    pub unsafe fn last(&self) -> ::cpp_core::Ref<crate::QQmlError> {
14039        let ffi_result = {
14040            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_last1(
14041                self as *const crate::QListOfQQmlError,
14042            )
14043        };
14044        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QQmlError)
14045            .expect("attempted to construct a null Ref")
14046    }
14047
14048    /// <p>This function is identical to <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p>
14049    ///
14050    /// Calls C++ function: <span style='color: green;'>```int QList<QQmlError>::length() const```</span>.
14051    ///
14052    /// <a href="http://doc.qt.io/qt-5/qlist.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is identical to <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p>
14053    /// <p>This function was introduced in  Qt 4.5.</p>
14054    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p></div>
14055    #[inline(always)]
14056    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
14057        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_length(self as *const crate::QListOfQQmlError)
14058    }
14059
14060    /// <p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
14061    ///
14062    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError> QList<QQmlError>::mid(int pos, int length = …) const```</span>.
14063    ///
14064    /// <a href="http://doc.qt.io/qt-5/qlist.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
14065    #[inline(always)]
14066    pub unsafe fn mid_2a(
14067        &self,
14068        pos: ::std::os::raw::c_int,
14069        length: ::std::os::raw::c_int,
14070    ) -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
14071        let ffi_result = {
14072            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_mid(
14073                self as *const crate::QListOfQQmlError,
14074                pos,
14075                length,
14076            )
14077        };
14078        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14079    }
14080
14081    /// <p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
14082    ///
14083    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError> QList<QQmlError>::mid(int pos) const```</span>.
14084    ///
14085    /// <a href="http://doc.qt.io/qt-5/qlist.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-list which includes elements from this list, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements from <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
14086    #[inline(always)]
14087    pub unsafe fn mid_1a(
14088        &self,
14089        pos: ::std::os::raw::c_int,
14090    ) -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
14091        let ffi_result = {
14092            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_mid1(
14093                self as *const crate::QListOfQQmlError,
14094                pos,
14095            )
14096        };
14097        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14098    }
14099
14100    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
14101    ///
14102    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::move(int from, int to)```</span>.
14103    ///
14104    /// <a href="http://doc.qt.io/qt-5/qlist.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
14105    /// <p>Example:</p>
14106    /// <pre class="cpp">
14107    ///
14108    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
14109    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"D"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"E"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"F"</span>;
14110    ///   list<span class="operator">.</span>move(<span class="number">1</span><span class="operator">,</span> <span class="number">4</span>);
14111    ///   <span class="comment">// list: ["A", "C", "D", "E", "B", "F"]</span>
14112    ///
14113    /// </pre>
14114    /// <p>This is the same as insert(<i>to</i>, <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(<i>from</i>)).This function assumes that both <i>from</i> and <i>to</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>from</i> and <i>to</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
14115    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#swap">swap</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>().</p></div>
14116    #[inline(always)]
14117    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
14118        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_move(
14119            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14120            from,
14121            to,
14122        )
14123    }
14124
14125    /// <p>Constructs an empty list.</p>
14126    ///
14127    /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::QList()```</span>.
14128    ///
14129    /// <a href="http://doc.qt.io/qt-5/qlist.html#QList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty list.</p></div>
14130    #[inline(always)]
14131    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
14132        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_QList() };
14133        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14134    }
14135
14136    /// <p>Constructs a copy of <i>other</i>.</p>
14137    ///
14138    /// Calls C++ function: <span style='color: green;'>```[constructor] void QList<QQmlError>::QList(const QList<QQmlError>& l)```</span>.
14139    ///
14140    /// <a href="http://doc.qt.io/qt-5/qlist.html#QList-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
14141    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
14142    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-eq">operator=</a>().</p></div>
14143    #[inline(always)]
14144    pub unsafe fn new_copy(
14145        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
14146    ) -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
14147        let ffi_result = {
14148            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_QList1(
14149                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(l)
14150                    .as_raw_ptr(),
14151            )
14152        };
14153        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14154    }
14155
14156    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14157    ///
14158    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::pop_back()```</span>.
14159    ///
14160    /// <a href="http://doc.qt.io/qt-5/qlist.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
14161    #[inline(always)]
14162    pub unsafe fn pop_back(&self) {
14163        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_pop_back(
14164            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14165        )
14166    }
14167
14168    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14169    ///
14170    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::pop_front()```</span>.
14171    ///
14172    /// <a href="http://doc.qt.io/qt-5/qlist.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p></div>
14173    #[inline(always)]
14174    pub unsafe fn pop_front(&self) {
14175        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_pop_front(
14176            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14177        )
14178    }
14179
14180    /// <p>Inserts <i>value</i> at the beginning of the list.</p>
14181    ///
14182    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::prepend(const QQmlError& t)```</span>.
14183    ///
14184    /// <a href="http://doc.qt.io/qt-5/qlist.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the list.</p>
14185    /// <p>Example:</p>
14186    /// <pre class="cpp">
14187    ///
14188    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
14189    ///   list<span class="operator">.</span>prepend(<span class="string">"one"</span>);
14190    ///   list<span class="operator">.</span>prepend(<span class="string">"two"</span>);
14191    ///   list<span class="operator">.</span>prepend(<span class="string">"three"</span>);
14192    ///   <span class="comment">// list: ["three", "two", "one"]</span>
14193    ///
14194    /// </pre>
14195    /// <p>This is the same as list.insert(0, <i>value</i>).</p>
14196    /// <p>If this list is not shared, this operation is typically very fast (amortized <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>), because <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> preallocates extra space on both sides of its internal buffer to allow for fast growth at both ends of the list.</p>
14197    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#insert">insert</a>().</p></div>
14198    #[inline(always)]
14199    pub unsafe fn prepend(&self, t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>) {
14200        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_prepend(
14201            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14202            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr(),
14203        )
14204    }
14205
14206    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(<i>value</i>).</p>
14207    ///
14208    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::push_back(const QQmlError& t)```</span>.
14209    ///
14210    /// <a href="http://doc.qt.io/qt-5/qlist.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>(<i>value</i>).</p></div>
14211    #[inline(always)]
14212    pub unsafe fn push_back(
14213        &self,
14214        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
14215    ) {
14216        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_push_back(
14217            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14218            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr(),
14219        )
14220    }
14221
14222    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(<i>value</i>).</p>
14223    ///
14224    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::push_front(const QQmlError& t)```</span>.
14225    ///
14226    /// <a href="http://doc.qt.io/qt-5/qlist.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qlist.html#prepend">prepend</a>(<i>value</i>).</p></div>
14227    #[inline(always)]
14228    pub unsafe fn push_front(
14229        &self,
14230        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
14231    ) {
14232        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_push_front(
14233            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14234            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr(),
14235        )
14236    }
14237
14238    /// <p>Removes the item at index position <i>i</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
14239    ///
14240    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::removeAt(int i)```</span>.
14241    ///
14242    /// <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the item at index position <i>i</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
14243    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">removeOne</a>().</p></div>
14244    #[inline(always)]
14245    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
14246        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_removeAt(
14247            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14248            i,
14249        )
14250    }
14251
14252    /// <p>Removes the first item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(0). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14253    ///
14254    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::removeFirst()```</span>.
14255    ///
14256    /// <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(0). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14257    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>().</p></div>
14258    #[inline(always)]
14259    pub unsafe fn remove_first(&self) {
14260        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_removeFirst(
14261            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14262        )
14263    }
14264
14265    /// <p>Removes the last item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14266    ///
14267    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::removeLast()```</span>.
14268    ///
14269    /// <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list. Calling this function is equivalent to calling <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). The list must not be empty. If the list can be empty, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14270    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>().</p></div>
14271    #[inline(always)]
14272    pub unsafe fn remove_last(&self) {
14273        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_removeLast(
14274            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14275        )
14276    }
14277
14278    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
14279    ///
14280    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::replace(int i, const QQmlError& t)```</span>.
14281    ///
14282    /// <a href="http://doc.qt.io/qt-5/qlist.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
14283    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>().</p></div>
14284    #[inline(always)]
14285    pub unsafe fn replace(
14286        &self,
14287        i: ::std::os::raw::c_int,
14288        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
14289    ) {
14290        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_replace(
14291            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14292            i,
14293            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(t).as_raw_ptr(),
14294        )
14295    }
14296
14297    /// <p>Reserve space for <i>alloc</i> elements.</p>
14298    ///
14299    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::reserve(int size)```</span>.
14300    ///
14301    /// <a href="http://doc.qt.io/qt-5/qlist.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Reserve space for <i>alloc</i> elements.</p>
14302    /// <p>If <i>alloc</i> is smaller than the current size of the list, nothing will happen.</p>
14303    /// <p>Use this function to avoid repetetive reallocation of <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>'s internal data if you can predict how many elements will be appended. Note that the reservation applies only to the internal pointer array.</p>
14304    /// <p>This function was introduced in  Qt 4.7.</p></div>
14305    #[inline(always)]
14306    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
14307        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_reserve(
14308            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14309            size,
14310        )
14311    }
14312
14313    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::setSharable(bool sharable)```</span>.
14314    #[inline(always)]
14315    pub unsafe fn set_sharable(&self, sharable: bool) {
14316        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_setSharable(
14317            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14318            sharable,
14319        )
14320    }
14321
14322    /// <p>Returns the number of items in the list.</p>
14323    ///
14324    /// Calls C++ function: <span style='color: green;'>```int QList<QQmlError>::size() const```</span>.
14325    ///
14326    /// <a href="http://doc.qt.io/qt-5/qlist.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the list.</p>
14327    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p></div>
14328    #[inline(always)]
14329    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
14330        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_size(self as *const crate::QListOfQQmlError)
14331    }
14332
14333    /// <p>Swaps list <i>other</i> with this list. This operation is very fast and never fails.</p>
14334    ///
14335    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::swap(QList<QQmlError>& other)```</span>.
14336    ///
14337    /// <a href="http://doc.qt.io/qt-5/qlist.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps list <i>other</i> with this list. This operation is very fast and never fails.</p>
14338    /// <p>This function was introduced in  Qt 4.8.</p></div>
14339    #[inline(always)]
14340    pub unsafe fn swap_1a(
14341        &self,
14342        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
14343    ) {
14344        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_swap(
14345            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14346            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(other)
14347                .as_raw_ptr() as *mut crate::QListOfQQmlError,
14348        )
14349    }
14350
14351    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
14352    ///
14353    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::swap(int i, int j)```</span>.
14354    ///
14355    /// <a href="http://doc.qt.io/qt-5/qlist.html#swap-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
14356    /// <p>Example:</p>
14357    /// <pre class="cpp">
14358    ///
14359    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
14360    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"D"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"E"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"F"</span>;
14361    ///   list<span class="operator">.</span>swap(<span class="number">1</span><span class="operator">,</span> <span class="number">4</span>);
14362    ///   <span class="comment">// list: ["A", "E", "C", "D", "B", "F"]</span>
14363    ///
14364    /// </pre>
14365    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">move</a>().</p></div>
14366    #[inline(always)]
14367    pub unsafe fn swap_2a(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
14368        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_swap1(
14369            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14370            i,
14371            j,
14372        )
14373    }
14374
14375    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
14376    ///
14377    /// Calls C++ function: <span style='color: green;'>```void QList<QQmlError>::swapItemsAt(int i, int j)```</span>.
14378    ///
14379    /// <a href="http://doc.qt.io/qt-5/qlist.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>().</p>
14380    /// <p>Example:</p>
14381    /// <pre class="cpp">
14382    ///
14383    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html#QList">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> list;
14384    ///   list <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"D"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"E"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"F"</span>;
14385    ///   list<span class="operator">.</span>swapItemsAt(<span class="number">1</span><span class="operator">,</span> <span class="number">4</span>);
14386    ///   <span class="comment">// list: ["A", "E", "C", "D", "B", "F"]</span>
14387    ///
14388    /// </pre>
14389    /// <p>This function was introduced in  Qt 5.13.</p>
14390    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">move</a>().</p></div>
14391    #[inline(always)]
14392    #[cfg_attr(
14393        feature = "ritual_rustdoc_nightly",
14394        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
14395    )]
14396    #[cfg(any(
14397        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
14398        feature = "ritual_rustdoc"
14399    ))]
14400    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
14401        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_swapItemsAt(
14402            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14403            i,
14404            j,
14405        )
14406    }
14407
14408    /// <p>Removes the item at index position <i>i</i> and returns it. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
14409    ///
14410    /// Calls C++ function: <span style='color: green;'>```QQmlError QList<QQmlError>::takeAt(int i)```</span>.
14411    ///
14412    /// <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the item at index position <i>i</i> and returns it. <i>i</i> must be a valid index position in the list (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>()).</p>
14413    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>() is more efficient.</p>
14414    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#removeAt">removeAt</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>().</p></div>
14415    #[inline(always)]
14416    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::cpp_core::CppBox<crate::QQmlError> {
14417        let ffi_result = {
14418            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_takeAt(
14419                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14420                i,
14421            )
14422        };
14423        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14424    }
14425
14426    /// <p>Removes the first item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(0). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14427    ///
14428    /// Calls C++ function: <span style='color: green;'>```QQmlError QList<QQmlError>::takeFirst()```</span>.
14429    ///
14430    /// <a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(0). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14431    /// <p>If this list is not shared, this operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>.</p>
14432    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>() is more efficient.</p>
14433    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeFirst">removeFirst</a>().</p></div>
14434    #[inline(always)]
14435    pub unsafe fn take_first(&self) -> ::cpp_core::CppBox<crate::QQmlError> {
14436        let ffi_result = {
14437            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_takeFirst(
14438                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14439            )
14440        };
14441        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14442    }
14443
14444    /// <p>Removes the last item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14445    ///
14446    /// Calls C++ function: <span style='color: green;'>```QQmlError QList<QQmlError>::takeLast()```</span>.
14447    ///
14448    /// <a href="http://doc.qt.io/qt-5/qlist.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This is the same as <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(<a href="http://doc.qt.io/qt-5/qlist.html#size">size</a>() - 1). This function assumes the list is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() before calling this function.</p>
14449    /// <p>If this list is not shared, this operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>.</p>
14450    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>() is more efficient.</p>
14451    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">takeAt</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#removeLast">removeLast</a>().</p></div>
14452    #[inline(always)]
14453    pub unsafe fn take_last(&self) -> ::cpp_core::CppBox<crate::QQmlError> {
14454        let ffi_result = {
14455            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_takeLast(
14456                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
14457            )
14458        };
14459        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14460    }
14461
14462    /// <p>Returns the value at index position <i>i</i> in the list.</p>
14463    ///
14464    /// Calls C++ function: <span style='color: green;'>```QQmlError QList<QQmlError>::value(int i) const```</span>.
14465    ///
14466    /// <a href="http://doc.qt.io/qt-5/qlist.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the list.</p>
14467    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that the index is going to be within bounds, you can use <a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() instead, which is slightly faster.</p>
14468    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#operator-5b-5d">operator[]</a>().</p></div>
14469    #[inline(always)]
14470    pub unsafe fn value_1a(
14471        &self,
14472        i: ::std::os::raw::c_int,
14473    ) -> ::cpp_core::CppBox<crate::QQmlError> {
14474        let ffi_result = {
14475            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_value(
14476                self as *const crate::QListOfQQmlError,
14477                i,
14478            )
14479        };
14480        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14481    }
14482
14483    /// <p>This is an overloaded function.</p>
14484    ///
14485    /// Calls C++ function: <span style='color: green;'>```QQmlError QList<QQmlError>::value(int i, const QQmlError& defaultValue) const```</span>.
14486    ///
14487    /// <a href="http://doc.qt.io/qt-5/qlist.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
14488    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
14489    #[inline(always)]
14490    pub unsafe fn value_2a(
14491        &self,
14492        i: ::std::os::raw::c_int,
14493        default_value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlError>>,
14494    ) -> ::cpp_core::CppBox<crate::QQmlError> {
14495        let ffi_result = {
14496            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_value1(
14497                self as *const crate::QListOfQQmlError,
14498                i,
14499                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlError>>::cast_into(default_value)
14500                    .as_raw_ptr(),
14501            )
14502        };
14503        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14504    }
14505}
14506
14507/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
14508///
14509/// C++ class: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>```</span>.
14510///
14511/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
14512/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
14513/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
14514/// <ul>
14515/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
14516/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
14517/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
14518/// </ul>
14519/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
14520/// <pre class="cpp">
14521///
14522///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
14523///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
14524///
14525/// </pre>
14526/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
14527/// <pre class="cpp">
14528///
14529///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
14530///
14531/// </pre>
14532/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
14533/// <pre class="cpp">
14534///
14535///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
14536///
14537/// </pre>
14538/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
14539/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
14540/// <pre class="cpp">
14541///
14542///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
14543/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
14544///
14545/// </pre>
14546/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
14547/// <pre class="cpp">
14548///
14549///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
14550/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
14551/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
14552///   }
14553///
14554/// </pre>
14555/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
14556/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
14557/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
14558/// <pre class="cpp">
14559///
14560///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
14561///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
14562/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
14563///
14564/// </pre>
14565/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
14566/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
14567/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
14568/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
14569/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
14570/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
14571/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
14572/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
14573/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
14574/// <a name="more-information-on-using-qt-containers"></a>
14575/// <h4>More Information on Using Qt Containers</h4>
14576/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
14577#[repr(C)]
14578pub struct QVectorOfPropertyPair {
14579    _unused: u8,
14580}
14581impl QVectorOfPropertyPair {
14582    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
14583    ///
14584    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::operator+=(const QVector<QQmlContext::PropertyPair>& l)```</span>.
14585    ///
14586    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
14587    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
14588    #[inline(always)]
14589    #[cfg_attr(
14590        feature = "ritual_rustdoc_nightly",
14591        doc(cfg(any(
14592            cpp_lib_version = "5.13.0",
14593            cpp_lib_version = "5.11.3",
14594            cpp_lib_version = "5.12.2",
14595            cpp_lib_version = "5.14.0"
14596        )))
14597    )]
14598    #[cfg(any(
14599        any(
14600            cpp_lib_version = "5.13.0",
14601            cpp_lib_version = "5.11.3",
14602            cpp_lib_version = "5.12.2",
14603            cpp_lib_version = "5.14.0"
14604        ),
14605        feature = "ritual_rustdoc"
14606    ))]
14607    pub unsafe fn add_assign_q_vector_of_property_pair(
14608        &self,
14609        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
14610    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
14611        let ffi_result = {
14612            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator__4(
14613                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
14614                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(l)
14615                    .as_raw_ptr(),
14616            )
14617        };
14618        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
14619    }
14620
14621    /// <p>This is an overloaded function.</p>
14622    ///
14623    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::operator+=(const QQmlContext::PropertyPair& t)```</span>.
14624    ///
14625    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
14626    /// <p>Appends <i>value</i> to the vector.</p>
14627    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
14628    #[inline(always)]
14629    #[cfg_attr(
14630        feature = "ritual_rustdoc_nightly",
14631        doc(cfg(any(
14632            cpp_lib_version = "5.13.0",
14633            cpp_lib_version = "5.11.3",
14634            cpp_lib_version = "5.12.2",
14635            cpp_lib_version = "5.14.0"
14636        )))
14637    )]
14638    #[cfg(any(
14639        any(
14640            cpp_lib_version = "5.13.0",
14641            cpp_lib_version = "5.11.3",
14642            cpp_lib_version = "5.12.2",
14643            cpp_lib_version = "5.14.0"
14644        ),
14645        feature = "ritual_rustdoc"
14646    ))]
14647    pub unsafe fn add_assign_property_pair(
14648        &self,
14649        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
14650    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
14651        let ffi_result = {
14652            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator__5(self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(t).as_raw_ptr())
14653        };
14654        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
14655    }
14656
14657    /// <p>Inserts <i>value</i> at the end of the vector.</p>
14658    ///
14659    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::append(const QQmlContext::PropertyPair& t)```</span>.
14660    ///
14661    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
14662    /// <p>Example:</p>
14663    /// <pre class="cpp">
14664    ///
14665    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
14666    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
14667    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
14668    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
14669    ///   vector<span class="operator">.</span>append(three);
14670    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
14671    ///   <span class="comment">// three: "three"</span>
14672    ///
14673    /// </pre>
14674    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
14675    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
14676    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
14677    #[inline(always)]
14678    #[cfg_attr(
14679        feature = "ritual_rustdoc_nightly",
14680        doc(cfg(any(
14681            cpp_lib_version = "5.13.0",
14682            cpp_lib_version = "5.11.3",
14683            cpp_lib_version = "5.12.2",
14684            cpp_lib_version = "5.14.0"
14685        )))
14686    )]
14687    #[cfg(any(
14688        any(
14689            cpp_lib_version = "5.13.0",
14690            cpp_lib_version = "5.11.3",
14691            cpp_lib_version = "5.12.2",
14692            cpp_lib_version = "5.14.0"
14693        ),
14694        feature = "ritual_rustdoc"
14695    ))]
14696    pub unsafe fn append_property_pair(
14697        &self,
14698        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
14699    ) {
14700        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_append(
14701            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
14702            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
14703                t,
14704            )
14705            .as_raw_ptr(),
14706        )
14707    }
14708
14709    /// <p>This is an overloaded function.</p>
14710    ///
14711    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::append(const QVector<QQmlContext::PropertyPair>& l)```</span>.
14712    ///
14713    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
14714    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
14715    /// <p>This function was introduced in  Qt 5.5.</p>
14716    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
14717    #[inline(always)]
14718    #[cfg_attr(
14719        feature = "ritual_rustdoc_nightly",
14720        doc(cfg(any(
14721            cpp_lib_version = "5.13.0",
14722            cpp_lib_version = "5.11.3",
14723            cpp_lib_version = "5.12.2",
14724            cpp_lib_version = "5.14.0"
14725        )))
14726    )]
14727    #[cfg(any(
14728        any(
14729            cpp_lib_version = "5.13.0",
14730            cpp_lib_version = "5.11.3",
14731            cpp_lib_version = "5.12.2",
14732            cpp_lib_version = "5.14.0"
14733        ),
14734        feature = "ritual_rustdoc"
14735    ))]
14736    pub unsafe fn append_q_vector_of_property_pair(
14737        &self,
14738        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
14739    ) {
14740        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_append2(
14741            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
14742            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(l)
14743                .as_raw_ptr(),
14744        )
14745    }
14746
14747    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
14748    ///
14749    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::at(int i) const```</span>.
14750    ///
14751    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
14752    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
14753    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
14754    #[inline(always)]
14755    #[cfg_attr(
14756        feature = "ritual_rustdoc_nightly",
14757        doc(cfg(any(
14758            cpp_lib_version = "5.13.0",
14759            cpp_lib_version = "5.11.3",
14760            cpp_lib_version = "5.12.2",
14761            cpp_lib_version = "5.14.0"
14762        )))
14763    )]
14764    #[cfg(any(
14765        any(
14766            cpp_lib_version = "5.13.0",
14767            cpp_lib_version = "5.11.3",
14768            cpp_lib_version = "5.12.2",
14769            cpp_lib_version = "5.14.0"
14770        ),
14771        feature = "ritual_rustdoc"
14772    ))]
14773    pub unsafe fn at(
14774        &self,
14775        i: ::std::os::raw::c_int,
14776    ) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
14777        let ffi_result = {
14778            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_at(
14779                self as *const crate::QVectorOfPropertyPair,
14780                i,
14781            )
14782        };
14783        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
14784            .expect("attempted to construct a null Ref")
14785    }
14786
14787    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
14788    ///
14789    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::back()```</span>.
14790    ///
14791    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
14792    #[inline(always)]
14793    #[cfg_attr(
14794        feature = "ritual_rustdoc_nightly",
14795        doc(cfg(any(
14796            cpp_lib_version = "5.13.0",
14797            cpp_lib_version = "5.11.3",
14798            cpp_lib_version = "5.12.2",
14799            cpp_lib_version = "5.14.0"
14800        )))
14801    )]
14802    #[cfg(any(
14803        any(
14804            cpp_lib_version = "5.13.0",
14805            cpp_lib_version = "5.11.3",
14806            cpp_lib_version = "5.12.2",
14807            cpp_lib_version = "5.14.0"
14808        ),
14809        feature = "ritual_rustdoc"
14810    ))]
14811    pub unsafe fn back_mut(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
14812        let ffi_result = {
14813            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_back(
14814                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
14815            )
14816        };
14817        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
14818    }
14819
14820    /// <p>This is an overloaded function.</p>
14821    ///
14822    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::back() const```</span>.
14823    ///
14824    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
14825    #[inline(always)]
14826    #[cfg_attr(
14827        feature = "ritual_rustdoc_nightly",
14828        doc(cfg(any(
14829            cpp_lib_version = "5.13.0",
14830            cpp_lib_version = "5.11.3",
14831            cpp_lib_version = "5.12.2",
14832            cpp_lib_version = "5.14.0"
14833        )))
14834    )]
14835    #[cfg(any(
14836        any(
14837            cpp_lib_version = "5.13.0",
14838            cpp_lib_version = "5.11.3",
14839            cpp_lib_version = "5.12.2",
14840            cpp_lib_version = "5.14.0"
14841        ),
14842        feature = "ritual_rustdoc"
14843    ))]
14844    pub unsafe fn back(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
14845        let ffi_result = {
14846            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_back1(
14847                self as *const crate::QVectorOfPropertyPair,
14848            )
14849        };
14850        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
14851            .expect("attempted to construct a null Ref")
14852    }
14853
14854    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
14855    ///
14856    /// Calls C++ function: <span style='color: green;'>```int QVector<QQmlContext::PropertyPair>::capacity() const```</span>.
14857    ///
14858    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
14859    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
14860    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
14861    #[inline(always)]
14862    #[cfg_attr(
14863        feature = "ritual_rustdoc_nightly",
14864        doc(cfg(any(
14865            cpp_lib_version = "5.13.0",
14866            cpp_lib_version = "5.11.3",
14867            cpp_lib_version = "5.12.2",
14868            cpp_lib_version = "5.14.0"
14869        )))
14870    )]
14871    #[cfg(any(
14872        any(
14873            cpp_lib_version = "5.13.0",
14874            cpp_lib_version = "5.11.3",
14875            cpp_lib_version = "5.12.2",
14876            cpp_lib_version = "5.14.0"
14877        ),
14878        feature = "ritual_rustdoc"
14879    ))]
14880    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
14881        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_capacity(
14882            self as *const crate::QVectorOfPropertyPair,
14883        )
14884    }
14885
14886    /// <p>Removes all the elements from the vector.</p>
14887    ///
14888    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::clear()```</span>.
14889    ///
14890    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
14891    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
14892    ///
14893    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
14894    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
14895    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
14896    ///
14897    /// </pre>
14898    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
14899    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
14900    #[inline(always)]
14901    #[cfg_attr(
14902        feature = "ritual_rustdoc_nightly",
14903        doc(cfg(any(
14904            cpp_lib_version = "5.13.0",
14905            cpp_lib_version = "5.11.3",
14906            cpp_lib_version = "5.12.2",
14907            cpp_lib_version = "5.14.0"
14908        )))
14909    )]
14910    #[cfg(any(
14911        any(
14912            cpp_lib_version = "5.13.0",
14913            cpp_lib_version = "5.11.3",
14914            cpp_lib_version = "5.12.2",
14915            cpp_lib_version = "5.14.0"
14916        ),
14917        feature = "ritual_rustdoc"
14918    ))]
14919    pub unsafe fn clear(&self) {
14920        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_clear(
14921            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
14922        )
14923    }
14924
14925    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
14926    ///
14927    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair* QVector<QQmlContext::PropertyPair>::constData() const```</span>.
14928    ///
14929    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
14930    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
14931    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
14932    #[inline(always)]
14933    #[cfg_attr(
14934        feature = "ritual_rustdoc_nightly",
14935        doc(cfg(any(
14936            cpp_lib_version = "5.13.0",
14937            cpp_lib_version = "5.11.3",
14938            cpp_lib_version = "5.12.2",
14939            cpp_lib_version = "5.14.0"
14940        )))
14941    )]
14942    #[cfg(any(
14943        any(
14944            cpp_lib_version = "5.13.0",
14945            cpp_lib_version = "5.11.3",
14946            cpp_lib_version = "5.12.2",
14947            cpp_lib_version = "5.14.0"
14948        ),
14949        feature = "ritual_rustdoc"
14950    ))]
14951    pub unsafe fn const_data(&self) -> ::cpp_core::Ptr<crate::q_qml_context::PropertyPair> {
14952        let ffi_result = {
14953            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_constData(
14954                self as *const crate::QVectorOfPropertyPair,
14955            )
14956        };
14957        ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
14958    }
14959
14960    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
14961    ///
14962    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::constFirst() const```</span>.
14963    ///
14964    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
14965    /// <p>This function was introduced in  Qt 5.6.</p>
14966    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
14967    #[inline(always)]
14968    #[cfg_attr(
14969        feature = "ritual_rustdoc_nightly",
14970        doc(cfg(any(
14971            cpp_lib_version = "5.13.0",
14972            cpp_lib_version = "5.11.3",
14973            cpp_lib_version = "5.12.2",
14974            cpp_lib_version = "5.14.0"
14975        )))
14976    )]
14977    #[cfg(any(
14978        any(
14979            cpp_lib_version = "5.13.0",
14980            cpp_lib_version = "5.11.3",
14981            cpp_lib_version = "5.12.2",
14982            cpp_lib_version = "5.14.0"
14983        ),
14984        feature = "ritual_rustdoc"
14985    ))]
14986    pub unsafe fn const_first(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
14987        let ffi_result = {
14988            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_constFirst(
14989                self as *const crate::QVectorOfPropertyPair,
14990            )
14991        };
14992        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
14993            .expect("attempted to construct a null Ref")
14994    }
14995
14996    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
14997    ///
14998    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::constLast() const```</span>.
14999    ///
15000    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
15001    /// <p>This function was introduced in  Qt 5.6.</p>
15002    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
15003    #[inline(always)]
15004    #[cfg_attr(
15005        feature = "ritual_rustdoc_nightly",
15006        doc(cfg(any(
15007            cpp_lib_version = "5.13.0",
15008            cpp_lib_version = "5.11.3",
15009            cpp_lib_version = "5.12.2",
15010            cpp_lib_version = "5.14.0"
15011        )))
15012    )]
15013    #[cfg(any(
15014        any(
15015            cpp_lib_version = "5.13.0",
15016            cpp_lib_version = "5.11.3",
15017            cpp_lib_version = "5.12.2",
15018            cpp_lib_version = "5.14.0"
15019        ),
15020        feature = "ritual_rustdoc"
15021    ))]
15022    pub unsafe fn const_last(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15023        let ffi_result = {
15024            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_constLast(
15025                self as *const crate::QVectorOfPropertyPair,
15026            )
15027        };
15028        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
15029            .expect("attempted to construct a null Ref")
15030    }
15031
15032    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
15033    ///
15034    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::operator=(const QVector<QQmlContext::PropertyPair>& v)```</span>.
15035    ///
15036    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
15037    #[inline(always)]
15038    #[cfg_attr(
15039        feature = "ritual_rustdoc_nightly",
15040        doc(cfg(any(
15041            cpp_lib_version = "5.13.0",
15042            cpp_lib_version = "5.11.3",
15043            cpp_lib_version = "5.12.2",
15044            cpp_lib_version = "5.14.0"
15045        )))
15046    )]
15047    #[cfg(any(
15048        any(
15049            cpp_lib_version = "5.13.0",
15050            cpp_lib_version = "5.11.3",
15051            cpp_lib_version = "5.12.2",
15052            cpp_lib_version = "5.14.0"
15053        ),
15054        feature = "ritual_rustdoc"
15055    ))]
15056    pub unsafe fn copy_from(
15057        &self,
15058        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
15059    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
15060        let ffi_result = {
15061            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator_(
15062                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15063                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(v)
15064                    .as_raw_ptr(),
15065            )
15066        };
15067        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15068    }
15069
15070    /// <p>This is an overloaded function.</p>
15071    ///
15072    /// Calls C++ function: <span style='color: green;'>```int QVector<QQmlContext::PropertyPair>::count() const```</span>.
15073    ///
15074    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
15075    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
15076    #[inline(always)]
15077    #[cfg_attr(
15078        feature = "ritual_rustdoc_nightly",
15079        doc(cfg(any(
15080            cpp_lib_version = "5.13.0",
15081            cpp_lib_version = "5.11.3",
15082            cpp_lib_version = "5.12.2",
15083            cpp_lib_version = "5.14.0"
15084        )))
15085    )]
15086    #[cfg(any(
15087        any(
15088            cpp_lib_version = "5.13.0",
15089            cpp_lib_version = "5.11.3",
15090            cpp_lib_version = "5.12.2",
15091            cpp_lib_version = "5.14.0"
15092        ),
15093        feature = "ritual_rustdoc"
15094    ))]
15095    pub unsafe fn count(&self) -> ::std::os::raw::c_int {
15096        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_count1(
15097            self as *const crate::QVectorOfPropertyPair,
15098        )
15099    }
15100
15101    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
15102    ///
15103    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair* QVector<QQmlContext::PropertyPair>::data()```</span>.
15104    ///
15105    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
15106    /// <p>Example:</p>
15107    /// <pre class="cpp">
15108    ///
15109    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
15110    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
15111    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
15112    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
15113    ///
15114    /// </pre>
15115    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
15116    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
15117    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
15118    #[inline(always)]
15119    #[cfg_attr(
15120        feature = "ritual_rustdoc_nightly",
15121        doc(cfg(any(
15122            cpp_lib_version = "5.13.0",
15123            cpp_lib_version = "5.11.3",
15124            cpp_lib_version = "5.12.2",
15125            cpp_lib_version = "5.14.0"
15126        )))
15127    )]
15128    #[cfg(any(
15129        any(
15130            cpp_lib_version = "5.13.0",
15131            cpp_lib_version = "5.11.3",
15132            cpp_lib_version = "5.12.2",
15133            cpp_lib_version = "5.14.0"
15134        ),
15135        feature = "ritual_rustdoc"
15136    ))]
15137    pub unsafe fn data_mut(&self) -> ::cpp_core::Ptr<crate::q_qml_context::PropertyPair> {
15138        let ffi_result = {
15139            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_data(
15140                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15141            )
15142        };
15143        ::cpp_core::Ptr::from_raw(ffi_result)
15144    }
15145
15146    /// <p>This is an overloaded function.</p>
15147    ///
15148    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair* QVector<QQmlContext::PropertyPair>::data() const```</span>.
15149    ///
15150    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
15151    #[inline(always)]
15152    #[cfg_attr(
15153        feature = "ritual_rustdoc_nightly",
15154        doc(cfg(any(
15155            cpp_lib_version = "5.13.0",
15156            cpp_lib_version = "5.11.3",
15157            cpp_lib_version = "5.12.2",
15158            cpp_lib_version = "5.14.0"
15159        )))
15160    )]
15161    #[cfg(any(
15162        any(
15163            cpp_lib_version = "5.13.0",
15164            cpp_lib_version = "5.11.3",
15165            cpp_lib_version = "5.12.2",
15166            cpp_lib_version = "5.14.0"
15167        ),
15168        feature = "ritual_rustdoc"
15169    ))]
15170    pub unsafe fn data(&self) -> ::cpp_core::Ptr<crate::q_qml_context::PropertyPair> {
15171        let ffi_result = {
15172            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_data1(
15173                self as *const crate::QVectorOfPropertyPair,
15174            )
15175        };
15176        ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
15177    }
15178
15179    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::detach()```</span>.
15180    #[inline(always)]
15181    #[cfg_attr(
15182        feature = "ritual_rustdoc_nightly",
15183        doc(cfg(any(
15184            cpp_lib_version = "5.13.0",
15185            cpp_lib_version = "5.11.3",
15186            cpp_lib_version = "5.12.2",
15187            cpp_lib_version = "5.14.0"
15188        )))
15189    )]
15190    #[cfg(any(
15191        any(
15192            cpp_lib_version = "5.13.0",
15193            cpp_lib_version = "5.11.3",
15194            cpp_lib_version = "5.12.2",
15195            cpp_lib_version = "5.14.0"
15196        ),
15197        feature = "ritual_rustdoc"
15198    ))]
15199    pub unsafe fn detach(&self) {
15200        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_detach(
15201            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15202        )
15203    }
15204
15205    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
15206    ///
15207    /// Calls C++ function: <span style='color: green;'>```bool QVector<QQmlContext::PropertyPair>::empty() const```</span>.
15208    ///
15209    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
15210    #[inline(always)]
15211    #[cfg_attr(
15212        feature = "ritual_rustdoc_nightly",
15213        doc(cfg(any(
15214            cpp_lib_version = "5.13.0",
15215            cpp_lib_version = "5.11.3",
15216            cpp_lib_version = "5.12.2",
15217            cpp_lib_version = "5.14.0"
15218        )))
15219    )]
15220    #[cfg(any(
15221        any(
15222            cpp_lib_version = "5.13.0",
15223            cpp_lib_version = "5.11.3",
15224            cpp_lib_version = "5.12.2",
15225            cpp_lib_version = "5.14.0"
15226        ),
15227        feature = "ritual_rustdoc"
15228    ))]
15229    pub unsafe fn empty(&self) -> bool {
15230        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_empty(
15231            self as *const crate::QVectorOfPropertyPair,
15232        )
15233    }
15234
15235    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
15236    ///
15237    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::fill(const QQmlContext::PropertyPair& t, int size = …)```</span>.
15238    ///
15239    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
15240    /// <p>Example:</p>
15241    /// <pre class="cpp">
15242    ///
15243    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
15244    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
15245    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
15246    ///
15247    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
15248    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
15249    ///
15250    /// </pre>
15251    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
15252    #[inline(always)]
15253    #[cfg_attr(
15254        feature = "ritual_rustdoc_nightly",
15255        doc(cfg(any(
15256            cpp_lib_version = "5.13.0",
15257            cpp_lib_version = "5.11.3",
15258            cpp_lib_version = "5.12.2",
15259            cpp_lib_version = "5.14.0"
15260        )))
15261    )]
15262    #[cfg(any(
15263        any(
15264            cpp_lib_version = "5.13.0",
15265            cpp_lib_version = "5.11.3",
15266            cpp_lib_version = "5.12.2",
15267            cpp_lib_version = "5.14.0"
15268        ),
15269        feature = "ritual_rustdoc"
15270    ))]
15271    pub unsafe fn fill_2a(
15272        &self,
15273        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
15274        size: ::std::os::raw::c_int,
15275    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
15276        let ffi_result = {
15277            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_fill(self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(t).as_raw_ptr(), size)
15278        };
15279        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15280    }
15281
15282    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
15283    ///
15284    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::fill(const QQmlContext::PropertyPair& t)```</span>.
15285    ///
15286    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
15287    /// <p>Example:</p>
15288    /// <pre class="cpp">
15289    ///
15290    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
15291    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
15292    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
15293    ///
15294    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
15295    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
15296    ///
15297    /// </pre>
15298    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
15299    #[inline(always)]
15300    #[cfg_attr(
15301        feature = "ritual_rustdoc_nightly",
15302        doc(cfg(any(
15303            cpp_lib_version = "5.13.0",
15304            cpp_lib_version = "5.11.3",
15305            cpp_lib_version = "5.12.2",
15306            cpp_lib_version = "5.14.0"
15307        )))
15308    )]
15309    #[cfg(any(
15310        any(
15311            cpp_lib_version = "5.13.0",
15312            cpp_lib_version = "5.11.3",
15313            cpp_lib_version = "5.12.2",
15314            cpp_lib_version = "5.14.0"
15315        ),
15316        feature = "ritual_rustdoc"
15317    ))]
15318    pub unsafe fn fill_1a(
15319        &self,
15320        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
15321    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
15322        let ffi_result = {
15323            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_fill1(self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(t).as_raw_ptr())
15324        };
15325        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15326    }
15327
15328    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
15329    ///
15330    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::first()```</span>.
15331    ///
15332    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
15333    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
15334    #[inline(always)]
15335    #[cfg_attr(
15336        feature = "ritual_rustdoc_nightly",
15337        doc(cfg(any(
15338            cpp_lib_version = "5.13.0",
15339            cpp_lib_version = "5.11.3",
15340            cpp_lib_version = "5.12.2",
15341            cpp_lib_version = "5.14.0"
15342        )))
15343    )]
15344    #[cfg(any(
15345        any(
15346            cpp_lib_version = "5.13.0",
15347            cpp_lib_version = "5.11.3",
15348            cpp_lib_version = "5.12.2",
15349            cpp_lib_version = "5.14.0"
15350        ),
15351        feature = "ritual_rustdoc"
15352    ))]
15353    pub unsafe fn first_mut(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15354        let ffi_result = {
15355            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_first(
15356                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15357            )
15358        };
15359        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15360    }
15361
15362    /// <p>This is an overloaded function.</p>
15363    ///
15364    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::first() const```</span>.
15365    ///
15366    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
15367    #[inline(always)]
15368    #[cfg_attr(
15369        feature = "ritual_rustdoc_nightly",
15370        doc(cfg(any(
15371            cpp_lib_version = "5.13.0",
15372            cpp_lib_version = "5.11.3",
15373            cpp_lib_version = "5.12.2",
15374            cpp_lib_version = "5.14.0"
15375        )))
15376    )]
15377    #[cfg(any(
15378        any(
15379            cpp_lib_version = "5.13.0",
15380            cpp_lib_version = "5.11.3",
15381            cpp_lib_version = "5.12.2",
15382            cpp_lib_version = "5.14.0"
15383        ),
15384        feature = "ritual_rustdoc"
15385    ))]
15386    pub unsafe fn first(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15387        let ffi_result = {
15388            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_first1(
15389                self as *const crate::QVectorOfPropertyPair,
15390            )
15391        };
15392        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
15393            .expect("attempted to construct a null Ref")
15394    }
15395
15396    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
15397    ///
15398    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::front()```</span>.
15399    ///
15400    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
15401    #[inline(always)]
15402    #[cfg_attr(
15403        feature = "ritual_rustdoc_nightly",
15404        doc(cfg(any(
15405            cpp_lib_version = "5.13.0",
15406            cpp_lib_version = "5.11.3",
15407            cpp_lib_version = "5.12.2",
15408            cpp_lib_version = "5.14.0"
15409        )))
15410    )]
15411    #[cfg(any(
15412        any(
15413            cpp_lib_version = "5.13.0",
15414            cpp_lib_version = "5.11.3",
15415            cpp_lib_version = "5.12.2",
15416            cpp_lib_version = "5.14.0"
15417        ),
15418        feature = "ritual_rustdoc"
15419    ))]
15420    pub unsafe fn front_mut(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15421        let ffi_result = {
15422            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_front(
15423                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15424            )
15425        };
15426        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15427    }
15428
15429    /// <p>This is an overloaded function.</p>
15430    ///
15431    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::front() const```</span>.
15432    ///
15433    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
15434    #[inline(always)]
15435    #[cfg_attr(
15436        feature = "ritual_rustdoc_nightly",
15437        doc(cfg(any(
15438            cpp_lib_version = "5.13.0",
15439            cpp_lib_version = "5.11.3",
15440            cpp_lib_version = "5.12.2",
15441            cpp_lib_version = "5.14.0"
15442        )))
15443    )]
15444    #[cfg(any(
15445        any(
15446            cpp_lib_version = "5.13.0",
15447            cpp_lib_version = "5.11.3",
15448            cpp_lib_version = "5.12.2",
15449            cpp_lib_version = "5.14.0"
15450        ),
15451        feature = "ritual_rustdoc"
15452    ))]
15453    pub unsafe fn front(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15454        let ffi_result = {
15455            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_front1(
15456                self as *const crate::QVectorOfPropertyPair,
15457            )
15458        };
15459        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
15460            .expect("attempted to construct a null Ref")
15461    }
15462
15463    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
15464    ///
15465    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::operator[](int i)```</span>.
15466    ///
15467    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
15468    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
15469    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
15470    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
15471    #[inline(always)]
15472    #[cfg_attr(
15473        feature = "ritual_rustdoc_nightly",
15474        doc(cfg(any(
15475            cpp_lib_version = "5.13.0",
15476            cpp_lib_version = "5.11.3",
15477            cpp_lib_version = "5.12.2",
15478            cpp_lib_version = "5.14.0"
15479        )))
15480    )]
15481    #[cfg(any(
15482        any(
15483            cpp_lib_version = "5.13.0",
15484            cpp_lib_version = "5.11.3",
15485            cpp_lib_version = "5.12.2",
15486            cpp_lib_version = "5.14.0"
15487        ),
15488        feature = "ritual_rustdoc"
15489    ))]
15490    pub unsafe fn index_mut(
15491        &self,
15492        i: ::std::os::raw::c_int,
15493    ) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15494        let ffi_result = {
15495            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator__2(
15496                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15497                i,
15498            )
15499        };
15500        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15501    }
15502
15503    /// <p>This is an overloaded function.</p>
15504    ///
15505    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::operator[](int i) const```</span>.
15506    ///
15507    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
15508    /// <p>Same as at(<i>i</i>).</p></div>
15509    #[inline(always)]
15510    #[cfg_attr(
15511        feature = "ritual_rustdoc_nightly",
15512        doc(cfg(any(
15513            cpp_lib_version = "5.13.0",
15514            cpp_lib_version = "5.11.3",
15515            cpp_lib_version = "5.12.2",
15516            cpp_lib_version = "5.14.0"
15517        )))
15518    )]
15519    #[cfg(any(
15520        any(
15521            cpp_lib_version = "5.13.0",
15522            cpp_lib_version = "5.11.3",
15523            cpp_lib_version = "5.12.2",
15524            cpp_lib_version = "5.14.0"
15525        ),
15526        feature = "ritual_rustdoc"
15527    ))]
15528    pub unsafe fn index(
15529        &self,
15530        i: ::std::os::raw::c_int,
15531    ) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15532        let ffi_result = {
15533            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator__3(
15534                self as *const crate::QVectorOfPropertyPair,
15535                i,
15536            )
15537        };
15538        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
15539            .expect("attempted to construct a null Ref")
15540    }
15541
15542    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
15543    ///
15544    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::insert(int i, const QQmlContext::PropertyPair& t)```</span>.
15545    ///
15546    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
15547    /// <p>Example:</p>
15548    /// <pre class="cpp">
15549    ///
15550    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
15551    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
15552    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
15553    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
15554    ///
15555    /// </pre>
15556    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
15557    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
15558    #[inline(always)]
15559    #[cfg_attr(
15560        feature = "ritual_rustdoc_nightly",
15561        doc(cfg(any(
15562            cpp_lib_version = "5.13.0",
15563            cpp_lib_version = "5.11.3",
15564            cpp_lib_version = "5.12.2",
15565            cpp_lib_version = "5.14.0"
15566        )))
15567    )]
15568    #[cfg(any(
15569        any(
15570            cpp_lib_version = "5.13.0",
15571            cpp_lib_version = "5.11.3",
15572            cpp_lib_version = "5.12.2",
15573            cpp_lib_version = "5.14.0"
15574        ),
15575        feature = "ritual_rustdoc"
15576    ))]
15577    pub unsafe fn insert_2a(
15578        &self,
15579        i: ::std::os::raw::c_int,
15580        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
15581    ) {
15582        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_insert(
15583            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15584            i,
15585            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
15586                t,
15587            )
15588            .as_raw_ptr(),
15589        )
15590    }
15591
15592    /// <p>This is an overloaded function.</p>
15593    ///
15594    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::insert(int i, int n, const QQmlContext::PropertyPair& t)```</span>.
15595    ///
15596    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
15597    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
15598    /// <p>Example:</p>
15599    /// <pre class="cpp">
15600    ///
15601    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
15602    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
15603    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
15604    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
15605    ///
15606    /// </pre></div>
15607    #[inline(always)]
15608    #[cfg_attr(
15609        feature = "ritual_rustdoc_nightly",
15610        doc(cfg(any(
15611            cpp_lib_version = "5.13.0",
15612            cpp_lib_version = "5.11.3",
15613            cpp_lib_version = "5.12.2",
15614            cpp_lib_version = "5.14.0"
15615        )))
15616    )]
15617    #[cfg(any(
15618        any(
15619            cpp_lib_version = "5.13.0",
15620            cpp_lib_version = "5.11.3",
15621            cpp_lib_version = "5.12.2",
15622            cpp_lib_version = "5.14.0"
15623        ),
15624        feature = "ritual_rustdoc"
15625    ))]
15626    pub unsafe fn insert_3a(
15627        &self,
15628        i: ::std::os::raw::c_int,
15629        n: ::std::os::raw::c_int,
15630        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
15631    ) {
15632        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_insert1(
15633            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15634            i,
15635            n,
15636            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
15637                t,
15638            )
15639            .as_raw_ptr(),
15640        )
15641    }
15642
15643    /// Calls C++ function: <span style='color: green;'>```bool QVector<QQmlContext::PropertyPair>::isDetached() const```</span>.
15644    #[inline(always)]
15645    #[cfg_attr(
15646        feature = "ritual_rustdoc_nightly",
15647        doc(cfg(any(
15648            cpp_lib_version = "5.13.0",
15649            cpp_lib_version = "5.11.3",
15650            cpp_lib_version = "5.12.2",
15651            cpp_lib_version = "5.14.0"
15652        )))
15653    )]
15654    #[cfg(any(
15655        any(
15656            cpp_lib_version = "5.13.0",
15657            cpp_lib_version = "5.11.3",
15658            cpp_lib_version = "5.12.2",
15659            cpp_lib_version = "5.14.0"
15660        ),
15661        feature = "ritual_rustdoc"
15662    ))]
15663    pub unsafe fn is_detached(&self) -> bool {
15664        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_isDetached(
15665            self as *const crate::QVectorOfPropertyPair,
15666        )
15667    }
15668
15669    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
15670    ///
15671    /// Calls C++ function: <span style='color: green;'>```bool QVector<QQmlContext::PropertyPair>::isEmpty() const```</span>.
15672    ///
15673    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
15674    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
15675    #[inline(always)]
15676    #[cfg_attr(
15677        feature = "ritual_rustdoc_nightly",
15678        doc(cfg(any(
15679            cpp_lib_version = "5.13.0",
15680            cpp_lib_version = "5.11.3",
15681            cpp_lib_version = "5.12.2",
15682            cpp_lib_version = "5.14.0"
15683        )))
15684    )]
15685    #[cfg(any(
15686        any(
15687            cpp_lib_version = "5.13.0",
15688            cpp_lib_version = "5.11.3",
15689            cpp_lib_version = "5.12.2",
15690            cpp_lib_version = "5.14.0"
15691        ),
15692        feature = "ritual_rustdoc"
15693    ))]
15694    pub unsafe fn is_empty(&self) -> bool {
15695        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_isEmpty(
15696            self as *const crate::QVectorOfPropertyPair,
15697        )
15698    }
15699
15700    /// Calls C++ function: <span style='color: green;'>```bool QVector<QQmlContext::PropertyPair>::isSharedWith(const QVector<QQmlContext::PropertyPair>& other) const```</span>.
15701    #[inline(always)]
15702    #[cfg_attr(
15703        feature = "ritual_rustdoc_nightly",
15704        doc(cfg(any(
15705            cpp_lib_version = "5.13.0",
15706            cpp_lib_version = "5.11.3",
15707            cpp_lib_version = "5.12.2",
15708            cpp_lib_version = "5.14.0"
15709        )))
15710    )]
15711    #[cfg(any(
15712        any(
15713            cpp_lib_version = "5.13.0",
15714            cpp_lib_version = "5.11.3",
15715            cpp_lib_version = "5.12.2",
15716            cpp_lib_version = "5.14.0"
15717        ),
15718        feature = "ritual_rustdoc"
15719    ))]
15720    pub unsafe fn is_shared_with(
15721        &self,
15722        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
15723    ) -> bool {
15724        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_isSharedWith(
15725            self as *const crate::QVectorOfPropertyPair,
15726            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(other)
15727                .as_raw_ptr(),
15728        )
15729    }
15730
15731    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
15732    ///
15733    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::last()```</span>.
15734    ///
15735    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
15736    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
15737    #[inline(always)]
15738    #[cfg_attr(
15739        feature = "ritual_rustdoc_nightly",
15740        doc(cfg(any(
15741            cpp_lib_version = "5.13.0",
15742            cpp_lib_version = "5.11.3",
15743            cpp_lib_version = "5.12.2",
15744            cpp_lib_version = "5.14.0"
15745        )))
15746    )]
15747    #[cfg(any(
15748        any(
15749            cpp_lib_version = "5.13.0",
15750            cpp_lib_version = "5.11.3",
15751            cpp_lib_version = "5.12.2",
15752            cpp_lib_version = "5.14.0"
15753        ),
15754        feature = "ritual_rustdoc"
15755    ))]
15756    pub unsafe fn last_mut(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15757        let ffi_result = {
15758            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_last(
15759                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15760            )
15761        };
15762        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
15763    }
15764
15765    /// <p>This is an overloaded function.</p>
15766    ///
15767    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair& QVector<QQmlContext::PropertyPair>::last() const```</span>.
15768    ///
15769    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
15770    #[inline(always)]
15771    #[cfg_attr(
15772        feature = "ritual_rustdoc_nightly",
15773        doc(cfg(any(
15774            cpp_lib_version = "5.13.0",
15775            cpp_lib_version = "5.11.3",
15776            cpp_lib_version = "5.12.2",
15777            cpp_lib_version = "5.14.0"
15778        )))
15779    )]
15780    #[cfg(any(
15781        any(
15782            cpp_lib_version = "5.13.0",
15783            cpp_lib_version = "5.11.3",
15784            cpp_lib_version = "5.12.2",
15785            cpp_lib_version = "5.14.0"
15786        ),
15787        feature = "ritual_rustdoc"
15788    ))]
15789    pub unsafe fn last(&self) -> ::cpp_core::Ref<crate::q_qml_context::PropertyPair> {
15790        let ffi_result = {
15791            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_last1(
15792                self as *const crate::QVectorOfPropertyPair,
15793            )
15794        };
15795        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
15796            .expect("attempted to construct a null Ref")
15797    }
15798
15799    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
15800    ///
15801    /// Calls C++ function: <span style='color: green;'>```int QVector<QQmlContext::PropertyPair>::length() const```</span>.
15802    ///
15803    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
15804    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
15805    /// <p>This function was introduced in  Qt 5.2.</p>
15806    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
15807    #[inline(always)]
15808    #[cfg_attr(
15809        feature = "ritual_rustdoc_nightly",
15810        doc(cfg(any(
15811            cpp_lib_version = "5.13.0",
15812            cpp_lib_version = "5.11.3",
15813            cpp_lib_version = "5.12.2",
15814            cpp_lib_version = "5.14.0"
15815        )))
15816    )]
15817    #[cfg(any(
15818        any(
15819            cpp_lib_version = "5.13.0",
15820            cpp_lib_version = "5.11.3",
15821            cpp_lib_version = "5.12.2",
15822            cpp_lib_version = "5.14.0"
15823        ),
15824        feature = "ritual_rustdoc"
15825    ))]
15826    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
15827        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_length(
15828            self as *const crate::QVectorOfPropertyPair,
15829        )
15830    }
15831
15832    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
15833    ///
15834    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair> QVector<QQmlContext::PropertyPair>::mid(int pos, int len = …) const```</span>.
15835    ///
15836    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
15837    #[inline(always)]
15838    #[cfg_attr(
15839        feature = "ritual_rustdoc_nightly",
15840        doc(cfg(any(
15841            cpp_lib_version = "5.13.0",
15842            cpp_lib_version = "5.11.3",
15843            cpp_lib_version = "5.12.2",
15844            cpp_lib_version = "5.14.0"
15845        )))
15846    )]
15847    #[cfg(any(
15848        any(
15849            cpp_lib_version = "5.13.0",
15850            cpp_lib_version = "5.11.3",
15851            cpp_lib_version = "5.12.2",
15852            cpp_lib_version = "5.14.0"
15853        ),
15854        feature = "ritual_rustdoc"
15855    ))]
15856    pub unsafe fn mid_2a(
15857        &self,
15858        pos: ::std::os::raw::c_int,
15859        len: ::std::os::raw::c_int,
15860    ) -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
15861        let ffi_result = {
15862            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_mid(
15863                self as *const crate::QVectorOfPropertyPair,
15864                pos,
15865                len,
15866            )
15867        };
15868        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15869    }
15870
15871    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
15872    ///
15873    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair> QVector<QQmlContext::PropertyPair>::mid(int pos) const```</span>.
15874    ///
15875    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
15876    #[inline(always)]
15877    #[cfg_attr(
15878        feature = "ritual_rustdoc_nightly",
15879        doc(cfg(any(
15880            cpp_lib_version = "5.13.0",
15881            cpp_lib_version = "5.11.3",
15882            cpp_lib_version = "5.12.2",
15883            cpp_lib_version = "5.14.0"
15884        )))
15885    )]
15886    #[cfg(any(
15887        any(
15888            cpp_lib_version = "5.13.0",
15889            cpp_lib_version = "5.11.3",
15890            cpp_lib_version = "5.12.2",
15891            cpp_lib_version = "5.14.0"
15892        ),
15893        feature = "ritual_rustdoc"
15894    ))]
15895    pub unsafe fn mid_1a(
15896        &self,
15897        pos: ::std::os::raw::c_int,
15898    ) -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
15899        let ffi_result = {
15900            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_mid1(
15901                self as *const crate::QVectorOfPropertyPair,
15902                pos,
15903            )
15904        };
15905        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15906    }
15907
15908    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
15909    ///
15910    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::move(int from, int to)```</span>.
15911    ///
15912    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
15913    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
15914    /// <p>This function was introduced in  Qt 5.6.</p>
15915    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
15916    #[inline(always)]
15917    #[cfg_attr(
15918        feature = "ritual_rustdoc_nightly",
15919        doc(cfg(any(
15920            cpp_lib_version = "5.13.0",
15921            cpp_lib_version = "5.11.3",
15922            cpp_lib_version = "5.12.2",
15923            cpp_lib_version = "5.14.0"
15924        )))
15925    )]
15926    #[cfg(any(
15927        any(
15928            cpp_lib_version = "5.13.0",
15929            cpp_lib_version = "5.11.3",
15930            cpp_lib_version = "5.12.2",
15931            cpp_lib_version = "5.14.0"
15932        ),
15933        feature = "ritual_rustdoc"
15934    ))]
15935    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
15936        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_move(
15937            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
15938            from,
15939            to,
15940        )
15941    }
15942
15943    /// <p>Constructs an empty vector.</p>
15944    ///
15945    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<QQmlContext::PropertyPair>::QVector()```</span>.
15946    ///
15947    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
15948    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
15949    #[inline(always)]
15950    #[cfg_attr(
15951        feature = "ritual_rustdoc_nightly",
15952        doc(cfg(any(
15953            cpp_lib_version = "5.13.0",
15954            cpp_lib_version = "5.11.3",
15955            cpp_lib_version = "5.12.2",
15956            cpp_lib_version = "5.14.0"
15957        )))
15958    )]
15959    #[cfg(any(
15960        any(
15961            cpp_lib_version = "5.13.0",
15962            cpp_lib_version = "5.11.3",
15963            cpp_lib_version = "5.12.2",
15964            cpp_lib_version = "5.14.0"
15965        ),
15966        feature = "ritual_rustdoc"
15967    ))]
15968    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
15969        let ffi_result =
15970            { crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_QVector() };
15971        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15972    }
15973
15974    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
15975    ///
15976    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<QQmlContext::PropertyPair>::QVector(int size)```</span>.
15977    ///
15978    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
15979    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
15980    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
15981    #[inline(always)]
15982    #[cfg_attr(
15983        feature = "ritual_rustdoc_nightly",
15984        doc(cfg(any(
15985            cpp_lib_version = "5.13.0",
15986            cpp_lib_version = "5.11.3",
15987            cpp_lib_version = "5.12.2",
15988            cpp_lib_version = "5.14.0"
15989        )))
15990    )]
15991    #[cfg(any(
15992        any(
15993            cpp_lib_version = "5.13.0",
15994            cpp_lib_version = "5.11.3",
15995            cpp_lib_version = "5.12.2",
15996            cpp_lib_version = "5.14.0"
15997        ),
15998        feature = "ritual_rustdoc"
15999    ))]
16000    pub unsafe fn new_1a(
16001        size: ::std::os::raw::c_int,
16002    ) -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
16003        let ffi_result =
16004            { crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_QVector1(size) };
16005        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16006    }
16007
16008    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
16009    ///
16010    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<QQmlContext::PropertyPair>::QVector(int size, const QQmlContext::PropertyPair& t)```</span>.
16011    ///
16012    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
16013    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
16014    #[inline(always)]
16015    #[cfg_attr(
16016        feature = "ritual_rustdoc_nightly",
16017        doc(cfg(any(
16018            cpp_lib_version = "5.13.0",
16019            cpp_lib_version = "5.11.3",
16020            cpp_lib_version = "5.12.2",
16021            cpp_lib_version = "5.14.0"
16022        )))
16023    )]
16024    #[cfg(any(
16025        any(
16026            cpp_lib_version = "5.13.0",
16027            cpp_lib_version = "5.11.3",
16028            cpp_lib_version = "5.12.2",
16029            cpp_lib_version = "5.14.0"
16030        ),
16031        feature = "ritual_rustdoc"
16032    ))]
16033    pub unsafe fn new_2a(
16034        size: ::std::os::raw::c_int,
16035        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
16036    ) -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
16037        let ffi_result = {
16038            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_QVector2(size, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(t).as_raw_ptr())
16039        };
16040        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16041    }
16042
16043    /// <p>Constructs a copy of <i>other</i>.</p>
16044    ///
16045    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<QQmlContext::PropertyPair>::QVector(const QVector<QQmlContext::PropertyPair>& v)```</span>.
16046    ///
16047    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
16048    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
16049    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
16050    #[inline(always)]
16051    #[cfg_attr(
16052        feature = "ritual_rustdoc_nightly",
16053        doc(cfg(any(
16054            cpp_lib_version = "5.13.0",
16055            cpp_lib_version = "5.11.3",
16056            cpp_lib_version = "5.12.2",
16057            cpp_lib_version = "5.14.0"
16058        )))
16059    )]
16060    #[cfg(any(
16061        any(
16062            cpp_lib_version = "5.13.0",
16063            cpp_lib_version = "5.11.3",
16064            cpp_lib_version = "5.12.2",
16065            cpp_lib_version = "5.14.0"
16066        ),
16067        feature = "ritual_rustdoc"
16068    ))]
16069    pub unsafe fn new_copy(
16070        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
16071    ) -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
16072        let ffi_result = {
16073            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_QVector3(
16074                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(v)
16075                    .as_raw_ptr(),
16076            )
16077        };
16078        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16079    }
16080
16081    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
16082    ///
16083    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::pop_back()```</span>.
16084    ///
16085    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
16086    #[inline(always)]
16087    #[cfg_attr(
16088        feature = "ritual_rustdoc_nightly",
16089        doc(cfg(any(
16090            cpp_lib_version = "5.13.0",
16091            cpp_lib_version = "5.11.3",
16092            cpp_lib_version = "5.12.2",
16093            cpp_lib_version = "5.14.0"
16094        )))
16095    )]
16096    #[cfg(any(
16097        any(
16098            cpp_lib_version = "5.13.0",
16099            cpp_lib_version = "5.11.3",
16100            cpp_lib_version = "5.12.2",
16101            cpp_lib_version = "5.14.0"
16102        ),
16103        feature = "ritual_rustdoc"
16104    ))]
16105    pub unsafe fn pop_back(&self) {
16106        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_pop_back(
16107            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16108        )
16109    }
16110
16111    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
16112    ///
16113    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::pop_front()```</span>.
16114    ///
16115    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
16116    #[inline(always)]
16117    #[cfg_attr(
16118        feature = "ritual_rustdoc_nightly",
16119        doc(cfg(any(
16120            cpp_lib_version = "5.13.0",
16121            cpp_lib_version = "5.11.3",
16122            cpp_lib_version = "5.12.2",
16123            cpp_lib_version = "5.14.0"
16124        )))
16125    )]
16126    #[cfg(any(
16127        any(
16128            cpp_lib_version = "5.13.0",
16129            cpp_lib_version = "5.11.3",
16130            cpp_lib_version = "5.12.2",
16131            cpp_lib_version = "5.14.0"
16132        ),
16133        feature = "ritual_rustdoc"
16134    ))]
16135    pub unsafe fn pop_front(&self) {
16136        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_pop_front(
16137            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16138        )
16139    }
16140
16141    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
16142    ///
16143    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::prepend(const QQmlContext::PropertyPair& t)```</span>.
16144    ///
16145    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
16146    /// <p>Example:</p>
16147    /// <pre class="cpp">
16148    ///
16149    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
16150    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
16151    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
16152    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
16153    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
16154    ///
16155    /// </pre>
16156    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
16157    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
16158    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
16159    #[inline(always)]
16160    #[cfg_attr(
16161        feature = "ritual_rustdoc_nightly",
16162        doc(cfg(any(
16163            cpp_lib_version = "5.13.0",
16164            cpp_lib_version = "5.11.3",
16165            cpp_lib_version = "5.12.2",
16166            cpp_lib_version = "5.14.0"
16167        )))
16168    )]
16169    #[cfg(any(
16170        any(
16171            cpp_lib_version = "5.13.0",
16172            cpp_lib_version = "5.11.3",
16173            cpp_lib_version = "5.12.2",
16174            cpp_lib_version = "5.14.0"
16175        ),
16176        feature = "ritual_rustdoc"
16177    ))]
16178    pub unsafe fn prepend(
16179        &self,
16180        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
16181    ) {
16182        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_prepend(
16183            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16184            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
16185                t,
16186            )
16187            .as_raw_ptr(),
16188        )
16189    }
16190
16191    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
16192    ///
16193    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::push_back(const QQmlContext::PropertyPair& t)```</span>.
16194    ///
16195    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
16196    #[inline(always)]
16197    #[cfg_attr(
16198        feature = "ritual_rustdoc_nightly",
16199        doc(cfg(any(
16200            cpp_lib_version = "5.13.0",
16201            cpp_lib_version = "5.11.3",
16202            cpp_lib_version = "5.12.2",
16203            cpp_lib_version = "5.14.0"
16204        )))
16205    )]
16206    #[cfg(any(
16207        any(
16208            cpp_lib_version = "5.13.0",
16209            cpp_lib_version = "5.11.3",
16210            cpp_lib_version = "5.12.2",
16211            cpp_lib_version = "5.14.0"
16212        ),
16213        feature = "ritual_rustdoc"
16214    ))]
16215    pub unsafe fn push_back(
16216        &self,
16217        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
16218    ) {
16219        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_push_back(
16220            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16221            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
16222                t,
16223            )
16224            .as_raw_ptr(),
16225        )
16226    }
16227
16228    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
16229    ///
16230    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::push_front(const QQmlContext::PropertyPair& t)```</span>.
16231    ///
16232    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
16233    #[inline(always)]
16234    #[cfg_attr(
16235        feature = "ritual_rustdoc_nightly",
16236        doc(cfg(any(
16237            cpp_lib_version = "5.13.0",
16238            cpp_lib_version = "5.11.3",
16239            cpp_lib_version = "5.12.2",
16240            cpp_lib_version = "5.14.0"
16241        )))
16242    )]
16243    #[cfg(any(
16244        any(
16245            cpp_lib_version = "5.13.0",
16246            cpp_lib_version = "5.11.3",
16247            cpp_lib_version = "5.12.2",
16248            cpp_lib_version = "5.14.0"
16249        ),
16250        feature = "ritual_rustdoc"
16251    ))]
16252    pub unsafe fn push_front(
16253        &self,
16254        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
16255    ) {
16256        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_push_front(
16257            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16258            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
16259                t,
16260            )
16261            .as_raw_ptr(),
16262        )
16263    }
16264
16265    /// <p>This is an overloaded function.</p>
16266    ///
16267    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::remove(int i)```</span>.
16268    ///
16269    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
16270    /// <p>Removes the element at index position <i>i</i>.</p>
16271    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
16272    #[inline(always)]
16273    #[cfg_attr(
16274        feature = "ritual_rustdoc_nightly",
16275        doc(cfg(any(
16276            cpp_lib_version = "5.13.0",
16277            cpp_lib_version = "5.11.3",
16278            cpp_lib_version = "5.12.2",
16279            cpp_lib_version = "5.14.0"
16280        )))
16281    )]
16282    #[cfg(any(
16283        any(
16284            cpp_lib_version = "5.13.0",
16285            cpp_lib_version = "5.11.3",
16286            cpp_lib_version = "5.12.2",
16287            cpp_lib_version = "5.14.0"
16288        ),
16289        feature = "ritual_rustdoc"
16290    ))]
16291    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
16292        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_remove(
16293            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16294            i,
16295        )
16296    }
16297
16298    /// <p>This is an overloaded function.</p>
16299    ///
16300    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::remove(int i, int n)```</span>.
16301    ///
16302    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
16303    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
16304    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
16305    #[inline(always)]
16306    #[cfg_attr(
16307        feature = "ritual_rustdoc_nightly",
16308        doc(cfg(any(
16309            cpp_lib_version = "5.13.0",
16310            cpp_lib_version = "5.11.3",
16311            cpp_lib_version = "5.12.2",
16312            cpp_lib_version = "5.14.0"
16313        )))
16314    )]
16315    #[cfg(any(
16316        any(
16317            cpp_lib_version = "5.13.0",
16318            cpp_lib_version = "5.11.3",
16319            cpp_lib_version = "5.12.2",
16320            cpp_lib_version = "5.14.0"
16321        ),
16322        feature = "ritual_rustdoc"
16323    ))]
16324    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
16325        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_remove1(
16326            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16327            i,
16328            n,
16329        )
16330    }
16331
16332    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
16333    ///
16334    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::removeAt(int i)```</span>.
16335    ///
16336    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
16337    /// <pre class="cpp">
16338    ///
16339    ///   remove(i);
16340    ///
16341    /// </pre>
16342    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
16343    /// <p>This function was introduced in  Qt 5.2.</p>
16344    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
16345    #[inline(always)]
16346    #[cfg_attr(
16347        feature = "ritual_rustdoc_nightly",
16348        doc(cfg(any(
16349            cpp_lib_version = "5.13.0",
16350            cpp_lib_version = "5.11.3",
16351            cpp_lib_version = "5.12.2",
16352            cpp_lib_version = "5.14.0"
16353        )))
16354    )]
16355    #[cfg(any(
16356        any(
16357            cpp_lib_version = "5.13.0",
16358            cpp_lib_version = "5.11.3",
16359            cpp_lib_version = "5.12.2",
16360            cpp_lib_version = "5.14.0"
16361        ),
16362        feature = "ritual_rustdoc"
16363    ))]
16364    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
16365        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_removeAt(
16366            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16367            i,
16368        )
16369    }
16370
16371    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16372    ///
16373    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::removeFirst()```</span>.
16374    ///
16375    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16376    /// <p>This function was introduced in  Qt 5.1.</p>
16377    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
16378    #[inline(always)]
16379    #[cfg_attr(
16380        feature = "ritual_rustdoc_nightly",
16381        doc(cfg(any(
16382            cpp_lib_version = "5.13.0",
16383            cpp_lib_version = "5.11.3",
16384            cpp_lib_version = "5.12.2",
16385            cpp_lib_version = "5.14.0"
16386        )))
16387    )]
16388    #[cfg(any(
16389        any(
16390            cpp_lib_version = "5.13.0",
16391            cpp_lib_version = "5.11.3",
16392            cpp_lib_version = "5.12.2",
16393            cpp_lib_version = "5.14.0"
16394        ),
16395        feature = "ritual_rustdoc"
16396    ))]
16397    pub unsafe fn remove_first(&self) {
16398        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_removeFirst(
16399            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16400        )
16401    }
16402
16403    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16404    ///
16405    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::removeLast()```</span>.
16406    ///
16407    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16408    /// <p>This function was introduced in  Qt 5.1.</p>
16409    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
16410    #[inline(always)]
16411    #[cfg_attr(
16412        feature = "ritual_rustdoc_nightly",
16413        doc(cfg(any(
16414            cpp_lib_version = "5.13.0",
16415            cpp_lib_version = "5.11.3",
16416            cpp_lib_version = "5.12.2",
16417            cpp_lib_version = "5.14.0"
16418        )))
16419    )]
16420    #[cfg(any(
16421        any(
16422            cpp_lib_version = "5.13.0",
16423            cpp_lib_version = "5.11.3",
16424            cpp_lib_version = "5.12.2",
16425            cpp_lib_version = "5.14.0"
16426        ),
16427        feature = "ritual_rustdoc"
16428    ))]
16429    pub unsafe fn remove_last(&self) {
16430        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_removeLast(
16431            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16432        )
16433    }
16434
16435    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
16436    ///
16437    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::replace(int i, const QQmlContext::PropertyPair& t)```</span>.
16438    ///
16439    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
16440    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
16441    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
16442    #[inline(always)]
16443    #[cfg_attr(
16444        feature = "ritual_rustdoc_nightly",
16445        doc(cfg(any(
16446            cpp_lib_version = "5.13.0",
16447            cpp_lib_version = "5.11.3",
16448            cpp_lib_version = "5.12.2",
16449            cpp_lib_version = "5.14.0"
16450        )))
16451    )]
16452    #[cfg(any(
16453        any(
16454            cpp_lib_version = "5.13.0",
16455            cpp_lib_version = "5.11.3",
16456            cpp_lib_version = "5.12.2",
16457            cpp_lib_version = "5.14.0"
16458        ),
16459        feature = "ritual_rustdoc"
16460    ))]
16461    pub unsafe fn replace(
16462        &self,
16463        i: ::std::os::raw::c_int,
16464        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
16465    ) {
16466        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_replace(
16467            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16468            i,
16469            ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(
16470                t,
16471            )
16472            .as_raw_ptr(),
16473        )
16474    }
16475
16476    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
16477    ///
16478    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::reserve(int size)```</span>.
16479    ///
16480    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
16481    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
16482    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
16483    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
16484    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
16485    #[inline(always)]
16486    #[cfg_attr(
16487        feature = "ritual_rustdoc_nightly",
16488        doc(cfg(any(
16489            cpp_lib_version = "5.13.0",
16490            cpp_lib_version = "5.11.3",
16491            cpp_lib_version = "5.12.2",
16492            cpp_lib_version = "5.14.0"
16493        )))
16494    )]
16495    #[cfg(any(
16496        any(
16497            cpp_lib_version = "5.13.0",
16498            cpp_lib_version = "5.11.3",
16499            cpp_lib_version = "5.12.2",
16500            cpp_lib_version = "5.14.0"
16501        ),
16502        feature = "ritual_rustdoc"
16503    ))]
16504    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
16505        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_reserve(
16506            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16507            size,
16508        )
16509    }
16510
16511    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
16512    ///
16513    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::resize(int size)```</span>.
16514    ///
16515    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
16516    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
16517    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
16518    #[inline(always)]
16519    #[cfg_attr(
16520        feature = "ritual_rustdoc_nightly",
16521        doc(cfg(any(
16522            cpp_lib_version = "5.13.0",
16523            cpp_lib_version = "5.11.3",
16524            cpp_lib_version = "5.12.2",
16525            cpp_lib_version = "5.14.0"
16526        )))
16527    )]
16528    #[cfg(any(
16529        any(
16530            cpp_lib_version = "5.13.0",
16531            cpp_lib_version = "5.11.3",
16532            cpp_lib_version = "5.12.2",
16533            cpp_lib_version = "5.14.0"
16534        ),
16535        feature = "ritual_rustdoc"
16536    ))]
16537    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
16538        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_resize(
16539            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16540            size,
16541        )
16542    }
16543
16544    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::setSharable(bool sharable)```</span>.
16545    #[inline(always)]
16546    #[cfg_attr(
16547        feature = "ritual_rustdoc_nightly",
16548        doc(cfg(any(
16549            cpp_lib_version = "5.13.0",
16550            cpp_lib_version = "5.11.3",
16551            cpp_lib_version = "5.12.2",
16552            cpp_lib_version = "5.14.0"
16553        )))
16554    )]
16555    #[cfg(any(
16556        any(
16557            cpp_lib_version = "5.13.0",
16558            cpp_lib_version = "5.11.3",
16559            cpp_lib_version = "5.12.2",
16560            cpp_lib_version = "5.14.0"
16561        ),
16562        feature = "ritual_rustdoc"
16563    ))]
16564    pub unsafe fn set_sharable(&self, sharable: bool) {
16565        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_setSharable(
16566            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16567            sharable,
16568        )
16569    }
16570
16571    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
16572    ///
16573    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::shrink_to_fit()```</span>.
16574    ///
16575    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
16576    /// <p>This function was introduced in  Qt 5.10.</p></div>
16577    #[inline(always)]
16578    #[cfg_attr(
16579        feature = "ritual_rustdoc_nightly",
16580        doc(cfg(any(
16581            cpp_lib_version = "5.13.0",
16582            cpp_lib_version = "5.11.3",
16583            cpp_lib_version = "5.12.2",
16584            cpp_lib_version = "5.14.0"
16585        )))
16586    )]
16587    #[cfg(any(
16588        any(
16589            cpp_lib_version = "5.13.0",
16590            cpp_lib_version = "5.11.3",
16591            cpp_lib_version = "5.12.2",
16592            cpp_lib_version = "5.14.0"
16593        ),
16594        feature = "ritual_rustdoc"
16595    ))]
16596    pub unsafe fn shrink_to_fit(&self) {
16597        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_shrink_to_fit(
16598            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16599        )
16600    }
16601
16602    /// <p>Returns the number of items in the vector.</p>
16603    ///
16604    /// Calls C++ function: <span style='color: green;'>```int QVector<QQmlContext::PropertyPair>::size() const```</span>.
16605    ///
16606    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
16607    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
16608    #[inline(always)]
16609    #[cfg_attr(
16610        feature = "ritual_rustdoc_nightly",
16611        doc(cfg(any(
16612            cpp_lib_version = "5.13.0",
16613            cpp_lib_version = "5.11.3",
16614            cpp_lib_version = "5.12.2",
16615            cpp_lib_version = "5.14.0"
16616        )))
16617    )]
16618    #[cfg(any(
16619        any(
16620            cpp_lib_version = "5.13.0",
16621            cpp_lib_version = "5.11.3",
16622            cpp_lib_version = "5.12.2",
16623            cpp_lib_version = "5.14.0"
16624        ),
16625        feature = "ritual_rustdoc"
16626    ))]
16627    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
16628        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_size(
16629            self as *const crate::QVectorOfPropertyPair,
16630        )
16631    }
16632
16633    /// <p>Releases any memory not required to store the items.</p>
16634    ///
16635    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::squeeze()```</span>.
16636    ///
16637    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
16638    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
16639    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
16640    #[inline(always)]
16641    #[cfg_attr(
16642        feature = "ritual_rustdoc_nightly",
16643        doc(cfg(any(
16644            cpp_lib_version = "5.13.0",
16645            cpp_lib_version = "5.11.3",
16646            cpp_lib_version = "5.12.2",
16647            cpp_lib_version = "5.14.0"
16648        )))
16649    )]
16650    #[cfg(any(
16651        any(
16652            cpp_lib_version = "5.13.0",
16653            cpp_lib_version = "5.11.3",
16654            cpp_lib_version = "5.12.2",
16655            cpp_lib_version = "5.14.0"
16656        ),
16657        feature = "ritual_rustdoc"
16658    ))]
16659    pub unsafe fn squeeze(&self) {
16660        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_squeeze(
16661            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16662        )
16663    }
16664
16665    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
16666    ///
16667    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::swap(QVector<QQmlContext::PropertyPair>& other)```</span>.
16668    ///
16669    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
16670    /// <p>This function was introduced in  Qt 4.8.</p></div>
16671    #[inline(always)]
16672    #[cfg_attr(
16673        feature = "ritual_rustdoc_nightly",
16674        doc(cfg(any(
16675            cpp_lib_version = "5.13.0",
16676            cpp_lib_version = "5.11.3",
16677            cpp_lib_version = "5.12.2",
16678            cpp_lib_version = "5.14.0"
16679        )))
16680    )]
16681    #[cfg(any(
16682        any(
16683            cpp_lib_version = "5.13.0",
16684            cpp_lib_version = "5.11.3",
16685            cpp_lib_version = "5.12.2",
16686            cpp_lib_version = "5.14.0"
16687        ),
16688        feature = "ritual_rustdoc"
16689    ))]
16690    pub unsafe fn swap(
16691        &self,
16692        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfPropertyPair>>,
16693    ) {
16694        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_swap(
16695            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16696            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfPropertyPair>>::cast_into(other)
16697                .as_raw_ptr() as *mut crate::QVectorOfPropertyPair,
16698        )
16699    }
16700
16701    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
16702    ///
16703    /// Calls C++ function: <span style='color: green;'>```void QVector<QQmlContext::PropertyPair>::swapItemsAt(int i, int j)```</span>.
16704    ///
16705    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
16706    /// <p>This function was introduced in  Qt 5.14.</p></div>
16707    #[inline(always)]
16708    #[cfg_attr(
16709        feature = "ritual_rustdoc_nightly",
16710        doc(cfg(cpp_lib_version = "5.14.0"))
16711    )]
16712    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
16713    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
16714        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_swapItemsAt(
16715            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16716            i,
16717            j,
16718        )
16719    }
16720
16721    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
16722    ///
16723    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair QVector<QQmlContext::PropertyPair>::takeAt(int i)```</span>.
16724    ///
16725    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
16726    /// <p>Equivalent to</p>
16727    /// <pre class="cpp">
16728    ///
16729    ///   T t <span class="operator">=</span> at(i);
16730    ///   remove(i);
16731    ///   <span class="keyword">return</span> t;
16732    ///
16733    /// </pre>
16734    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
16735    /// <p>This function was introduced in  Qt 5.2.</p>
16736    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
16737    #[inline(always)]
16738    #[cfg_attr(
16739        feature = "ritual_rustdoc_nightly",
16740        doc(cfg(any(
16741            cpp_lib_version = "5.13.0",
16742            cpp_lib_version = "5.11.3",
16743            cpp_lib_version = "5.12.2",
16744            cpp_lib_version = "5.14.0"
16745        )))
16746    )]
16747    #[cfg(any(
16748        any(
16749            cpp_lib_version = "5.13.0",
16750            cpp_lib_version = "5.11.3",
16751            cpp_lib_version = "5.12.2",
16752            cpp_lib_version = "5.14.0"
16753        ),
16754        feature = "ritual_rustdoc"
16755    ))]
16756    pub unsafe fn take_at(
16757        &self,
16758        i: ::std::os::raw::c_int,
16759    ) -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
16760        let ffi_result = {
16761            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_takeAt(
16762                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16763                i,
16764            )
16765        };
16766        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16767    }
16768
16769    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16770    ///
16771    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair QVector<QQmlContext::PropertyPair>::takeFirst()```</span>.
16772    ///
16773    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16774    /// <p>This function was introduced in  Qt 5.1.</p>
16775    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
16776    #[inline(always)]
16777    #[cfg_attr(
16778        feature = "ritual_rustdoc_nightly",
16779        doc(cfg(any(
16780            cpp_lib_version = "5.13.0",
16781            cpp_lib_version = "5.11.3",
16782            cpp_lib_version = "5.12.2",
16783            cpp_lib_version = "5.14.0"
16784        )))
16785    )]
16786    #[cfg(any(
16787        any(
16788            cpp_lib_version = "5.13.0",
16789            cpp_lib_version = "5.11.3",
16790            cpp_lib_version = "5.12.2",
16791            cpp_lib_version = "5.14.0"
16792        ),
16793        feature = "ritual_rustdoc"
16794    ))]
16795    pub unsafe fn take_first(&self) -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
16796        let ffi_result = {
16797            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_takeFirst(
16798                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16799            )
16800        };
16801        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16802    }
16803
16804    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16805    ///
16806    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair QVector<QQmlContext::PropertyPair>::takeLast()```</span>.
16807    ///
16808    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
16809    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
16810    /// <p>This function was introduced in  Qt 5.1.</p>
16811    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
16812    #[inline(always)]
16813    #[cfg_attr(
16814        feature = "ritual_rustdoc_nightly",
16815        doc(cfg(any(
16816            cpp_lib_version = "5.13.0",
16817            cpp_lib_version = "5.11.3",
16818            cpp_lib_version = "5.12.2",
16819            cpp_lib_version = "5.14.0"
16820        )))
16821    )]
16822    #[cfg(any(
16823        any(
16824            cpp_lib_version = "5.13.0",
16825            cpp_lib_version = "5.11.3",
16826            cpp_lib_version = "5.12.2",
16827            cpp_lib_version = "5.14.0"
16828        ),
16829        feature = "ritual_rustdoc"
16830    ))]
16831    pub unsafe fn take_last(&self) -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
16832        let ffi_result = {
16833            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_takeLast(
16834                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
16835            )
16836        };
16837        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16838    }
16839
16840    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
16841    ///
16842    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair QVector<QQmlContext::PropertyPair>::value(int i) const```</span>.
16843    ///
16844    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
16845    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
16846    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
16847    #[inline(always)]
16848    #[cfg_attr(
16849        feature = "ritual_rustdoc_nightly",
16850        doc(cfg(any(
16851            cpp_lib_version = "5.13.0",
16852            cpp_lib_version = "5.11.3",
16853            cpp_lib_version = "5.12.2",
16854            cpp_lib_version = "5.14.0"
16855        )))
16856    )]
16857    #[cfg(any(
16858        any(
16859            cpp_lib_version = "5.13.0",
16860            cpp_lib_version = "5.11.3",
16861            cpp_lib_version = "5.12.2",
16862            cpp_lib_version = "5.14.0"
16863        ),
16864        feature = "ritual_rustdoc"
16865    ))]
16866    pub unsafe fn value_1a(
16867        &self,
16868        i: ::std::os::raw::c_int,
16869    ) -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
16870        let ffi_result = {
16871            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_value(
16872                self as *const crate::QVectorOfPropertyPair,
16873                i,
16874            )
16875        };
16876        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16877    }
16878
16879    /// <p>This is an overloaded function.</p>
16880    ///
16881    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair QVector<QQmlContext::PropertyPair>::value(int i, const QQmlContext::PropertyPair& defaultValue) const```</span>.
16882    ///
16883    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
16884    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
16885    #[inline(always)]
16886    #[cfg_attr(
16887        feature = "ritual_rustdoc_nightly",
16888        doc(cfg(any(
16889            cpp_lib_version = "5.13.0",
16890            cpp_lib_version = "5.11.3",
16891            cpp_lib_version = "5.12.2",
16892            cpp_lib_version = "5.14.0"
16893        )))
16894    )]
16895    #[cfg(any(
16896        any(
16897            cpp_lib_version = "5.13.0",
16898            cpp_lib_version = "5.11.3",
16899            cpp_lib_version = "5.12.2",
16900            cpp_lib_version = "5.14.0"
16901        ),
16902        feature = "ritual_rustdoc"
16903    ))]
16904    pub unsafe fn value_2a(
16905        &self,
16906        i: ::std::os::raw::c_int,
16907        default_value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>,
16908    ) -> ::cpp_core::CppBox<crate::q_qml_context::PropertyPair> {
16909        let ffi_result = {
16910            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_value1(self as *const crate::QVectorOfPropertyPair, i, ::cpp_core::CastInto::<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>::cast_into(default_value).as_raw_ptr())
16911        };
16912        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16913    }
16914}
16915
16916/// <p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
16917///
16918/// C++ class: <span style='color: green;'>```QPointer<QObject>```</span>.
16919///
16920/// <a href="http://doc.qt.io/qt-5/qpointer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
16921/// <p>A guarded pointer, <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;T&gt;, behaves like a normal C++ pointer <code>T *</code>, except that it is automatically set to 0 when the referenced object is destroyed (unlike normal C++ pointers, which become "dangling pointers" in such cases). <code>T</code> must be a subclass of <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
16922/// <p>Guarded pointers are useful whenever you need to store a pointer to a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> that is owned by someone else, and therefore might be destroyed while you still hold a reference to it. You can safely test the pointer for validity.</p>
16923/// <p>Note that Qt 5 introduces a slight change in behavior when using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>.</p>
16924/// <ul>
16925/// <li>When using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> on a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> (or a subclass of <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>), previously the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> would be cleared by the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor. Now, the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> is cleared by the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> destructor (since this is when <a href="http://doc.qt.io/qt-5/qweakpointer.html">QWeakPointer</a> objects are cleared). Any QPointers tracking a widget will <b>NOT</b> be cleared before the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor destroys the children for the widget being tracked.</li>
16926/// </ul>
16927/// <p>Qt also provides <a href="http://doc.qt.io/qt-5/qsharedpointer.html">QSharedPointer</a>, an implementation of a reference-counted shared pointer object, which can be used to maintain a collection of references to an individual pointer.</p>
16928/// <p>Example:</p>
16929/// <pre class="cpp">
16930///
16931/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qpointer.html#QPointer">QPointer</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span><span class="operator">&gt;</span> label <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span>;
16932/// &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>setText(<span class="string">"&amp;Status:"</span>);
16933/// &#32;     ...
16934/// &#32;     <span class="keyword">if</span> (label)
16935/// &#32;   &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>show();
16936///
16937/// </pre>
16938/// <p>If the <a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a> is deleted in the meantime, the <code>label</code> variable will hold 0 instead of an invalid address, and the last line will never be executed.</p>
16939/// <p>The functions and operators available with a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> are the same as those available with a normal unguarded pointer, except the pointer arithmetic operators (<code>+</code>, <code>-</code>, <code>++</code>, and <code>--</code>), which are normally used only with arrays of objects.</p>
16940/// <p>Use QPointers like normal pointers and you will not need to read this class documentation.</p>
16941/// <p>For creating guarded pointers, you can construct or assign to them from a T* or from another guarded pointer of the same type. You can compare them with each other using operator==() and operator!=(), or test for 0 with <a href="http://doc.qt.io/qt-5/qpointer.html#isNull">isNull</a>(). You can dereference them using either the <code>*x</code> or the <code>x-&gt;member</code> notation.</p>
16942/// <p>A guarded pointer will automatically cast to a <code>T</code> *, so you can freely mix guarded and unguarded pointers. This means that if you have a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>&gt;, you can pass it to a function that requires a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. For this reason, it is of little value to declare functions to take a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> as a parameter; just use normal pointers. Use a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> when you are storing a pointer over time.</p>
16943/// <p>Note that class <code>T</code> must inherit <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, or a compilation or link error will result.</p></div>
16944#[repr(C)]
16945pub struct QPointerOfQObject {
16946    _unused: u8,
16947}
16948impl QPointerOfQObject {
16949    /// <p>Clears this <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> object.</p>
16950    ///
16951    /// Calls C++ function: <span style='color: green;'>```void QPointer<QObject>::clear()```</span>.
16952    ///
16953    /// <a href="http://doc.qt.io/qt-5/qpointer.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clears this <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> object.</p>
16954    /// <p>This function was introduced in  Qt 5.0.</p>
16955    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qpointer.html#isNull">isNull</a>().</p></div>
16956    #[inline(always)]
16957    pub unsafe fn clear(&self) {
16958        crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_clear(
16959            self as *const crate::QPointerOfQObject as *mut crate::QPointerOfQObject,
16960        )
16961    }
16962
16963    /// <p>Assignment operator. This guarded pointer will now point to the same object that <i>p</i> points to.</p>
16964    ///
16965    /// Calls C++ function: <span style='color: green;'>```QPointer<QObject>& QPointer<QObject>::operator=(QObject* p)```</span>.
16966    ///
16967    /// <a href="http://doc.qt.io/qt-5/qpointer.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assignment operator. This guarded pointer will now point to the same object that <i>p</i> points to.</p></div>
16968    #[inline(always)]
16969    pub unsafe fn copy_from_q_object(
16970        &self,
16971        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
16972    ) -> ::cpp_core::Ref<crate::QPointerOfQObject> {
16973        let ffi_result = {
16974            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_operator_(
16975                self as *const crate::QPointerOfQObject as *mut crate::QPointerOfQObject,
16976                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(p)
16977                    .as_raw_ptr() as *mut ::qt_core::QObject,
16978            )
16979        };
16980        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
16981    }
16982
16983    /// <p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
16984    ///
16985    /// Calls C++ function: <span style='color: green;'>```QPointer<QObject>& QPointer<QObject>::operator=(const QPointer<QObject>& other)```</span>.
16986    ///
16987    /// <a href="http://doc.qt.io/qt-5/qpointer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
16988    /// <p>A guarded pointer, <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;T&gt;, behaves like a normal C++ pointer <code>T *</code>, except that it is automatically set to 0 when the referenced object is destroyed (unlike normal C++ pointers, which become "dangling pointers" in such cases). <code>T</code> must be a subclass of <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
16989    /// <p>Guarded pointers are useful whenever you need to store a pointer to a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> that is owned by someone else, and therefore might be destroyed while you still hold a reference to it. You can safely test the pointer for validity.</p>
16990    /// <p>Note that Qt 5 introduces a slight change in behavior when using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>.</p>
16991    /// <ul>
16992    /// <li>When using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> on a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> (or a subclass of <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>), previously the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> would be cleared by the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor. Now, the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> is cleared by the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> destructor (since this is when <a href="http://doc.qt.io/qt-5/qweakpointer.html">QWeakPointer</a> objects are cleared). Any QPointers tracking a widget will <b>NOT</b> be cleared before the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor destroys the children for the widget being tracked.</li>
16993    /// </ul>
16994    /// <p>Qt also provides <a href="http://doc.qt.io/qt-5/qsharedpointer.html">QSharedPointer</a>, an implementation of a reference-counted shared pointer object, which can be used to maintain a collection of references to an individual pointer.</p>
16995    /// <p>Example:</p>
16996    /// <pre class="cpp">
16997    ///
16998    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qpointer.html#QPointer">QPointer</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span><span class="operator">&gt;</span> label <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span>;
16999    /// &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>setText(<span class="string">"&amp;Status:"</span>);
17000    /// &#32;     ...
17001    /// &#32;     <span class="keyword">if</span> (label)
17002    /// &#32;   &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>show();
17003    ///
17004    /// </pre>
17005    /// <p>If the <a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a> is deleted in the meantime, the <code>label</code> variable will hold 0 instead of an invalid address, and the last line will never be executed.</p>
17006    /// <p>The functions and operators available with a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> are the same as those available with a normal unguarded pointer, except the pointer arithmetic operators (<code>+</code>, <code>-</code>, <code>++</code>, and <code>--</code>), which are normally used only with arrays of objects.</p>
17007    /// <p>Use QPointers like normal pointers and you will not need to read this class documentation.</p>
17008    /// <p>For creating guarded pointers, you can construct or assign to them from a T* or from another guarded pointer of the same type. You can compare them with each other using operator==() and operator!=(), or test for 0 with <a href="http://doc.qt.io/qt-5/qpointer.html#isNull">isNull</a>(). You can dereference them using either the <code>*x</code> or the <code>x-&gt;member</code> notation.</p>
17009    /// <p>A guarded pointer will automatically cast to a <code>T</code> *, so you can freely mix guarded and unguarded pointers. This means that if you have a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>&gt;, you can pass it to a function that requires a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. For this reason, it is of little value to declare functions to take a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> as a parameter; just use normal pointers. Use a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> when you are storing a pointer over time.</p>
17010    /// <p>Note that class <code>T</code> must inherit <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, or a compilation or link error will result.</p></div>
17011    #[inline(always)]
17012    pub unsafe fn copy_from_q_pointer_of_q_object(
17013        &self,
17014        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QPointerOfQObject>>,
17015    ) -> ::cpp_core::Ref<crate::QPointerOfQObject> {
17016        let ffi_result = {
17017            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_operator_2(
17018                self as *const crate::QPointerOfQObject as *mut crate::QPointerOfQObject,
17019                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QPointerOfQObject>>::cast_into(other)
17020                    .as_raw_ptr(),
17021            )
17022        };
17023        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
17024    }
17025
17026    /// <p>Returns the pointer to the object being guarded.</p>
17027    ///
17028    /// Calls C++ function: <span style='color: green;'>```QObject* QPointer<QObject>::data() const```</span>.
17029    ///
17030    /// <a href="http://doc.qt.io/qt-5/qpointer.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the pointer to the object being guarded.</p>
17031    /// <p>This function was introduced in  Qt 4.4.</p></div>
17032    #[inline(always)]
17033    pub unsafe fn data(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
17034        let ffi_result = {
17035            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_data(
17036                self as *const crate::QPointerOfQObject,
17037            )
17038        };
17039        ::qt_core::QPtr::from_raw(ffi_result)
17040    }
17041
17042    /// <p>Returns <code>true</code> if <i>c1</i> and <i>c2</i> are the same Unicode character; otherwise returns <code>false</code>.</p>
17043    ///
17044    /// Calls C++ function: <span style='color: green;'>```bool operator==(const QPointer<QObject>& p, QObject* o)```</span>.
17045    ///
17046    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-eq-eq">C++ documentation</a> for <span style='color: green;'>```bool operator==(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>c1</i> and <i>c2</i> are the same Unicode character; otherwise returns <code>false</code>.</p></div>
17047    #[inline(always)]
17048    pub unsafe fn eq(
17049        &self,
17050        o: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
17051    ) -> bool {
17052        crate::__ffi::ctr_qt_qml_ffi_operator__47(
17053            self as *const crate::QPointerOfQObject,
17054            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(o).as_raw_ptr()
17055                as *mut ::qt_core::QObject,
17056        )
17057    }
17058
17059    /// <p>Dereference operator; implements pointer semantics. Just use this operator as you would with a normal C++ pointer.</p>
17060    ///
17061    /// Calls C++ function: <span style='color: green;'>```QObject& QPointer<QObject>::operator*() const```</span>.
17062    ///
17063    /// <a href="http://doc.qt.io/qt-5/qpointer.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Dereference operator; implements pointer semantics. Just use this operator as you would with a normal C++ pointer.</p></div>
17064    #[inline(always)]
17065    pub unsafe fn indirection(&self) -> ::cpp_core::Ref<::qt_core::QObject> {
17066        let ffi_result = {
17067            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_operator_1(
17068                self as *const crate::QPointerOfQObject,
17069            )
17070        };
17071        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
17072    }
17073
17074    /// <p>Returns <code>true</code> if the referenced object has been destroyed or if there is no referenced object; otherwise returns <code>false</code>.</p>
17075    ///
17076    /// Calls C++ function: <span style='color: green;'>```bool QPointer<QObject>::isNull() const```</span>.
17077    ///
17078    /// <a href="http://doc.qt.io/qt-5/qpointer.html#isNull">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the referenced object has been destroyed or if there is no referenced object; otherwise returns <code>false</code>.</p></div>
17079    #[inline(always)]
17080    pub unsafe fn is_null(&self) -> bool {
17081        crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_isNull(
17082            self as *const crate::QPointerOfQObject,
17083        )
17084    }
17085
17086    /// <p>Constructs a 0 guarded pointer.</p>
17087    ///
17088    /// Calls C++ function: <span style='color: green;'>```[constructor] void QPointer<QObject>::QPointer()```</span>.
17089    ///
17090    /// <a href="http://doc.qt.io/qt-5/qpointer.html#QPointer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a 0 guarded pointer.</p>
17091    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qpointer.html#isNull">isNull</a>().</p></div>
17092    #[inline(always)]
17093    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QPointerOfQObject> {
17094        let ffi_result = { crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_QPointer() };
17095        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17096    }
17097
17098    /// <p>Constructs a guarded pointer that points to the same object that <i>p</i> points to.</p>
17099    ///
17100    /// Calls C++ function: <span style='color: green;'>```[constructor] void QPointer<QObject>::QPointer(QObject* p)```</span>.
17101    ///
17102    /// <a href="http://doc.qt.io/qt-5/qpointer.html#QPointer-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a guarded pointer that points to the same object that <i>p</i> points to.</p></div>
17103    #[inline(always)]
17104    pub unsafe fn new_1a(
17105        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
17106    ) -> ::cpp_core::CppBox<crate::QPointerOfQObject> {
17107        let ffi_result = {
17108            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_QPointer1(
17109                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(p)
17110                    .as_raw_ptr() as *mut ::qt_core::QObject,
17111            )
17112        };
17113        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17114    }
17115
17116    /// <p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
17117    ///
17118    /// Calls C++ function: <span style='color: green;'>```[constructor] void QPointer<QObject>::QPointer(const QPointer<QObject>& other)```</span>.
17119    ///
17120    /// <a href="http://doc.qt.io/qt-5/qpointer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
17121    /// <p>A guarded pointer, <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;T&gt;, behaves like a normal C++ pointer <code>T *</code>, except that it is automatically set to 0 when the referenced object is destroyed (unlike normal C++ pointers, which become "dangling pointers" in such cases). <code>T</code> must be a subclass of <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
17122    /// <p>Guarded pointers are useful whenever you need to store a pointer to a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> that is owned by someone else, and therefore might be destroyed while you still hold a reference to it. You can safely test the pointer for validity.</p>
17123    /// <p>Note that Qt 5 introduces a slight change in behavior when using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>.</p>
17124    /// <ul>
17125    /// <li>When using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> on a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> (or a subclass of <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>), previously the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> would be cleared by the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor. Now, the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> is cleared by the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> destructor (since this is when <a href="http://doc.qt.io/qt-5/qweakpointer.html">QWeakPointer</a> objects are cleared). Any QPointers tracking a widget will <b>NOT</b> be cleared before the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor destroys the children for the widget being tracked.</li>
17126    /// </ul>
17127    /// <p>Qt also provides <a href="http://doc.qt.io/qt-5/qsharedpointer.html">QSharedPointer</a>, an implementation of a reference-counted shared pointer object, which can be used to maintain a collection of references to an individual pointer.</p>
17128    /// <p>Example:</p>
17129    /// <pre class="cpp">
17130    ///
17131    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qpointer.html#QPointer">QPointer</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span><span class="operator">&gt;</span> label <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span>;
17132    /// &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>setText(<span class="string">"&amp;Status:"</span>);
17133    /// &#32;     ...
17134    /// &#32;     <span class="keyword">if</span> (label)
17135    /// &#32;   &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>show();
17136    ///
17137    /// </pre>
17138    /// <p>If the <a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a> is deleted in the meantime, the <code>label</code> variable will hold 0 instead of an invalid address, and the last line will never be executed.</p>
17139    /// <p>The functions and operators available with a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> are the same as those available with a normal unguarded pointer, except the pointer arithmetic operators (<code>+</code>, <code>-</code>, <code>++</code>, and <code>--</code>), which are normally used only with arrays of objects.</p>
17140    /// <p>Use QPointers like normal pointers and you will not need to read this class documentation.</p>
17141    /// <p>For creating guarded pointers, you can construct or assign to them from a T* or from another guarded pointer of the same type. You can compare them with each other using operator==() and operator!=(), or test for 0 with <a href="http://doc.qt.io/qt-5/qpointer.html#isNull">isNull</a>(). You can dereference them using either the <code>*x</code> or the <code>x-&gt;member</code> notation.</p>
17142    /// <p>A guarded pointer will automatically cast to a <code>T</code> *, so you can freely mix guarded and unguarded pointers. This means that if you have a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>&gt;, you can pass it to a function that requires a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. For this reason, it is of little value to declare functions to take a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> as a parameter; just use normal pointers. Use a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> when you are storing a pointer over time.</p>
17143    /// <p>Note that class <code>T</code> must inherit <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, or a compilation or link error will result.</p></div>
17144    #[inline(always)]
17145    pub unsafe fn new_copy(
17146        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QPointerOfQObject>>,
17147    ) -> ::cpp_core::CppBox<crate::QPointerOfQObject> {
17148        let ffi_result = {
17149            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_QPointer2(
17150                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QPointerOfQObject>>::cast_into(other)
17151                    .as_raw_ptr(),
17152            )
17153        };
17154        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17155    }
17156
17157    /// <p>Overloaded arrow operator; implements pointer semantics. Just use this operator as you would with a normal C++ pointer.</p>
17158    ///
17159    /// Calls C++ function: <span style='color: green;'>```QObject* QPointer<QObject>::operator->() const```</span>.
17160    ///
17161    /// <a href="http://doc.qt.io/qt-5/qpointer.html#operator--gt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Overloaded arrow operator; implements pointer semantics. Just use this operator as you would with a normal C++ pointer.</p></div>
17162    #[inline(always)]
17163    pub unsafe fn struct_deref(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
17164        let ffi_result = {
17165            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_operator__(
17166                self as *const crate::QPointerOfQObject,
17167            )
17168        };
17169        ::qt_core::QPtr::from_raw(ffi_result)
17170    }
17171
17172    /// <p>Swaps the contents of this <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> with the contents of <i>other</i>. This operation is very fast and never fails.</p>
17173    ///
17174    /// Calls C++ function: <span style='color: green;'>```void QPointer<QObject>::swap(QPointer<QObject>& other)```</span>.
17175    ///
17176    /// <a href="http://doc.qt.io/qt-5/qpointer.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps the contents of this <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> with the contents of <i>other</i>. This operation is very fast and never fails.</p>
17177    /// <p>This function was introduced in  Qt 5.6.</p></div>
17178    #[inline(always)]
17179    pub unsafe fn swap(
17180        &self,
17181        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QPointerOfQObject>>,
17182    ) {
17183        crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_swap(
17184            self as *const crate::QPointerOfQObject as *mut crate::QPointerOfQObject,
17185            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QPointerOfQObject>>::cast_into(other)
17186                .as_raw_ptr() as *mut crate::QPointerOfQObject,
17187        )
17188    }
17189
17190    /// Calls C++ function: <span style='color: green;'>```QObject* QPointer<QObject>::operator QObject*() const```</span>.
17191    #[inline(always)]
17192    pub unsafe fn to_q_ptr_q_object(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
17193        let ffi_result = {
17194            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_operator_QObject_(
17195                self as *const crate::QPointerOfQObject,
17196            )
17197        };
17198        ::qt_core::QPtr::from_raw(ffi_result)
17199    }
17200}
17201
17202impl ::qt_core::AsReceiver for crate::SignalOfQStringQVariant {
17203    type Arguments = (*const ::qt_core::QString, *const ::qt_core::QVariant);
17204    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
17205        unsafe {
17206            ::qt_core::Receiver::new(
17207                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17208                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17209                    b"2emit_(QString const &,QVariant const &)\0",
17210                ),
17211            )
17212        }
17213    }
17214}
17215
17216impl crate::SignalOfQStringQVariant {
17217    /// Connects this signal to another signal or slot.
17218    ///
17219    /// This is a shortcut for `self.signal().connect(receiver)`.
17220
17221    pub unsafe fn connect_with_type<R>(
17222        &self,
17223        connection_type: ::qt_core::ConnectionType,
17224        receiver: R,
17225    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17226    where
17227        R: ::qt_core::AsReceiver,
17228        (*const ::qt_core::QString, *const ::qt_core::QVariant):
17229            ::qt_core::ArgumentsCompatible<R::Arguments>,
17230    {
17231        self.signal().connect_with_type(connection_type, receiver)
17232    }
17233
17234    /// Connects this signal to another signal or slot, using auto connection type.
17235    ///
17236    /// This is a shortcut for `self.signal().connect(receiver)`.
17237
17238    pub unsafe fn connect<R>(
17239        &self,
17240        receiver: R,
17241    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17242    where
17243        R: ::qt_core::AsReceiver,
17244        (*const ::qt_core::QString, *const ::qt_core::QVariant):
17245            ::qt_core::ArgumentsCompatible<R::Arguments>,
17246    {
17247        self.signal().connect(receiver)
17248    }
17249}
17250
17251/// Emits a Qt signal with arguments `*const ::qt_core::QString,*const ::qt_core::QVariant`.
17252///
17253/// Corresponding C++ argument types: (<span style='color: green;'>```const QString&, const QVariant&```</span>).
17254///
17255/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
17256#[repr(C)]
17257pub struct SignalOfQStringQVariant {
17258    _unused: u8,
17259}
17260impl SignalOfQStringQVariant {
17261    /// Returns a `Signal` object representing the signal.
17262    ///
17263    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
17264    #[inline(always)]
17265    pub fn signal(
17266        &self,
17267    ) -> ::qt_core::Signal<(*const ::qt_core::QString, *const ::qt_core::QVariant)> {
17268        unsafe {
17269            ::qt_core::Signal::new(
17270                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17271                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17272                    b"2emit_(QString const &,QVariant const &)\0",
17273                ),
17274            )
17275        }
17276    }
17277
17278    /// Emits the signal.
17279    #[inline(always)]
17280    pub unsafe fn emit(
17281        &self,
17282        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
17283        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
17284    ) {
17285        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_emit_(self as *const crate::SignalOfQStringQVariant as *mut crate::SignalOfQStringQVariant, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg0).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg1).as_raw_ptr())
17286    }
17287
17288    #[inline(always)]
17289    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
17290        let ffi_result = {
17291            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_metaObject(self as *const crate::SignalOfQStringQVariant)
17292        };
17293        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17294    }
17295
17296    /// Creates a new object.
17297    #[inline(always)]
17298    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQStringQVariant> {
17299        let ffi_result = {
17300            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref()
17301        };
17302        ::qt_core::QBox::from_raw(ffi_result)
17303    }
17304
17305    #[inline(always)]
17306    pub unsafe fn qt_metacall(
17307        &self,
17308        arg1: ::qt_core::q_meta_object::Call,
17309        arg2: ::std::os::raw::c_int,
17310        arg3: *mut *mut ::std::ffi::c_void,
17311    ) -> ::std::os::raw::c_int {
17312        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_qt_metacall(self as *const crate::SignalOfQStringQVariant as *mut crate::SignalOfQStringQVariant, arg1, arg2, arg3)
17313    }
17314
17315    #[inline(always)]
17316    pub unsafe fn qt_metacast(
17317        &self,
17318        arg1: *const ::std::os::raw::c_char,
17319    ) -> *mut ::std::ffi::c_void {
17320        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_qt_metacast(self as *const crate::SignalOfQStringQVariant as *mut crate::SignalOfQStringQVariant, arg1)
17321    }
17322
17323    #[inline(always)]
17324    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
17325        let ffi_result = {
17326            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_staticMetaObject()
17327        };
17328        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17329            .expect("attempted to construct a null Ref")
17330    }
17331
17332    #[inline(always)]
17333    pub unsafe fn tr(
17334        s: *const ::std::os::raw::c_char,
17335        c: *const ::std::os::raw::c_char,
17336        n: ::std::os::raw::c_int,
17337    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17338        let ffi_result = {
17339            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_tr(s, c, n)
17340        };
17341        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17342    }
17343
17344    #[inline(always)]
17345    pub unsafe fn tr_utf8(
17346        s: *const ::std::os::raw::c_char,
17347        c: *const ::std::os::raw::c_char,
17348        n: ::std::os::raw::c_int,
17349    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17350        let ffi_result = {
17351            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_trUtf8(s, c, n)
17352        };
17353        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17354    }
17355}
17356
17357impl ::qt_core::AsReceiver for crate::SignalOfStatus {
17358    type Arguments = (crate::q_qml_component::Status,);
17359    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
17360        unsafe {
17361            ::qt_core::Receiver::new(
17362                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17363                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QQmlComponent::Status)\0"),
17364            )
17365        }
17366    }
17367}
17368
17369impl crate::SignalOfStatus {
17370    /// Connects this signal to another signal or slot.
17371    ///
17372    /// This is a shortcut for `self.signal().connect(receiver)`.
17373
17374    pub unsafe fn connect_with_type<R>(
17375        &self,
17376        connection_type: ::qt_core::ConnectionType,
17377        receiver: R,
17378    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17379    where
17380        R: ::qt_core::AsReceiver,
17381        (crate::q_qml_component::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
17382    {
17383        self.signal().connect_with_type(connection_type, receiver)
17384    }
17385
17386    /// Connects this signal to another signal or slot, using auto connection type.
17387    ///
17388    /// This is a shortcut for `self.signal().connect(receiver)`.
17389
17390    pub unsafe fn connect<R>(
17391        &self,
17392        receiver: R,
17393    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17394    where
17395        R: ::qt_core::AsReceiver,
17396        (crate::q_qml_component::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
17397    {
17398        self.signal().connect(receiver)
17399    }
17400}
17401
17402/// Emits a Qt signal with arguments `crate::q_qml_component::Status`.
17403///
17404/// Corresponding C++ argument types: (<span style='color: green;'>```QQmlComponent::Status```</span>).
17405///
17406/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
17407#[repr(C)]
17408pub struct SignalOfStatus {
17409    _unused: u8,
17410}
17411impl SignalOfStatus {
17412    /// Returns a `Signal` object representing the signal.
17413    ///
17414    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
17415    #[inline(always)]
17416    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_qml_component::Status,)> {
17417        unsafe {
17418            ::qt_core::Signal::new(
17419                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17420                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QQmlComponent::Status)\0"),
17421            )
17422        }
17423    }
17424
17425    /// Emits the signal.
17426    #[inline(always)]
17427    pub unsafe fn emit(&self, arg0: crate::q_qml_component::Status) {
17428        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_emit_(
17429            self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus,
17430            arg0,
17431        )
17432    }
17433
17434    #[inline(always)]
17435    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
17436        let ffi_result = {
17437            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_metaObject(self as *const crate::SignalOfStatus)
17438        };
17439        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17440    }
17441
17442    /// Creates a new object.
17443    #[inline(always)]
17444    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStatus> {
17445        let ffi_result = {
17446            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status()
17447        };
17448        ::qt_core::QBox::from_raw(ffi_result)
17449    }
17450
17451    #[inline(always)]
17452    pub unsafe fn qt_metacall(
17453        &self,
17454        arg1: ::qt_core::q_meta_object::Call,
17455        arg2: ::std::os::raw::c_int,
17456        arg3: *mut *mut ::std::ffi::c_void,
17457    ) -> ::std::os::raw::c_int {
17458        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_qt_metacall(
17459            self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus,
17460            arg1,
17461            arg2,
17462            arg3,
17463        )
17464    }
17465
17466    #[inline(always)]
17467    pub unsafe fn qt_metacast(
17468        &self,
17469        arg1: *const ::std::os::raw::c_char,
17470    ) -> *mut ::std::ffi::c_void {
17471        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_qt_metacast(
17472            self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus,
17473            arg1,
17474        )
17475    }
17476
17477    #[inline(always)]
17478    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
17479        let ffi_result = {
17480            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_staticMetaObject()
17481        };
17482        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17483            .expect("attempted to construct a null Ref")
17484    }
17485
17486    #[inline(always)]
17487    pub unsafe fn tr(
17488        s: *const ::std::os::raw::c_char,
17489        c: *const ::std::os::raw::c_char,
17490        n: ::std::os::raw::c_int,
17491    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17492        let ffi_result = {
17493            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_tr(
17494                s, c, n,
17495            )
17496        };
17497        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17498    }
17499
17500    #[inline(always)]
17501    pub unsafe fn tr_utf8(
17502        s: *const ::std::os::raw::c_char,
17503        c: *const ::std::os::raw::c_char,
17504        n: ::std::os::raw::c_int,
17505    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17506        let ffi_result = {
17507            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_trUtf8(
17508                s, c, n,
17509            )
17510        };
17511        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17512    }
17513}
17514
17515impl ::qt_core::AsReceiver for crate::SignalOfQListOfQQmlError {
17516    type Arguments = (*const crate::QListOfQQmlError,);
17517    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
17518        unsafe {
17519            ::qt_core::Receiver::new(
17520                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17521                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17522                    b"2emit_(QList< QQmlError > const &)\0",
17523                ),
17524            )
17525        }
17526    }
17527}
17528
17529impl crate::SignalOfQListOfQQmlError {
17530    /// Connects this signal to another signal or slot.
17531    ///
17532    /// This is a shortcut for `self.signal().connect(receiver)`.
17533
17534    pub unsafe fn connect_with_type<R>(
17535        &self,
17536        connection_type: ::qt_core::ConnectionType,
17537        receiver: R,
17538    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17539    where
17540        R: ::qt_core::AsReceiver,
17541        (*const crate::QListOfQQmlError,): ::qt_core::ArgumentsCompatible<R::Arguments>,
17542    {
17543        self.signal().connect_with_type(connection_type, receiver)
17544    }
17545
17546    /// Connects this signal to another signal or slot, using auto connection type.
17547    ///
17548    /// This is a shortcut for `self.signal().connect(receiver)`.
17549
17550    pub unsafe fn connect<R>(
17551        &self,
17552        receiver: R,
17553    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17554    where
17555        R: ::qt_core::AsReceiver,
17556        (*const crate::QListOfQQmlError,): ::qt_core::ArgumentsCompatible<R::Arguments>,
17557    {
17558        self.signal().connect(receiver)
17559    }
17560}
17561
17562/// Emits a Qt signal with arguments `*const crate::QListOfQQmlError`.
17563///
17564/// Corresponding C++ argument types: (<span style='color: green;'>```const QList<QQmlError>&```</span>).
17565///
17566/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
17567#[repr(C)]
17568pub struct SignalOfQListOfQQmlError {
17569    _unused: u8,
17570}
17571impl SignalOfQListOfQQmlError {
17572    /// Returns a `Signal` object representing the signal.
17573    ///
17574    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
17575    #[inline(always)]
17576    pub fn signal(&self) -> ::qt_core::Signal<(*const crate::QListOfQQmlError,)> {
17577        unsafe {
17578            ::qt_core::Signal::new(
17579                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17580                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17581                    b"2emit_(QList< QQmlError > const &)\0",
17582                ),
17583            )
17584        }
17585    }
17586
17587    /// Emits the signal.
17588    #[inline(always)]
17589    pub unsafe fn emit(
17590        &self,
17591        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
17592    ) {
17593        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_emit_(
17594            self as *const crate::SignalOfQListOfQQmlError as *mut crate::SignalOfQListOfQQmlError,
17595            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(arg0)
17596                .as_raw_ptr(),
17597        )
17598    }
17599
17600    #[inline(always)]
17601    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
17602        let ffi_result = {
17603            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_metaObject(self as *const crate::SignalOfQListOfQQmlError)
17604        };
17605        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17606    }
17607
17608    /// Creates a new object.
17609    #[inline(always)]
17610    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQListOfQQmlError> {
17611        let ffi_result = {
17612            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref()
17613        };
17614        ::qt_core::QBox::from_raw(ffi_result)
17615    }
17616
17617    #[inline(always)]
17618    pub unsafe fn qt_metacall(
17619        &self,
17620        arg1: ::qt_core::q_meta_object::Call,
17621        arg2: ::std::os::raw::c_int,
17622        arg3: *mut *mut ::std::ffi::c_void,
17623    ) -> ::std::os::raw::c_int {
17624        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_qt_metacall(self as *const crate::SignalOfQListOfQQmlError as *mut crate::SignalOfQListOfQQmlError, arg1, arg2, arg3)
17625    }
17626
17627    #[inline(always)]
17628    pub unsafe fn qt_metacast(
17629        &self,
17630        arg1: *const ::std::os::raw::c_char,
17631    ) -> *mut ::std::ffi::c_void {
17632        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_qt_metacast(self as *const crate::SignalOfQListOfQQmlError as *mut crate::SignalOfQListOfQQmlError, arg1)
17633    }
17634
17635    #[inline(always)]
17636    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
17637        let ffi_result = {
17638            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_staticMetaObject()
17639        };
17640        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17641            .expect("attempted to construct a null Ref")
17642    }
17643
17644    #[inline(always)]
17645    pub unsafe fn tr(
17646        s: *const ::std::os::raw::c_char,
17647        c: *const ::std::os::raw::c_char,
17648        n: ::std::os::raw::c_int,
17649    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17650        let ffi_result = {
17651            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_tr(
17652                s, c, n,
17653            )
17654        };
17655        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17656    }
17657
17658    #[inline(always)]
17659    pub unsafe fn tr_utf8(
17660        s: *const ::std::os::raw::c_char,
17661        c: *const ::std::os::raw::c_char,
17662        n: ::std::os::raw::c_int,
17663    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17664        let ffi_result = {
17665            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_trUtf8(s, c, n)
17666        };
17667        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17668    }
17669}
17670
17671impl ::qt_core::AsReceiver for crate::SignalOfQObjectQUrl {
17672    type Arguments = (*mut ::qt_core::QObject, *const ::qt_core::QUrl);
17673    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
17674        unsafe {
17675            ::qt_core::Receiver::new(
17676                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17677                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17678                    b"2emit_(QObject *,QUrl const &)\0",
17679                ),
17680            )
17681        }
17682    }
17683}
17684
17685impl crate::SignalOfQObjectQUrl {
17686    /// Connects this signal to another signal or slot.
17687    ///
17688    /// This is a shortcut for `self.signal().connect(receiver)`.
17689
17690    pub unsafe fn connect_with_type<R>(
17691        &self,
17692        connection_type: ::qt_core::ConnectionType,
17693        receiver: R,
17694    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17695    where
17696        R: ::qt_core::AsReceiver,
17697        (*mut ::qt_core::QObject, *const ::qt_core::QUrl):
17698            ::qt_core::ArgumentsCompatible<R::Arguments>,
17699    {
17700        self.signal().connect_with_type(connection_type, receiver)
17701    }
17702
17703    /// Connects this signal to another signal or slot, using auto connection type.
17704    ///
17705    /// This is a shortcut for `self.signal().connect(receiver)`.
17706
17707    pub unsafe fn connect<R>(
17708        &self,
17709        receiver: R,
17710    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
17711    where
17712        R: ::qt_core::AsReceiver,
17713        (*mut ::qt_core::QObject, *const ::qt_core::QUrl):
17714            ::qt_core::ArgumentsCompatible<R::Arguments>,
17715    {
17716        self.signal().connect(receiver)
17717    }
17718}
17719
17720/// Emits a Qt signal with arguments `*mut ::qt_core::QObject,*const ::qt_core::QUrl`.
17721///
17722/// Corresponding C++ argument types: (<span style='color: green;'>```QObject*, const QUrl&```</span>).
17723///
17724/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
17725#[repr(C)]
17726pub struct SignalOfQObjectQUrl {
17727    _unused: u8,
17728}
17729impl SignalOfQObjectQUrl {
17730    /// Returns a `Signal` object representing the signal.
17731    ///
17732    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
17733    #[inline(always)]
17734    pub fn signal(&self) -> ::qt_core::Signal<(*mut ::qt_core::QObject, *const ::qt_core::QUrl)> {
17735        unsafe {
17736            ::qt_core::Signal::new(
17737                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17738                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17739                    b"2emit_(QObject *,QUrl const &)\0",
17740                ),
17741            )
17742        }
17743    }
17744
17745    /// Emits the signal.
17746    #[inline(always)]
17747    pub unsafe fn emit(
17748        &self,
17749        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
17750        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
17751    ) {
17752        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_emit_(
17753            self as *const crate::SignalOfQObjectQUrl as *mut crate::SignalOfQObjectQUrl,
17754            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg0)
17755                .as_raw_ptr() as *mut ::qt_core::QObject,
17756            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1).as_raw_ptr(),
17757        )
17758    }
17759
17760    #[inline(always)]
17761    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
17762        let ffi_result = {
17763            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_metaObject(self as *const crate::SignalOfQObjectQUrl)
17764        };
17765        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17766    }
17767
17768    /// Creates a new object.
17769    #[inline(always)]
17770    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQObjectQUrl> {
17771        let ffi_result = {
17772            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref()
17773        };
17774        ::qt_core::QBox::from_raw(ffi_result)
17775    }
17776
17777    #[inline(always)]
17778    pub unsafe fn qt_metacall(
17779        &self,
17780        arg1: ::qt_core::q_meta_object::Call,
17781        arg2: ::std::os::raw::c_int,
17782        arg3: *mut *mut ::std::ffi::c_void,
17783    ) -> ::std::os::raw::c_int {
17784        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_qt_metacall(self as *const crate::SignalOfQObjectQUrl as *mut crate::SignalOfQObjectQUrl, arg1, arg2, arg3)
17785    }
17786
17787    #[inline(always)]
17788    pub unsafe fn qt_metacast(
17789        &self,
17790        arg1: *const ::std::os::raw::c_char,
17791    ) -> *mut ::std::ffi::c_void {
17792        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_qt_metacast(self as *const crate::SignalOfQObjectQUrl as *mut crate::SignalOfQObjectQUrl, arg1)
17793    }
17794
17795    #[inline(always)]
17796    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
17797        let ffi_result = {
17798            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_staticMetaObject()
17799        };
17800        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17801            .expect("attempted to construct a null Ref")
17802    }
17803
17804    #[inline(always)]
17805    pub unsafe fn tr(
17806        s: *const ::std::os::raw::c_char,
17807        c: *const ::std::os::raw::c_char,
17808        n: ::std::os::raw::c_int,
17809    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17810        let ffi_result = {
17811            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_tr(
17812                s, c, n,
17813            )
17814        };
17815        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17816    }
17817
17818    #[inline(always)]
17819    pub unsafe fn tr_utf8(
17820        s: *const ::std::os::raw::c_char,
17821        c: *const ::std::os::raw::c_char,
17822        n: ::std::os::raw::c_int,
17823    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17824        let ffi_result = {
17825            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_trUtf8(s, c, n)
17826        };
17827        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17828    }
17829}
17830
17831impl ::qt_core::AsReceiver for crate::SlotOfQObjectQUrl {
17832    type Arguments = (*mut ::qt_core::QObject, *const ::qt_core::QUrl);
17833    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
17834        unsafe {
17835            ::qt_core::Receiver::new(
17836                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17837                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17838                    b"1slot_(QObject *,QUrl const &)\0",
17839                ),
17840            )
17841        }
17842    }
17843}
17844
17845/// Binds a Qt signal with arguments `*mut ::qt_core::QObject,*const ::qt_core::QUrl` to a Rust closure.
17846///
17847/// Corresponding C++ argument types: (<span style='color: green;'>```QObject*, const QUrl&```</span>).
17848///
17849/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
17850///
17851/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
17852///
17853/// If `set()` was not called, slot invocation has no effect.
17854#[repr(C)]
17855pub struct SlotOfQObjectQUrl {
17856    _unused: u8,
17857}
17858impl SlotOfQObjectQUrl {
17859    #[inline(always)]
17860    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
17861        let ffi_result = {
17862            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_metaObject(self as *const crate::SlotOfQObjectQUrl)
17863        };
17864        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17865    }
17866
17867    /// Creates a new object.
17868    #[inline(always)]
17869    pub unsafe fn new<
17870        T: FnMut(::qt_core::QPtr<::qt_core::QObject>, ::cpp_core::Ref<::qt_core::QUrl>) + 'static,
17871    >(
17872        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
17873        callback: T,
17874    ) -> ::qt_core::QBox<crate::SlotOfQObjectQUrl> {
17875        let ffi_result = {
17876            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
17877                unsafe {
17878                    let _ = Box::from_raw(data as *mut T);
17879                }
17880            }
17881            extern "C" fn ffi_callback<
17882                T: FnMut(::qt_core::QPtr<::qt_core::QObject>, ::cpp_core::Ref<::qt_core::QUrl>)
17883                    + 'static,
17884            >(
17885                data: *mut ::std::ffi::c_void,
17886                arg0: *mut ::qt_core::QObject,
17887                arg1: *const ::qt_core::QUrl,
17888            ) {
17889                unsafe {
17890                    (*(data as *mut T))(
17891                        ::qt_core::QPtr::from_raw(arg0),
17892                        ::cpp_core::Ref::from_raw(arg1 as *mut ::qt_core::QUrl)
17893                            .expect("attempted to construct a null Ref"),
17894                    )
17895                }
17896            }
17897            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
17898            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
17899        };
17900        ::qt_core::QBox::from_raw(ffi_result)
17901    }
17902
17903    #[inline(always)]
17904    pub unsafe fn qt_metacall(
17905        &self,
17906        arg1: ::qt_core::q_meta_object::Call,
17907        arg2: ::std::os::raw::c_int,
17908        arg3: *mut *mut ::std::ffi::c_void,
17909    ) -> ::std::os::raw::c_int {
17910        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_qt_metacall(self as *const crate::SlotOfQObjectQUrl as *mut crate::SlotOfQObjectQUrl, arg1, arg2, arg3)
17911    }
17912
17913    #[inline(always)]
17914    pub unsafe fn qt_metacast(
17915        &self,
17916        arg1: *const ::std::os::raw::c_char,
17917    ) -> *mut ::std::ffi::c_void {
17918        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_qt_metacast(self as *const crate::SlotOfQObjectQUrl as *mut crate::SlotOfQObjectQUrl, arg1)
17919    }
17920
17921    /// Assigns `callback` as the signal handler.
17922    ///
17923    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
17924    #[inline(always)]
17925    pub unsafe fn set<
17926        T: FnMut(::qt_core::QPtr<::qt_core::QObject>, ::cpp_core::Ref<::qt_core::QUrl>) + 'static,
17927    >(
17928        &self,
17929        callback: T,
17930    ) {
17931        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
17932            unsafe {
17933                let _ = Box::from_raw(data as *mut T);
17934            }
17935        }
17936        extern "C" fn ffi_callback<
17937            T: FnMut(::qt_core::QPtr<::qt_core::QObject>, ::cpp_core::Ref<::qt_core::QUrl>) + 'static,
17938        >(
17939            data: *mut ::std::ffi::c_void,
17940            arg0: *mut ::qt_core::QObject,
17941            arg1: *const ::qt_core::QUrl,
17942        ) {
17943            unsafe {
17944                (*(data as *mut T))(
17945                    ::qt_core::QPtr::from_raw(arg0),
17946                    ::cpp_core::Ref::from_raw(arg1 as *mut ::qt_core::QUrl)
17947                        .expect("attempted to construct a null Ref"),
17948                )
17949            }
17950        }
17951        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
17952        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_set(
17953            self as *const crate::SlotOfQObjectQUrl as *mut crate::SlotOfQObjectQUrl,
17954            Some(ffi_callback::<T>),
17955            Some(deleter::<T>),
17956            data,
17957        )
17958    }
17959
17960    /// Calls the slot directly, invoking the assigned handler (if any).
17961    #[inline(always)]
17962    pub unsafe fn slot(
17963        &self,
17964        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
17965        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
17966    ) {
17967        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_slot_(
17968            self as *const crate::SlotOfQObjectQUrl as *mut crate::SlotOfQObjectQUrl,
17969            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg0)
17970                .as_raw_ptr() as *mut ::qt_core::QObject,
17971            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg1).as_raw_ptr(),
17972        )
17973    }
17974
17975    #[inline(always)]
17976    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
17977        let ffi_result = {
17978            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_staticMetaObject()
17979        };
17980        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17981            .expect("attempted to construct a null Ref")
17982    }
17983
17984    #[inline(always)]
17985    pub unsafe fn tr(
17986        s: *const ::std::os::raw::c_char,
17987        c: *const ::std::os::raw::c_char,
17988        n: ::std::os::raw::c_int,
17989    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17990        let ffi_result = {
17991            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_tr(
17992                s, c, n,
17993            )
17994        };
17995        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17996    }
17997
17998    #[inline(always)]
17999    pub unsafe fn tr_utf8(
18000        s: *const ::std::os::raw::c_char,
18001        c: *const ::std::os::raw::c_char,
18002        n: ::std::os::raw::c_int,
18003    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18004        let ffi_result = {
18005            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_trUtf8(s, c, n)
18006        };
18007        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18008    }
18009}
18010
18011impl ::qt_core::AsReceiver for crate::SlotOfStatus {
18012    type Arguments = (crate::q_qml_component::Status,);
18013    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
18014        unsafe {
18015            ::qt_core::Receiver::new(
18016                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18017                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QQmlComponent::Status)\0"),
18018            )
18019        }
18020    }
18021}
18022
18023/// Binds a Qt signal with arguments `crate::q_qml_component::Status` to a Rust closure.
18024///
18025/// Corresponding C++ argument types: (<span style='color: green;'>```QQmlComponent::Status```</span>).
18026///
18027/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
18028///
18029/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
18030///
18031/// If `set()` was not called, slot invocation has no effect.
18032#[repr(C)]
18033pub struct SlotOfStatus {
18034    _unused: u8,
18035}
18036impl SlotOfStatus {
18037    #[inline(always)]
18038    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
18039        let ffi_result = {
18040            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_metaObject(
18041                self as *const crate::SlotOfStatus,
18042            )
18043        };
18044        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18045    }
18046
18047    /// Creates a new object.
18048    #[inline(always)]
18049    pub unsafe fn new<T: FnMut(crate::q_qml_component::Status) + 'static>(
18050        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
18051        callback: T,
18052    ) -> ::qt_core::QBox<crate::SlotOfStatus> {
18053        let ffi_result = {
18054            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
18055                unsafe {
18056                    let _ = Box::from_raw(data as *mut T);
18057                }
18058            }
18059            extern "C" fn ffi_callback<T: FnMut(crate::q_qml_component::Status) + 'static>(
18060                data: *mut ::std::ffi::c_void,
18061                arg0: crate::q_qml_component::Status,
18062            ) {
18063                unsafe { (*(data as *mut T))(arg0) }
18064            }
18065            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
18066            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
18067        };
18068        ::qt_core::QBox::from_raw(ffi_result)
18069    }
18070
18071    #[inline(always)]
18072    pub unsafe fn qt_metacall(
18073        &self,
18074        arg1: ::qt_core::q_meta_object::Call,
18075        arg2: ::std::os::raw::c_int,
18076        arg3: *mut *mut ::std::ffi::c_void,
18077    ) -> ::std::os::raw::c_int {
18078        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_qt_metacall(
18079            self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus,
18080            arg1,
18081            arg2,
18082            arg3,
18083        )
18084    }
18085
18086    #[inline(always)]
18087    pub unsafe fn qt_metacast(
18088        &self,
18089        arg1: *const ::std::os::raw::c_char,
18090    ) -> *mut ::std::ffi::c_void {
18091        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_qt_metacast(
18092            self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus,
18093            arg1,
18094        )
18095    }
18096
18097    /// Assigns `callback` as the signal handler.
18098    ///
18099    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
18100    #[inline(always)]
18101    pub unsafe fn set<T: FnMut(crate::q_qml_component::Status) + 'static>(&self, callback: T) {
18102        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
18103            unsafe {
18104                let _ = Box::from_raw(data as *mut T);
18105            }
18106        }
18107        extern "C" fn ffi_callback<T: FnMut(crate::q_qml_component::Status) + 'static>(
18108            data: *mut ::std::ffi::c_void,
18109            arg0: crate::q_qml_component::Status,
18110        ) {
18111            unsafe { (*(data as *mut T))(arg0) }
18112        }
18113        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
18114        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_set(
18115            self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus,
18116            Some(ffi_callback::<T>),
18117            Some(deleter::<T>),
18118            data,
18119        )
18120    }
18121
18122    /// Calls the slot directly, invoking the assigned handler (if any).
18123    #[inline(always)]
18124    pub unsafe fn slot(&self, arg0: crate::q_qml_component::Status) {
18125        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_slot_(
18126            self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus,
18127            arg0,
18128        )
18129    }
18130
18131    #[inline(always)]
18132    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
18133        let ffi_result = {
18134            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_staticMetaObject()
18135        };
18136        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18137            .expect("attempted to construct a null Ref")
18138    }
18139
18140    #[inline(always)]
18141    pub unsafe fn tr(
18142        s: *const ::std::os::raw::c_char,
18143        c: *const ::std::os::raw::c_char,
18144        n: ::std::os::raw::c_int,
18145    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18146        let ffi_result = {
18147            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_tr(
18148                s, c, n,
18149            )
18150        };
18151        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18152    }
18153
18154    #[inline(always)]
18155    pub unsafe fn tr_utf8(
18156        s: *const ::std::os::raw::c_char,
18157        c: *const ::std::os::raw::c_char,
18158        n: ::std::os::raw::c_int,
18159    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18160        let ffi_result = {
18161            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_trUtf8(
18162                s, c, n,
18163            )
18164        };
18165        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18166    }
18167}
18168
18169impl ::qt_core::AsReceiver for crate::SlotOfQListOfQQmlError {
18170    type Arguments = (*const crate::QListOfQQmlError,);
18171    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
18172        unsafe {
18173            ::qt_core::Receiver::new(
18174                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18175                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18176                    b"1slot_(QList< QQmlError > const &)\0",
18177                ),
18178            )
18179        }
18180    }
18181}
18182
18183/// Binds a Qt signal with arguments `*const crate::QListOfQQmlError` to a Rust closure.
18184///
18185/// Corresponding C++ argument types: (<span style='color: green;'>```const QList<QQmlError>&```</span>).
18186///
18187/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
18188///
18189/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
18190///
18191/// If `set()` was not called, slot invocation has no effect.
18192#[repr(C)]
18193pub struct SlotOfQListOfQQmlError {
18194    _unused: u8,
18195}
18196impl SlotOfQListOfQQmlError {
18197    #[inline(always)]
18198    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
18199        let ffi_result = {
18200            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_metaObject(self as *const crate::SlotOfQListOfQQmlError)
18201        };
18202        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18203    }
18204
18205    /// Creates a new object.
18206    #[inline(always)]
18207    pub unsafe fn new<T: FnMut(::cpp_core::Ref<crate::QListOfQQmlError>) + 'static>(
18208        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
18209        callback: T,
18210    ) -> ::qt_core::QBox<crate::SlotOfQListOfQQmlError> {
18211        let ffi_result = {
18212            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
18213                unsafe {
18214                    let _ = Box::from_raw(data as *mut T);
18215                }
18216            }
18217            extern "C" fn ffi_callback<
18218                T: FnMut(::cpp_core::Ref<crate::QListOfQQmlError>) + 'static,
18219            >(
18220                data: *mut ::std::ffi::c_void,
18221                arg0: *const crate::QListOfQQmlError,
18222            ) {
18223                unsafe {
18224                    (*(data as *mut T))(
18225                        ::cpp_core::Ref::from_raw(arg0 as *mut crate::QListOfQQmlError)
18226                            .expect("attempted to construct a null Ref"),
18227                    )
18228                }
18229            }
18230            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
18231            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
18232        };
18233        ::qt_core::QBox::from_raw(ffi_result)
18234    }
18235
18236    #[inline(always)]
18237    pub unsafe fn qt_metacall(
18238        &self,
18239        arg1: ::qt_core::q_meta_object::Call,
18240        arg2: ::std::os::raw::c_int,
18241        arg3: *mut *mut ::std::ffi::c_void,
18242    ) -> ::std::os::raw::c_int {
18243        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_qt_metacall(self as *const crate::SlotOfQListOfQQmlError as *mut crate::SlotOfQListOfQQmlError, arg1, arg2, arg3)
18244    }
18245
18246    #[inline(always)]
18247    pub unsafe fn qt_metacast(
18248        &self,
18249        arg1: *const ::std::os::raw::c_char,
18250    ) -> *mut ::std::ffi::c_void {
18251        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_qt_metacast(self as *const crate::SlotOfQListOfQQmlError as *mut crate::SlotOfQListOfQQmlError, arg1)
18252    }
18253
18254    /// Assigns `callback` as the signal handler.
18255    ///
18256    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
18257    #[inline(always)]
18258    pub unsafe fn set<T: FnMut(::cpp_core::Ref<crate::QListOfQQmlError>) + 'static>(
18259        &self,
18260        callback: T,
18261    ) {
18262        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
18263            unsafe {
18264                let _ = Box::from_raw(data as *mut T);
18265            }
18266        }
18267        extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<crate::QListOfQQmlError>) + 'static>(
18268            data: *mut ::std::ffi::c_void,
18269            arg0: *const crate::QListOfQQmlError,
18270        ) {
18271            unsafe {
18272                (*(data as *mut T))(
18273                    ::cpp_core::Ref::from_raw(arg0 as *mut crate::QListOfQQmlError)
18274                        .expect("attempted to construct a null Ref"),
18275                )
18276            }
18277        }
18278        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
18279        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_set(
18280            self as *const crate::SlotOfQListOfQQmlError as *mut crate::SlotOfQListOfQQmlError,
18281            Some(ffi_callback::<T>),
18282            Some(deleter::<T>),
18283            data,
18284        )
18285    }
18286
18287    /// Calls the slot directly, invoking the assigned handler (if any).
18288    #[inline(always)]
18289    pub unsafe fn slot(
18290        &self,
18291        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QListOfQQmlError>>,
18292    ) {
18293        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_slot_(
18294            self as *const crate::SlotOfQListOfQQmlError as *mut crate::SlotOfQListOfQQmlError,
18295            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QListOfQQmlError>>::cast_into(arg0)
18296                .as_raw_ptr(),
18297        )
18298    }
18299
18300    #[inline(always)]
18301    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
18302        let ffi_result = {
18303            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_staticMetaObject()
18304        };
18305        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18306            .expect("attempted to construct a null Ref")
18307    }
18308
18309    #[inline(always)]
18310    pub unsafe fn tr(
18311        s: *const ::std::os::raw::c_char,
18312        c: *const ::std::os::raw::c_char,
18313        n: ::std::os::raw::c_int,
18314    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18315        let ffi_result = {
18316            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_tr(
18317                s, c, n,
18318            )
18319        };
18320        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18321    }
18322
18323    #[inline(always)]
18324    pub unsafe fn tr_utf8(
18325        s: *const ::std::os::raw::c_char,
18326        c: *const ::std::os::raw::c_char,
18327        n: ::std::os::raw::c_int,
18328    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18329        let ffi_result = {
18330            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_trUtf8(s, c, n)
18331        };
18332        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18333    }
18334}
18335
18336impl ::qt_core::AsReceiver for crate::SlotOfQStringQVariant {
18337    type Arguments = (*const ::qt_core::QString, *const ::qt_core::QVariant);
18338    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
18339        unsafe {
18340            ::qt_core::Receiver::new(
18341                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18342                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18343                    b"1slot_(QString const &,QVariant const &)\0",
18344                ),
18345            )
18346        }
18347    }
18348}
18349
18350/// Binds a Qt signal with arguments `*const ::qt_core::QString,*const ::qt_core::QVariant` to a Rust closure.
18351///
18352/// Corresponding C++ argument types: (<span style='color: green;'>```const QString&, const QVariant&```</span>).
18353///
18354/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
18355///
18356/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
18357///
18358/// If `set()` was not called, slot invocation has no effect.
18359#[repr(C)]
18360pub struct SlotOfQStringQVariant {
18361    _unused: u8,
18362}
18363impl SlotOfQStringQVariant {
18364    #[inline(always)]
18365    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
18366        let ffi_result = {
18367            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_metaObject(self as *const crate::SlotOfQStringQVariant)
18368        };
18369        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18370    }
18371
18372    /// Creates a new object.
18373    #[inline(always)]
18374    pub unsafe fn new<
18375        T: FnMut(::cpp_core::Ref<::qt_core::QString>, ::cpp_core::Ref<::qt_core::QVariant>) + 'static,
18376    >(
18377        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
18378        callback: T,
18379    ) -> ::qt_core::QBox<crate::SlotOfQStringQVariant> {
18380        let ffi_result = {
18381            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
18382                unsafe {
18383                    let _ = Box::from_raw(data as *mut T);
18384                }
18385            }
18386            extern "C" fn ffi_callback<
18387                T: FnMut(::cpp_core::Ref<::qt_core::QString>, ::cpp_core::Ref<::qt_core::QVariant>)
18388                    + 'static,
18389            >(
18390                data: *mut ::std::ffi::c_void,
18391                arg0: *const ::qt_core::QString,
18392                arg1: *const ::qt_core::QVariant,
18393            ) {
18394                unsafe {
18395                    (*(data as *mut T))(
18396                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QString)
18397                            .expect("attempted to construct a null Ref"),
18398                        ::cpp_core::Ref::from_raw(arg1 as *mut ::qt_core::QVariant)
18399                            .expect("attempted to construct a null Ref"),
18400                    )
18401                }
18402            }
18403            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
18404            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
18405        };
18406        ::qt_core::QBox::from_raw(ffi_result)
18407    }
18408
18409    #[inline(always)]
18410    pub unsafe fn qt_metacall(
18411        &self,
18412        arg1: ::qt_core::q_meta_object::Call,
18413        arg2: ::std::os::raw::c_int,
18414        arg3: *mut *mut ::std::ffi::c_void,
18415    ) -> ::std::os::raw::c_int {
18416        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_qt_metacall(self as *const crate::SlotOfQStringQVariant as *mut crate::SlotOfQStringQVariant, arg1, arg2, arg3)
18417    }
18418
18419    #[inline(always)]
18420    pub unsafe fn qt_metacast(
18421        &self,
18422        arg1: *const ::std::os::raw::c_char,
18423    ) -> *mut ::std::ffi::c_void {
18424        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_qt_metacast(self as *const crate::SlotOfQStringQVariant as *mut crate::SlotOfQStringQVariant, arg1)
18425    }
18426
18427    /// Assigns `callback` as the signal handler.
18428    ///
18429    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
18430    #[inline(always)]
18431    pub unsafe fn set<
18432        T: FnMut(::cpp_core::Ref<::qt_core::QString>, ::cpp_core::Ref<::qt_core::QVariant>) + 'static,
18433    >(
18434        &self,
18435        callback: T,
18436    ) {
18437        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
18438            unsafe {
18439                let _ = Box::from_raw(data as *mut T);
18440            }
18441        }
18442        extern "C" fn ffi_callback<
18443            T: FnMut(::cpp_core::Ref<::qt_core::QString>, ::cpp_core::Ref<::qt_core::QVariant>)
18444                + 'static,
18445        >(
18446            data: *mut ::std::ffi::c_void,
18447            arg0: *const ::qt_core::QString,
18448            arg1: *const ::qt_core::QVariant,
18449        ) {
18450            unsafe {
18451                (*(data as *mut T))(
18452                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QString)
18453                        .expect("attempted to construct a null Ref"),
18454                    ::cpp_core::Ref::from_raw(arg1 as *mut ::qt_core::QVariant)
18455                        .expect("attempted to construct a null Ref"),
18456                )
18457            }
18458        }
18459        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
18460        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_set(self as *const crate::SlotOfQStringQVariant as *mut crate::SlotOfQStringQVariant, Some(ffi_callback::<T>), Some(deleter::<T>), data)
18461    }
18462
18463    /// Calls the slot directly, invoking the assigned handler (if any).
18464    #[inline(always)]
18465    pub unsafe fn slot(
18466        &self,
18467        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
18468        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
18469    ) {
18470        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_slot_(self as *const crate::SlotOfQStringQVariant as *mut crate::SlotOfQStringQVariant, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(arg0).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg1).as_raw_ptr())
18471    }
18472
18473    #[inline(always)]
18474    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
18475        let ffi_result = {
18476            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_staticMetaObject()
18477        };
18478        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18479            .expect("attempted to construct a null Ref")
18480    }
18481
18482    #[inline(always)]
18483    pub unsafe fn tr(
18484        s: *const ::std::os::raw::c_char,
18485        c: *const ::std::os::raw::c_char,
18486        n: ::std::os::raw::c_int,
18487    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18488        let ffi_result = {
18489            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_tr(s, c, n)
18490        };
18491        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18492    }
18493
18494    #[inline(always)]
18495    pub unsafe fn tr_utf8(
18496        s: *const ::std::os::raw::c_char,
18497        c: *const ::std::os::raw::c_char,
18498        n: ::std::os::raw::c_int,
18499    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18500        let ffi_result = {
18501            crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_trUtf8(s, c, n)
18502        };
18503        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18504    }
18505}
18506
18507impl ::cpp_core::CppDeletable for crate::QJSValue {
18508    /// <p>Destroys this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p>
18509    ///
18510    /// Calls C++ function: <span style='color: green;'>```[destructor] void QJSValue::~QJSValue()```</span>.
18511    ///
18512    /// <a href="http://doc.qt.io/qt-5/qjsvalue.html#dtor.QJSValue">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys this <a href="http://doc.qt.io/qt-5/qjsvalue.html">QJSValue</a>.</p></div>
18513    #[inline(always)]
18514    unsafe fn delete(&self) {
18515        crate::__ffi::ctr_qt_qml_ffi_QJSValue_dQJSValue(
18516            self as *const crate::QJSValue as *mut crate::QJSValue,
18517        )
18518    }
18519}
18520
18521impl ::cpp_core::CppDeletable for crate::QJSEngine {
18522    /// <p>Destroys this <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a>.</p>
18523    ///
18524    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QJSEngine::~QJSEngine()```</span>.
18525    ///
18526    /// <a href="http://doc.qt.io/qt-5/qjsengine.html#dtor.QJSEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys this <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a>.</p>
18527    /// <p>Garbage is not collected from the persistent JS heap during <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> destruction. If you need all memory freed, call <a href="http://doc.qt.io/qt-5/qjsengine.html#collectGarbage">collectGarbage</a> manually right before destroying the <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a>.</p></div>
18528    #[inline(always)]
18529    unsafe fn delete(&self) {
18530        crate::__ffi::ctr_qt_qml_ffi_QJSEngine_dQJSEngine(
18531            self as *const crate::QJSEngine as *mut crate::QJSEngine,
18532        )
18533    }
18534}
18535
18536impl ::cpp_core::CppDeletable for crate::QJSValueIterator {
18537    /// <p>Destroys the iterator.</p>
18538    ///
18539    /// Calls C++ function: <span style='color: green;'>```[destructor] void QJSValueIterator::~QJSValueIterator()```</span>.
18540    ///
18541    /// <a href="http://doc.qt.io/qt-5/qjsvalueiterator.html#dtor.QJSValueIterator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the iterator.</p></div>
18542    #[inline(always)]
18543    unsafe fn delete(&self) {
18544        crate::__ffi::ctr_qt_qml_ffi_QJSValueIterator_dQJSValueIterator(
18545            self as *const crate::QJSValueIterator as *mut crate::QJSValueIterator,
18546        )
18547    }
18548}
18549
18550impl ::cpp_core::CppDeletable for crate::QQmlParserStatus {
18551    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlParserStatus::~QQmlParserStatus()```</span>.
18552    #[inline(always)]
18553    unsafe fn delete(&self) {
18554        crate::__ffi::ctr_qt_qml_ffi_QQmlParserStatus_dQQmlParserStatus(
18555            self as *const crate::QQmlParserStatus as *mut crate::QQmlParserStatus,
18556        )
18557    }
18558}
18559
18560impl ::cpp_core::CppDeletable for crate::QQmlPropertyValueSource {
18561    /// <p>Destroys the value source.</p>
18562    ///
18563    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlPropertyValueSource::~QQmlPropertyValueSource()```</span>.
18564    ///
18565    /// <a href="http://doc.qt.io/qt-5/qqmlpropertyvaluesource.html#dtor.QQmlPropertyValueSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the value source.</p></div>
18566    #[inline(always)]
18567    unsafe fn delete(&self) {
18568        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyValueSource_dQQmlPropertyValueSource(
18569            self as *const crate::QQmlPropertyValueSource as *mut crate::QQmlPropertyValueSource,
18570        )
18571    }
18572}
18573
18574impl ::cpp_core::CppDeletable for crate::QQmlListReference {
18575    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlListReference::~QQmlListReference()```</span>.
18576    #[inline(always)]
18577    unsafe fn delete(&self) {
18578        crate::__ffi::ctr_qt_qml_ffi_QQmlListReference_dQQmlListReference(
18579            self as *const crate::QQmlListReference as *mut crate::QQmlListReference,
18580        )
18581    }
18582}
18583
18584impl ::cpp_core::CppDeletable for crate::QQmlAbstractUrlInterceptor {
18585    /// <p>Destructor for <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a>.</p>
18586    ///
18587    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlAbstractUrlInterceptor::~QQmlAbstractUrlInterceptor()```</span>.
18588    ///
18589    /// <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html#dtor.QQmlAbstractUrlInterceptor">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destructor for <a href="http://doc.qt.io/qt-5/qqmlabstracturlinterceptor.html">QQmlAbstractUrlInterceptor</a>.</p></div>
18590    #[inline(always)]
18591    unsafe fn delete(&self) {
18592        crate::__ffi::ctr_qt_qml_ffi_QQmlAbstractUrlInterceptor_dQQmlAbstractUrlInterceptor(
18593            self as *const crate::QQmlAbstractUrlInterceptor
18594                as *mut crate::QQmlAbstractUrlInterceptor,
18595        )
18596    }
18597}
18598
18599impl ::cpp_core::CppDeletable for crate::QQmlError {
18600    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlError::~QQmlError()```</span>.
18601    #[inline(always)]
18602    unsafe fn delete(&self) {
18603        crate::__ffi::ctr_qt_qml_ffi_QQmlError_dQQmlError(
18604            self as *const crate::QQmlError as *mut crate::QQmlError,
18605        )
18606    }
18607}
18608
18609impl ::cpp_core::CppDeletable for crate::QQmlImageProviderBase {
18610    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlImageProviderBase::~QQmlImageProviderBase()```</span>.
18611    #[inline(always)]
18612    unsafe fn delete(&self) {
18613        crate::__ffi::ctr_qt_qml_ffi_QQmlImageProviderBase_dQQmlImageProviderBase(
18614            self as *const crate::QQmlImageProviderBase as *mut crate::QQmlImageProviderBase,
18615        )
18616    }
18617}
18618
18619impl ::cpp_core::CppDeletable for crate::QQmlEngine {
18620    /// <p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p>
18621    ///
18622    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlEngine::~QQmlEngine()```</span>.
18623    ///
18624    /// <a href="http://doc.qt.io/qt-5/qqmlengine.html#dtor.QQmlEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a>.</p>
18625    /// <p>Any <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>'s created on this engine will be invalidated, but not destroyed (unless they are parented to the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> object).</p>
18626    /// <p>See <a href="http://doc.qt.io/qt-5/qjsengine.html">QJSEngine</a> docs for details on cleaning up the JS engine.</p></div>
18627    #[inline(always)]
18628    unsafe fn delete(&self) {
18629        crate::__ffi::ctr_qt_qml_ffi_QQmlEngine_dQQmlEngine(
18630            self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
18631        )
18632    }
18633}
18634
18635impl ::cpp_core::CppDeletable for crate::QQmlApplicationEngine {
18636    /// <p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and all QML objects it loaded.</p>
18637    ///
18638    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlApplicationEngine::~QQmlApplicationEngine()```</span>.
18639    ///
18640    /// <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html#dtor.QQmlApplicationEngine">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlapplicationengine.html">QQmlApplicationEngine</a> and all QML objects it loaded.</p></div>
18641    #[inline(always)]
18642    unsafe fn delete(&self) {
18643        crate::__ffi::ctr_qt_qml_ffi_QQmlApplicationEngine_dQQmlApplicationEngine(
18644            self as *const crate::QQmlApplicationEngine as *mut crate::QQmlApplicationEngine,
18645        )
18646    }
18647}
18648
18649impl ::cpp_core::CppDeletable for crate::QQmlComponent {
18650    /// <p>Destruct the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a>.</p>
18651    ///
18652    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlComponent::~QQmlComponent()```</span>.
18653    ///
18654    /// <a href="http://doc.qt.io/qt-5/qqmlcomponent.html#dtor.QQmlComponent">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destruct the <a href="http://doc.qt.io/qt-5/qqmlcomponent.html">QQmlComponent</a>.</p></div>
18655    #[inline(always)]
18656    unsafe fn delete(&self) {
18657        crate::__ffi::ctr_qt_qml_ffi_QQmlComponent_dQQmlComponent(
18658            self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
18659        )
18660    }
18661}
18662
18663impl ::cpp_core::CppDeletable for crate::QQmlContext {
18664    /// <p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>.</p>
18665    ///
18666    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlContext::~QQmlContext()```</span>.
18667    ///
18668    /// <a href="http://doc.qt.io/qt-5/qqmlcontext.html#dtor.QQmlContext">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a>.</p>
18669    /// <p>Any expressions, or sub-contexts dependent on this context will be invalidated, but not destroyed (unless they are parented to the <a href="http://doc.qt.io/qt-5/qqmlcontext.html">QQmlContext</a> object).</p></div>
18670    #[inline(always)]
18671    unsafe fn delete(&self) {
18672        crate::__ffi::ctr_qt_qml_ffi_QQmlContext_dQQmlContext(
18673            self as *const crate::QQmlContext as *mut crate::QQmlContext,
18674        )
18675    }
18676}
18677
18678impl ::cpp_core::CppDeletable for crate::QQmlScriptString {
18679    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlScriptString::~QQmlScriptString()```</span>.
18680    #[inline(always)]
18681    unsafe fn delete(&self) {
18682        crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_dQQmlScriptString(
18683            self as *const crate::QQmlScriptString as *mut crate::QQmlScriptString,
18684        )
18685    }
18686}
18687
18688impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QQmlScriptString>> for crate::QQmlScriptString {
18689    /// <p>Returns <code>true</code> if this and the <i>other</i> <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> objects are equal.</p>
18690    ///
18691    /// Calls C++ function: <span style='color: green;'>```bool QQmlScriptString::operator==(const QQmlScriptString& arg1) const```</span>.
18692    ///
18693    /// <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this and the <i>other</i> <a href="http://doc.qt.io/qt-5/qqmlscriptstring.html">QQmlScriptString</a> objects are equal.</p>
18694    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlscriptstring.html#operator-not-eq">operator!=</a>().</p></div>
18695    #[inline(always)]
18696    fn eq(&self, arg1: &::cpp_core::Ref<crate::QQmlScriptString>) -> bool {
18697        unsafe {
18698            crate::__ffi::ctr_qt_qml_ffi_QQmlScriptString_operator__(
18699                self as *const crate::QQmlScriptString,
18700                arg1.as_raw_ptr(),
18701            )
18702        }
18703    }
18704}
18705
18706impl ::cpp_core::CppDeletable for crate::QQmlExpression {
18707    /// <p>Destroy the <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> instance.</p>
18708    ///
18709    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlExpression::~QQmlExpression()```</span>.
18710    ///
18711    /// <a href="http://doc.qt.io/qt-5/qqmlexpression.html#dtor.QQmlExpression">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroy the <a href="http://doc.qt.io/qt-5/qqmlexpression.html">QQmlExpression</a> instance.</p></div>
18712    #[inline(always)]
18713    unsafe fn delete(&self) {
18714        crate::__ffi::ctr_qt_qml_ffi_QQmlExpression_dQQmlExpression(
18715            self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
18716        )
18717    }
18718}
18719
18720impl ::cpp_core::CppDeletable for crate::QQmlTypesExtensionInterface {
18721    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlTypesExtensionInterface::~QQmlTypesExtensionInterface()```</span>.
18722    #[inline(always)]
18723    unsafe fn delete(&self) {
18724        crate::__ffi::ctr_qt_qml_ffi_QQmlTypesExtensionInterface_dQQmlTypesExtensionInterface(
18725            self as *const crate::QQmlTypesExtensionInterface
18726                as *mut crate::QQmlTypesExtensionInterface,
18727        )
18728    }
18729}
18730
18731impl ::cpp_core::CppDeletable for crate::QQmlExtensionInterface {
18732    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlExtensionInterface::~QQmlExtensionInterface()```</span>.
18733    #[inline(always)]
18734    unsafe fn delete(&self) {
18735        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionInterface_dQQmlExtensionInterface(
18736            self as *const crate::QQmlExtensionInterface as *mut crate::QQmlExtensionInterface,
18737        )
18738    }
18739}
18740
18741impl ::cpp_core::CppDeletable for crate::QQmlExtensionPlugin {
18742    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlExtensionPlugin::~QQmlExtensionPlugin()```</span>.
18743    #[inline(always)]
18744    unsafe fn delete(&self) {
18745        crate::__ffi::ctr_qt_qml_ffi_QQmlExtensionPlugin_dQQmlExtensionPlugin(
18746            self as *const crate::QQmlExtensionPlugin as *mut crate::QQmlExtensionPlugin,
18747        )
18748    }
18749}
18750
18751impl ::cpp_core::CppDeletable for crate::QQmlFile {
18752    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlFile::~QQmlFile()```</span>.
18753    #[inline(always)]
18754    unsafe fn delete(&self) {
18755        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_dQQmlFile(
18756            self as *const crate::QQmlFile as *mut crate::QQmlFile,
18757        )
18758    }
18759}
18760
18761impl ::cpp_core::vector_ops::Size for crate::QQmlFile {
18762    /// Calls C++ function: <span style='color: green;'>```qint64 QQmlFile::size() const```</span>.
18763    #[inline(always)]
18764    unsafe fn size(&self) -> usize {
18765        let ffi_result =
18766            { crate::__ffi::ctr_qt_qml_ffi_QQmlFile_size(self as *const crate::QQmlFile) };
18767        ffi_result as usize
18768    }
18769}
18770
18771impl ::cpp_core::vector_ops::Data for crate::QQmlFile {
18772    type Output = *const ::std::os::raw::c_char;
18773    /// Calls C++ function: <span style='color: green;'>```const char* QQmlFile::data() const```</span>.
18774    #[inline(always)]
18775    unsafe fn data(&self) -> *const ::std::os::raw::c_char {
18776        crate::__ffi::ctr_qt_qml_ffi_QQmlFile_data(self as *const crate::QQmlFile)
18777    }
18778}
18779
18780impl ::cpp_core::CppDeletable for crate::QQmlFileSelector {
18781    /// <p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> object.</p>
18782    ///
18783    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlFileSelector::~QQmlFileSelector()```</span>.
18784    ///
18785    /// <a href="http://doc.qt.io/qt-5/qqmlfileselector.html#dtor.QQmlFileSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the <a href="http://doc.qt.io/qt-5/qqmlfileselector.html">QQmlFileSelector</a> object.</p></div>
18786    #[inline(always)]
18787    unsafe fn delete(&self) {
18788        crate::__ffi::ctr_qt_qml_ffi_QQmlFileSelector_dQQmlFileSelector(
18789            self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
18790        )
18791    }
18792}
18793
18794impl ::cpp_core::CppDeletable for crate::QQmlIncubator {
18795    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlIncubator::~QQmlIncubator()```</span>.
18796    #[inline(always)]
18797    unsafe fn delete(&self) {
18798        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubator_dQQmlIncubator(
18799            self as *const crate::QQmlIncubator as *mut crate::QQmlIncubator,
18800        )
18801    }
18802}
18803
18804impl ::cpp_core::CppDeletable for crate::QQmlIncubationController {
18805    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlIncubationController::~QQmlIncubationController()```</span>.
18806    #[inline(always)]
18807    unsafe fn delete(&self) {
18808        crate::__ffi::ctr_qt_qml_ffi_QQmlIncubationController_dQQmlIncubationController(
18809            self as *const crate::QQmlIncubationController as *mut crate::QQmlIncubationController,
18810        )
18811    }
18812}
18813
18814impl ::cpp_core::CppDeletable for crate::QQmlInfo {
18815    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlInfo::~QQmlInfo()```</span>.
18816    #[inline(always)]
18817    unsafe fn delete(&self) {
18818        crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_dQQmlInfo(
18819            self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18820        )
18821    }
18822}
18823
18824impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QChar>> for &crate::QQmlInfo {
18825    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18826    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(QChar t)```</span>.
18827    #[inline(always)]
18828    fn shl(self, t: ::cpp_core::Ref<::qt_core::QChar>) -> ::cpp_core::Ref<crate::QQmlInfo> {
18829        let ffi_result = {
18830            unsafe {
18831                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__(
18832                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18833                    t.as_raw_ptr(),
18834                )
18835            }
18836        };
18837        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18838    }
18839}
18840
18841impl ::std::ops::Shl<bool> for &crate::QQmlInfo {
18842    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18843    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(bool t)```</span>.
18844    #[inline(always)]
18845    fn shl(self, t: bool) -> ::cpp_core::Ref<crate::QQmlInfo> {
18846        let ffi_result = {
18847            unsafe {
18848                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__1(
18849                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18850                    t,
18851                )
18852            }
18853        };
18854        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18855    }
18856}
18857
18858impl ::std::ops::Shl<::std::os::raw::c_char> for &crate::QQmlInfo {
18859    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18860    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(char t)```</span>.
18861    #[inline(always)]
18862    fn shl(self, t: ::std::os::raw::c_char) -> ::cpp_core::Ref<crate::QQmlInfo> {
18863        let ffi_result = {
18864            unsafe {
18865                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__2(
18866                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18867                    t,
18868                )
18869            }
18870        };
18871        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18872    }
18873}
18874
18875impl ::std::ops::Shl<i64> for &crate::QQmlInfo {
18876    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18877    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(qint64 t)```</span>.
18878    #[inline(always)]
18879    fn shl(self, t: i64) -> ::cpp_core::Ref<crate::QQmlInfo> {
18880        let ffi_result = {
18881            unsafe {
18882                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__9(
18883                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18884                    t,
18885                )
18886            }
18887        };
18888        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18889    }
18890}
18891
18892impl ::std::ops::Shl<::std::os::raw::c_float> for &crate::QQmlInfo {
18893    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18894    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(float t)```</span>.
18895    #[inline(always)]
18896    fn shl(self, t: ::std::os::raw::c_float) -> ::cpp_core::Ref<crate::QQmlInfo> {
18897        let ffi_result = {
18898            unsafe {
18899                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__11(
18900                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18901                    t,
18902                )
18903            }
18904        };
18905        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18906    }
18907}
18908
18909impl ::std::ops::Shl<*const ::std::os::raw::c_char> for &crate::QQmlInfo {
18910    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18911    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const char* t)```</span>.
18912    #[inline(always)]
18913    fn shl(self, t: *const ::std::os::raw::c_char) -> ::cpp_core::Ref<crate::QQmlInfo> {
18914        let ffi_result = {
18915            unsafe {
18916                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__13(
18917                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18918                    t,
18919                )
18920            }
18921        };
18922        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18923    }
18924}
18925
18926impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QString>> for &crate::QQmlInfo {
18927    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18928    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const QString& t)```</span>.
18929    #[inline(always)]
18930    fn shl(self, t: ::cpp_core::Ref<::qt_core::QString>) -> ::cpp_core::Ref<crate::QQmlInfo> {
18931        let ffi_result = {
18932            unsafe {
18933                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__14(
18934                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18935                    t.as_raw_ptr(),
18936                )
18937            }
18938        };
18939        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18940    }
18941}
18942
18943impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QStringRef>> for &crate::QQmlInfo {
18944    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18945    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const QStringRef& t)```</span>.
18946    #[inline(always)]
18947    fn shl(self, t: ::cpp_core::Ref<::qt_core::QStringRef>) -> ::cpp_core::Ref<crate::QQmlInfo> {
18948        let ffi_result = {
18949            unsafe {
18950                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__15(
18951                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18952                    t.as_raw_ptr(),
18953                )
18954            }
18955        };
18956        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18957    }
18958}
18959
18960impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QLatin1String>> for &crate::QQmlInfo {
18961    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18962    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const QLatin1String& t)```</span>.
18963    #[inline(always)]
18964    fn shl(self, t: ::cpp_core::Ref<::qt_core::QLatin1String>) -> ::cpp_core::Ref<crate::QQmlInfo> {
18965        let ffi_result = {
18966            unsafe {
18967                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__16(
18968                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18969                    t.as_raw_ptr(),
18970                )
18971            }
18972        };
18973        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18974    }
18975}
18976
18977impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QByteArray>> for &crate::QQmlInfo {
18978    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18979    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const QByteArray& t)```</span>.
18980    #[inline(always)]
18981    fn shl(self, t: ::cpp_core::Ref<::qt_core::QByteArray>) -> ::cpp_core::Ref<crate::QQmlInfo> {
18982        let ffi_result = {
18983            unsafe {
18984                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__17(
18985                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
18986                    t.as_raw_ptr(),
18987                )
18988            }
18989        };
18990        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
18991    }
18992}
18993
18994impl ::std::ops::Shl<*const ::std::ffi::c_void> for &crate::QQmlInfo {
18995    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
18996    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const void* t)```</span>.
18997    #[inline(always)]
18998    fn shl(self, t: *const ::std::ffi::c_void) -> ::cpp_core::Ref<crate::QQmlInfo> {
18999        let ffi_result = {
19000            unsafe {
19001                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__18(
19002                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
19003                    t,
19004                )
19005            }
19006        };
19007        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19008    }
19009}
19010
19011impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QTextStreamManipulator>> for &crate::QQmlInfo {
19012    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
19013    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(QTextStreamManipulator m)```</span>.
19014    #[inline(always)]
19015    fn shl(
19016        self,
19017        m: ::cpp_core::Ref<::qt_core::QTextStreamManipulator>,
19018    ) -> ::cpp_core::Ref<crate::QQmlInfo> {
19019        let ffi_result = {
19020            unsafe {
19021                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__20(
19022                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
19023                    m.as_raw_ptr(),
19024                )
19025            }
19026        };
19027        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19028    }
19029}
19030
19031impl ::std::ops::Shl<::cpp_core::Ref<::qt_core::QUrl>> for &crate::QQmlInfo {
19032    type Output = ::cpp_core::Ref<crate::QQmlInfo>;
19033    /// Calls C++ function: <span style='color: green;'>```QQmlInfo& QQmlInfo::operator<<(const QUrl& t)```</span>.
19034    #[inline(always)]
19035    fn shl(self, t: ::cpp_core::Ref<::qt_core::QUrl>) -> ::cpp_core::Ref<crate::QQmlInfo> {
19036        let ffi_result = {
19037            unsafe {
19038                crate::__ffi::ctr_qt_qml_ffi_QQmlInfo_operator__21(
19039                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
19040                    t.as_raw_ptr(),
19041                )
19042            }
19043        };
19044        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19045    }
19046}
19047
19048impl ::cpp_core::CppDeletable for crate::QQmlNetworkAccessManagerFactory {
19049    /// <p>Destroys the factory. The default implementation does nothing.</p>
19050    ///
19051    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlNetworkAccessManagerFactory::~QQmlNetworkAccessManagerFactory()```</span>.
19052    ///
19053    /// <a href="http://doc.qt.io/qt-5/qqmlnetworkaccessmanagerfactory.html#dtor.QQmlNetworkAccessManagerFactory">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the factory. The default implementation does nothing.</p></div>
19054    #[inline(always)]
19055    unsafe fn delete(&self) {
19056        crate::__ffi::ctr_qt_qml_ffi_QQmlNetworkAccessManagerFactory_dQQmlNetworkAccessManagerFactory(self as *const crate::QQmlNetworkAccessManagerFactory as *mut crate::QQmlNetworkAccessManagerFactory)
19057    }
19058}
19059
19060impl ::cpp_core::CppDeletable for crate::QQmlProperty {
19061    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlProperty::~QQmlProperty()```</span>.
19062    #[inline(always)]
19063    unsafe fn delete(&self) {
19064        crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_dQQmlProperty(
19065            self as *const crate::QQmlProperty as *mut crate::QQmlProperty,
19066        )
19067    }
19068}
19069
19070impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QQmlProperty>> for crate::QQmlProperty {
19071    /// <p>Returns true if <i>other</i> and this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> represent the same property.</p>
19072    ///
19073    /// Calls C++ function: <span style='color: green;'>```bool QQmlProperty::operator==(const QQmlProperty& arg1) const```</span>.
19074    ///
19075    /// <a href="http://doc.qt.io/qt-5/qqmlproperty.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if <i>other</i> and this <a href="http://doc.qt.io/qt-5/qqmlproperty.html">QQmlProperty</a> represent the same property.</p></div>
19076    #[inline(always)]
19077    fn eq(&self, arg1: &::cpp_core::Ref<crate::QQmlProperty>) -> bool {
19078        unsafe {
19079            crate::__ffi::ctr_qt_qml_ffi_QQmlProperty_operator__(
19080                self as *const crate::QQmlProperty,
19081                arg1.as_raw_ptr(),
19082            )
19083        }
19084    }
19085}
19086
19087impl ::cpp_core::CppDeletable for crate::QQmlPropertyMap {
19088    /// <p>Destroys the bindable map.</p>
19089    ///
19090    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void QQmlPropertyMap::~QQmlPropertyMap()```</span>.
19091    ///
19092    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#dtor.QQmlPropertyMap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the bindable map.</p></div>
19093    #[inline(always)]
19094    unsafe fn delete(&self) {
19095        crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_dQQmlPropertyMap(
19096            self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
19097        )
19098    }
19099}
19100
19101impl ::cpp_core::vector_ops::Size for crate::QQmlPropertyMap {
19102    /// <p>Returns the number of keys in the map.</p>
19103    ///
19104    /// Calls C++ function: <span style='color: green;'>```int QQmlPropertyMap::size() const```</span>.
19105    ///
19106    /// <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of keys in the map.</p>
19107    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qqmlpropertymap.html#count">count</a>().</p></div>
19108    #[inline(always)]
19109    unsafe fn size(&self) -> usize {
19110        let ffi_result = {
19111            crate::__ffi::ctr_qt_qml_ffi_QQmlPropertyMap_size(self as *const crate::QQmlPropertyMap)
19112        };
19113        ffi_result as usize
19114    }
19115}
19116
19117impl ::cpp_core::CppDeletable for crate::QQmlDebuggingEnabler {
19118    /// Calls C++ function: <span style='color: green;'>```[destructor] void QQmlDebuggingEnabler::~QQmlDebuggingEnabler()```</span>.
19119    #[inline(always)]
19120    unsafe fn delete(&self) {
19121        crate::__ffi::ctr_qt_qml_ffi_QQmlDebuggingEnabler_dQQmlDebuggingEnabler(
19122            self as *const crate::QQmlDebuggingEnabler as *mut crate::QQmlDebuggingEnabler,
19123        )
19124    }
19125}
19126
19127impl ::cpp_core::CppDeletable for crate::QListOfQJSValue {
19128    /// <p>Destroys the list. References to the values in the list and all iterators of this list become invalid.</p>
19129    ///
19130    /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QJSValue>::~QList()```</span>.
19131    ///
19132    /// <a href="http://doc.qt.io/qt-5/qlist.html#dtor.QList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the list. References to the values in the list and all iterators of this list become invalid.</p></div>
19133    #[inline(always)]
19134    unsafe fn delete(&self) {
19135        crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_dQList(
19136            self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
19137        )
19138    }
19139}
19140
19141impl ::cpp_core::CppDeletable for crate::QListOfQQmlError {
19142    /// <p>Destroys the list. References to the values in the list and all iterators of this list become invalid.</p>
19143    ///
19144    /// Calls C++ function: <span style='color: green;'>```[destructor] void QList<QQmlError>::~QList()```</span>.
19145    ///
19146    /// <a href="http://doc.qt.io/qt-5/qlist.html#dtor.QList">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the list. References to the values in the list and all iterators of this list become invalid.</p></div>
19147    #[inline(always)]
19148    unsafe fn delete(&self) {
19149        crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_dQList(
19150            self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
19151        )
19152    }
19153}
19154
19155impl ::cpp_core::vector_ops::Size for crate::QListOfQJSValue {
19156    /// <p>Returns the number of items in the list.</p>
19157    ///
19158    /// Calls C++ function: <span style='color: green;'>```int QList<QJSValue>::size() const```</span>.
19159    ///
19160    /// <a href="http://doc.qt.io/qt-5/qlist.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the list.</p>
19161    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p></div>
19162    #[inline(always)]
19163    unsafe fn size(&self) -> usize {
19164        let ffi_result = {
19165            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_size(self as *const crate::QListOfQJSValue)
19166        };
19167        ffi_result as usize
19168    }
19169}
19170
19171impl ::cpp_core::vector_ops::Size for crate::QListOfQQmlError {
19172    /// <p>Returns the number of items in the list.</p>
19173    ///
19174    /// Calls C++ function: <span style='color: green;'>```int QList<QQmlError>::size() const```</span>.
19175    ///
19176    /// <a href="http://doc.qt.io/qt-5/qlist.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the list.</p>
19177    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#count-1">count</a>().</p></div>
19178    #[inline(always)]
19179    unsafe fn size(&self) -> usize {
19180        let ffi_result = {
19181            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_size(
19182                self as *const crate::QListOfQQmlError,
19183            )
19184        };
19185        ffi_result as usize
19186    }
19187}
19188
19189impl ::cpp_core::ops::BeginMut for crate::QListOfQJSValue {
19190    type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator>;
19191    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
19192    ///
19193    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::begin()```</span>.
19194    ///
19195    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
19196    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
19197    #[inline(always)]
19198    unsafe fn begin_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
19199        let ffi_result = {
19200            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_begin(
19201                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
19202            )
19203        };
19204        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19205    }
19206}
19207
19208impl ::cpp_core::ops::BeginMut for crate::QListOfQQmlError {
19209    type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator>;
19210    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
19211    ///
19212    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::begin()```</span>.
19213    ///
19214    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the first item in the list.</p>
19215    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#constBegin">constBegin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#end">end</a>().</p></div>
19216    #[inline(always)]
19217    unsafe fn begin_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
19218        let ffi_result = {
19219            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_begin(
19220                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
19221            )
19222        };
19223        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19224    }
19225}
19226
19227impl ::cpp_core::ops::Begin for crate::QListOfQJSValue {
19228    type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator>;
19229    /// <p>This is an overloaded function.</p>
19230    ///
19231    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::begin() const```</span>.
19232    ///
19233    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
19234    #[inline(always)]
19235    unsafe fn begin(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
19236        let ffi_result = {
19237            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_begin1(
19238                self as *const crate::QListOfQJSValue,
19239            )
19240        };
19241        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19242    }
19243}
19244
19245impl ::cpp_core::ops::Begin for crate::QListOfQQmlError {
19246    type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator>;
19247    /// <p>This is an overloaded function.</p>
19248    ///
19249    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::begin() const```</span>.
19250    ///
19251    /// <a href="http://doc.qt.io/qt-5/qlist.html#begin-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
19252    #[inline(always)]
19253    unsafe fn begin(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
19254        let ffi_result = {
19255            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_begin1(
19256                self as *const crate::QListOfQQmlError,
19257            )
19258        };
19259        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19260    }
19261}
19262
19263impl ::cpp_core::ops::EndMut for crate::QListOfQJSValue {
19264    type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator>;
19265    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
19266    ///
19267    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::iterator QList<QJSValue>::end()```</span>.
19268    ///
19269    /// <a href="http://doc.qt.io/qt-5/qlist.html#end">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
19270    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">constEnd</a>().</p></div>
19271    #[inline(always)]
19272    unsafe fn end_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::Iterator> {
19273        let ffi_result = {
19274            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_end(
19275                self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
19276            )
19277        };
19278        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19279    }
19280}
19281
19282impl ::cpp_core::ops::EndMut for crate::QListOfQQmlError {
19283    type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator>;
19284    /// <p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
19285    ///
19286    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::iterator QList<QQmlError>::end()```</span>.
19287    ///
19288    /// <a href="http://doc.qt.io/qt-5/qlist.html#end">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns an <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterator</a> pointing to the imaginary item after the last item in the list.</p>
19289    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#begin">begin</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#constEnd">constEnd</a>().</p></div>
19290    #[inline(always)]
19291    unsafe fn end_mut(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::Iterator> {
19292        let ffi_result = {
19293            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_end(
19294                self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
19295            )
19296        };
19297        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19298    }
19299}
19300
19301impl ::cpp_core::ops::End for crate::QListOfQJSValue {
19302    type Output = ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator>;
19303    /// <p>This is an overloaded function.</p>
19304    ///
19305    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>::const_iterator QList<QJSValue>::end() const```</span>.
19306    ///
19307    /// <a href="http://doc.qt.io/qt-5/qlist.html#end-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
19308    #[inline(always)]
19309    unsafe fn end(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_j_s_value::ConstIterator> {
19310        let ffi_result = {
19311            crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_end1(self as *const crate::QListOfQJSValue)
19312        };
19313        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19314    }
19315}
19316
19317impl ::cpp_core::ops::End for crate::QListOfQQmlError {
19318    type Output = ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator>;
19319    /// <p>This is an overloaded function.</p>
19320    ///
19321    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>::const_iterator QList<QQmlError>::end() const```</span>.
19322    ///
19323    /// <a href="http://doc.qt.io/qt-5/qlist.html#end-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
19324    #[inline(always)]
19325    unsafe fn end(&self) -> ::cpp_core::CppBox<crate::q_list_of_q_qml_error::ConstIterator> {
19326        let ffi_result = {
19327            crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_end1(
19328                self as *const crate::QListOfQQmlError,
19329            )
19330        };
19331        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19332    }
19333}
19334
19335impl ::std::ops::Add<::cpp_core::Ref<crate::QListOfQJSValue>> for &crate::QListOfQJSValue {
19336    type Output = ::cpp_core::CppBox<crate::QListOfQJSValue>;
19337    /// <p>Returns a list that contains all the items in this list followed by all the items in the <i>other</i> list.</p>
19338    ///
19339    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue> QList<QJSValue>::operator+(const QList<QJSValue>& l) const```</span>.
19340    ///
19341    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a list that contains all the items in this list followed by all the items in the <i>other</i> list.</p>
19342    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">operator+=</a>().</p></div>
19343    #[inline(always)]
19344    fn add(
19345        self,
19346        l: ::cpp_core::Ref<crate::QListOfQJSValue>,
19347    ) -> ::cpp_core::CppBox<crate::QListOfQJSValue> {
19348        let ffi_result = {
19349            unsafe {
19350                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator_2(
19351                    self as *const crate::QListOfQJSValue,
19352                    l.as_raw_ptr(),
19353                )
19354            }
19355        };
19356        unsafe {
19357            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19358        }
19359    }
19360}
19361
19362impl ::std::ops::Add<::cpp_core::Ref<crate::QListOfQQmlError>> for &crate::QListOfQQmlError {
19363    type Output = ::cpp_core::CppBox<crate::QListOfQQmlError>;
19364    /// <p>Returns a list that contains all the items in this list followed by all the items in the <i>other</i> list.</p>
19365    ///
19366    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError> QList<QQmlError>::operator+(const QList<QQmlError>& l) const```</span>.
19367    ///
19368    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a list that contains all the items in this list followed by all the items in the <i>other</i> list.</p>
19369    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">operator+=</a>().</p></div>
19370    #[inline(always)]
19371    fn add(
19372        self,
19373        l: ::cpp_core::Ref<crate::QListOfQQmlError>,
19374    ) -> ::cpp_core::CppBox<crate::QListOfQQmlError> {
19375        let ffi_result = {
19376            unsafe {
19377                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator_2(
19378                    self as *const crate::QListOfQQmlError,
19379                    l.as_raw_ptr(),
19380                )
19381            }
19382        };
19383        unsafe {
19384            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19385        }
19386    }
19387}
19388
19389impl ::std::ops::Shl<::cpp_core::Ref<crate::QJSValue>> for &crate::QListOfQJSValue {
19390    type Output = ::cpp_core::Ref<crate::QListOfQJSValue>;
19391    /// <p>This is an overloaded function.</p>
19392    ///
19393    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>& QList<QJSValue>::operator<<(const QJSValue& t)```</span>.
19394    ///
19395    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
19396    /// <p>Appends <i>value</i> to the list.</p></div>
19397    #[inline(always)]
19398    fn shl(self, t: ::cpp_core::Ref<crate::QJSValue>) -> ::cpp_core::Ref<crate::QListOfQJSValue> {
19399        let ffi_result = {
19400            unsafe {
19401                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator__6(
19402                    self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
19403                    t.as_raw_ptr(),
19404                )
19405            }
19406        };
19407        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19408    }
19409}
19410
19411impl ::std::ops::Shl<::cpp_core::Ref<crate::QQmlError>> for &crate::QListOfQQmlError {
19412    type Output = ::cpp_core::Ref<crate::QListOfQQmlError>;
19413    /// <p>This is an overloaded function.</p>
19414    ///
19415    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>& QList<QQmlError>::operator<<(const QQmlError& t)```</span>.
19416    ///
19417    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
19418    /// <p>Appends <i>value</i> to the list.</p></div>
19419    #[inline(always)]
19420    fn shl(self, t: ::cpp_core::Ref<crate::QQmlError>) -> ::cpp_core::Ref<crate::QListOfQQmlError> {
19421        let ffi_result = {
19422            unsafe {
19423                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator__6(
19424                    self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
19425                    t.as_raw_ptr(),
19426                )
19427            }
19428        };
19429        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19430    }
19431}
19432
19433impl ::std::ops::Shl<::cpp_core::Ref<crate::QListOfQJSValue>> for &crate::QListOfQJSValue {
19434    type Output = ::cpp_core::Ref<crate::QListOfQJSValue>;
19435    /// <p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
19436    ///
19437    /// Calls C++ function: <span style='color: green;'>```QList<QJSValue>& QList<QJSValue>::operator<<(const QList<QJSValue>& l)```</span>.
19438    ///
19439    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
19440    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">operator+=</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>().</p></div>
19441    #[inline(always)]
19442    fn shl(
19443        self,
19444        l: ::cpp_core::Ref<crate::QListOfQJSValue>,
19445    ) -> ::cpp_core::Ref<crate::QListOfQJSValue> {
19446        let ffi_result = {
19447            unsafe {
19448                crate::__ffi::ctr_qt_qml_ffi_QList_QJSValue_operator__7(
19449                    self as *const crate::QListOfQJSValue as *mut crate::QListOfQJSValue,
19450                    l.as_raw_ptr(),
19451                )
19452            }
19453        };
19454        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19455    }
19456}
19457
19458impl ::std::ops::Shl<::cpp_core::Ref<crate::QListOfQQmlError>> for &crate::QListOfQQmlError {
19459    type Output = ::cpp_core::Ref<crate::QListOfQQmlError>;
19460    /// <p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
19461    ///
19462    /// Calls C++ function: <span style='color: green;'>```QList<QQmlError>& QList<QQmlError>::operator<<(const QList<QQmlError>& l)```</span>.
19463    ///
19464    /// <a href="http://doc.qt.io/qt-5/qlist.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> list to this list and returns a reference to this list.</p>
19465    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#operator-2b-eq">operator+=</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#append">append</a>().</p></div>
19466    #[inline(always)]
19467    fn shl(
19468        self,
19469        l: ::cpp_core::Ref<crate::QListOfQQmlError>,
19470    ) -> ::cpp_core::Ref<crate::QListOfQQmlError> {
19471        let ffi_result = {
19472            unsafe {
19473                crate::__ffi::ctr_qt_qml_ffi_QList_QQmlError_operator__7(
19474                    self as *const crate::QListOfQQmlError as *mut crate::QListOfQQmlError,
19475                    l.as_raw_ptr(),
19476                )
19477            }
19478        };
19479        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19480    }
19481}
19482
19483#[cfg_attr(
19484    feature = "ritual_rustdoc_nightly",
19485    doc(cfg(any(
19486        cpp_lib_version = "5.13.0",
19487        cpp_lib_version = "5.11.3",
19488        cpp_lib_version = "5.12.2",
19489        cpp_lib_version = "5.14.0"
19490    )))
19491)]
19492#[cfg(any(
19493    any(
19494        cpp_lib_version = "5.13.0",
19495        cpp_lib_version = "5.11.3",
19496        cpp_lib_version = "5.12.2",
19497        cpp_lib_version = "5.14.0"
19498    ),
19499    feature = "ritual_rustdoc"
19500))]
19501impl ::cpp_core::CppDeletable for crate::QVectorOfPropertyPair {
19502    /// <p>Destroys the vector.</p>
19503    ///
19504    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<QQmlContext::PropertyPair>::~QVector()```</span>.
19505    ///
19506    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
19507    #[inline(always)]
19508    unsafe fn delete(&self) {
19509        crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_dQVector(
19510            self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
19511        )
19512    }
19513}
19514
19515#[cfg_attr(
19516    feature = "ritual_rustdoc_nightly",
19517    doc(cfg(any(
19518        cpp_lib_version = "5.13.0",
19519        cpp_lib_version = "5.11.3",
19520        cpp_lib_version = "5.12.2",
19521        cpp_lib_version = "5.14.0"
19522    )))
19523)]
19524#[cfg(any(
19525    any(
19526        cpp_lib_version = "5.13.0",
19527        cpp_lib_version = "5.11.3",
19528        cpp_lib_version = "5.12.2",
19529        cpp_lib_version = "5.14.0"
19530    ),
19531    feature = "ritual_rustdoc"
19532))]
19533impl ::cpp_core::vector_ops::Size for crate::QVectorOfPropertyPair {
19534    /// <p>Returns the number of items in the vector.</p>
19535    ///
19536    /// Calls C++ function: <span style='color: green;'>```int QVector<QQmlContext::PropertyPair>::size() const```</span>.
19537    ///
19538    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
19539    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
19540    #[inline(always)]
19541    unsafe fn size(&self) -> usize {
19542        let ffi_result = {
19543            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_size(
19544                self as *const crate::QVectorOfPropertyPair,
19545            )
19546        };
19547        ffi_result as usize
19548    }
19549}
19550
19551#[cfg_attr(
19552    feature = "ritual_rustdoc_nightly",
19553    doc(cfg(any(
19554        cpp_lib_version = "5.13.0",
19555        cpp_lib_version = "5.11.3",
19556        cpp_lib_version = "5.12.2",
19557        cpp_lib_version = "5.14.0"
19558    )))
19559)]
19560#[cfg(any(
19561    any(
19562        cpp_lib_version = "5.13.0",
19563        cpp_lib_version = "5.11.3",
19564        cpp_lib_version = "5.12.2",
19565        cpp_lib_version = "5.14.0"
19566    ),
19567    feature = "ritual_rustdoc"
19568))]
19569impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfPropertyPair {
19570    type Output = ::cpp_core::Ptr<crate::q_qml_context::PropertyPair>;
19571    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
19572    ///
19573    /// Calls C++ function: <span style='color: green;'>```QQmlContext::PropertyPair* QVector<QQmlContext::PropertyPair>::data()```</span>.
19574    ///
19575    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
19576    /// <p>Example:</p>
19577    /// <pre class="cpp">
19578    ///
19579    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
19580    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
19581    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
19582    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
19583    ///
19584    /// </pre>
19585    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
19586    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
19587    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
19588    #[inline(always)]
19589    unsafe fn data_mut(&self) -> ::cpp_core::Ptr<crate::q_qml_context::PropertyPair> {
19590        let ffi_result = {
19591            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_data(
19592                self as *const crate::QVectorOfPropertyPair as *mut crate::QVectorOfPropertyPair,
19593            )
19594        };
19595        ::cpp_core::Ptr::from_raw(ffi_result)
19596    }
19597}
19598
19599#[cfg_attr(
19600    feature = "ritual_rustdoc_nightly",
19601    doc(cfg(any(
19602        cpp_lib_version = "5.13.0",
19603        cpp_lib_version = "5.11.3",
19604        cpp_lib_version = "5.12.2",
19605        cpp_lib_version = "5.14.0"
19606    )))
19607)]
19608#[cfg(any(
19609    any(
19610        cpp_lib_version = "5.13.0",
19611        cpp_lib_version = "5.11.3",
19612        cpp_lib_version = "5.12.2",
19613        cpp_lib_version = "5.14.0"
19614    ),
19615    feature = "ritual_rustdoc"
19616))]
19617impl ::cpp_core::vector_ops::Data for crate::QVectorOfPropertyPair {
19618    type Output = ::cpp_core::Ptr<crate::q_qml_context::PropertyPair>;
19619    /// <p>This is an overloaded function.</p>
19620    ///
19621    /// Calls C++ function: <span style='color: green;'>```const QQmlContext::PropertyPair* QVector<QQmlContext::PropertyPair>::data() const```</span>.
19622    ///
19623    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
19624    #[inline(always)]
19625    unsafe fn data(&self) -> ::cpp_core::Ptr<crate::q_qml_context::PropertyPair> {
19626        let ffi_result = {
19627            crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_data1(
19628                self as *const crate::QVectorOfPropertyPair,
19629            )
19630        };
19631        ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::q_qml_context::PropertyPair)
19632    }
19633}
19634
19635#[cfg_attr(
19636    feature = "ritual_rustdoc_nightly",
19637    doc(cfg(any(
19638        cpp_lib_version = "5.13.0",
19639        cpp_lib_version = "5.11.3",
19640        cpp_lib_version = "5.12.2",
19641        cpp_lib_version = "5.14.0"
19642    )))
19643)]
19644#[cfg(any(
19645    any(
19646        cpp_lib_version = "5.13.0",
19647        cpp_lib_version = "5.11.3",
19648        cpp_lib_version = "5.12.2",
19649        cpp_lib_version = "5.14.0"
19650    ),
19651    feature = "ritual_rustdoc"
19652))]
19653impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfPropertyPair>>
19654    for &crate::QVectorOfPropertyPair
19655{
19656    type Output = ::cpp_core::CppBox<crate::QVectorOfPropertyPair>;
19657    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
19658    ///
19659    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair> QVector<QQmlContext::PropertyPair>::operator+(const QVector<QQmlContext::PropertyPair>& l) const```</span>.
19660    ///
19661    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
19662    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
19663    #[inline(always)]
19664    fn add(
19665        self,
19666        l: ::cpp_core::Ref<crate::QVectorOfPropertyPair>,
19667    ) -> ::cpp_core::CppBox<crate::QVectorOfPropertyPair> {
19668        let ffi_result = {
19669            unsafe {
19670                crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator_2(
19671                    self as *const crate::QVectorOfPropertyPair,
19672                    l.as_raw_ptr(),
19673                )
19674            }
19675        };
19676        unsafe {
19677            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19678        }
19679    }
19680}
19681
19682#[cfg_attr(
19683    feature = "ritual_rustdoc_nightly",
19684    doc(cfg(any(
19685        cpp_lib_version = "5.13.0",
19686        cpp_lib_version = "5.11.3",
19687        cpp_lib_version = "5.12.2",
19688        cpp_lib_version = "5.14.0"
19689    )))
19690)]
19691#[cfg(any(
19692    any(
19693        cpp_lib_version = "5.13.0",
19694        cpp_lib_version = "5.11.3",
19695        cpp_lib_version = "5.12.2",
19696        cpp_lib_version = "5.14.0"
19697    ),
19698    feature = "ritual_rustdoc"
19699))]
19700impl ::std::ops::Shl<::cpp_core::Ref<crate::q_qml_context::PropertyPair>>
19701    for &crate::QVectorOfPropertyPair
19702{
19703    type Output = ::cpp_core::Ref<crate::QVectorOfPropertyPair>;
19704    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
19705    ///
19706    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::operator<<(const QQmlContext::PropertyPair& t)```</span>.
19707    ///
19708    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
19709    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
19710    #[inline(always)]
19711    fn shl(
19712        self,
19713        t: ::cpp_core::Ref<crate::q_qml_context::PropertyPair>,
19714    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
19715        let ffi_result = {
19716            unsafe {
19717                crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator__6(
19718                    self as *const crate::QVectorOfPropertyPair
19719                        as *mut crate::QVectorOfPropertyPair,
19720                    t.as_raw_ptr(),
19721                )
19722            }
19723        };
19724        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19725    }
19726}
19727
19728#[cfg_attr(
19729    feature = "ritual_rustdoc_nightly",
19730    doc(cfg(any(
19731        cpp_lib_version = "5.13.0",
19732        cpp_lib_version = "5.11.3",
19733        cpp_lib_version = "5.12.2",
19734        cpp_lib_version = "5.14.0"
19735    )))
19736)]
19737#[cfg(any(
19738    any(
19739        cpp_lib_version = "5.13.0",
19740        cpp_lib_version = "5.11.3",
19741        cpp_lib_version = "5.12.2",
19742        cpp_lib_version = "5.14.0"
19743    ),
19744    feature = "ritual_rustdoc"
19745))]
19746impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfPropertyPair>>
19747    for &crate::QVectorOfPropertyPair
19748{
19749    type Output = ::cpp_core::Ref<crate::QVectorOfPropertyPair>;
19750    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
19751    ///
19752    /// Calls C++ function: <span style='color: green;'>```QVector<QQmlContext::PropertyPair>& QVector<QQmlContext::PropertyPair>::operator<<(const QVector<QQmlContext::PropertyPair>& l)```</span>.
19753    ///
19754    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
19755    #[inline(always)]
19756    fn shl(
19757        self,
19758        l: ::cpp_core::Ref<crate::QVectorOfPropertyPair>,
19759    ) -> ::cpp_core::Ref<crate::QVectorOfPropertyPair> {
19760        let ffi_result = {
19761            unsafe {
19762                crate::__ffi::ctr_qt_qml_ffi_QVector_QQmlContext_PropertyPair_operator__7(
19763                    self as *const crate::QVectorOfPropertyPair
19764                        as *mut crate::QVectorOfPropertyPair,
19765                    l.as_raw_ptr(),
19766                )
19767            }
19768        };
19769        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
19770    }
19771}
19772
19773impl ::cpp_core::StaticDowncast<crate::QJSEngine> for ::qt_core::QObject {
19774    /// Calls C++ function: <span style='color: green;'>```QJSEngine* static_cast<QJSEngine*>(QObject* ptr)```</span>.
19775    #[inline(always)]
19776    unsafe fn static_downcast(
19777        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
19778    ) -> ::cpp_core::Ptr<crate::QJSEngine> {
19779        let ffi_result = {
19780            crate::__ffi::ctr_qt_qml_ffi_static_cast_QJSEngine_ptr(
19781                ptr.as_raw_ptr() as *mut ::qt_core::QObject
19782            )
19783        };
19784        ::cpp_core::Ptr::from_raw(ffi_result)
19785    }
19786}
19787
19788impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QJSEngine {
19789    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QJSEngine* ptr)```</span>.
19790    #[inline(always)]
19791    unsafe fn static_upcast(
19792        ptr: ::cpp_core::Ptr<crate::QJSEngine>,
19793    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
19794        let ffi_result = {
19795            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr(
19796                ptr.as_raw_ptr() as *mut crate::QJSEngine
19797            )
19798        };
19799        ::cpp_core::Ptr::from_raw(ffi_result)
19800    }
19801}
19802
19803impl ::std::ops::Deref for crate::QJSEngine {
19804    type Target = ::qt_core::QObject;
19805    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QJSEngine* ptr)```</span>.
19806    #[inline(always)]
19807    fn deref(&self) -> &::qt_core::QObject {
19808        let ffi_result = {
19809            unsafe {
19810                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr(
19811                    self as *const crate::QJSEngine as *mut crate::QJSEngine,
19812                )
19813            }
19814        };
19815        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
19816    }
19817}
19818
19819impl ::cpp_core::DynamicCast<crate::QJSEngine> for ::qt_core::QObject {
19820    /// Calls C++ function: <span style='color: green;'>```QJSEngine* dynamic_cast<QJSEngine*>(QObject* ptr)```</span>.
19821    #[inline(always)]
19822    unsafe fn dynamic_cast(
19823        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
19824    ) -> ::cpp_core::Ptr<crate::QJSEngine> {
19825        let ffi_result = {
19826            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QJSEngine_ptr(
19827                ptr.as_raw_ptr() as *mut ::qt_core::QObject
19828            )
19829        };
19830        ::cpp_core::Ptr::from_raw(ffi_result)
19831    }
19832}
19833
19834impl ::cpp_core::StaticDowncast<crate::QQmlEngine> for crate::QJSEngine {
19835    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* static_cast<QQmlEngine*>(QJSEngine* ptr)```</span>.
19836    #[inline(always)]
19837    unsafe fn static_downcast(
19838        ptr: ::cpp_core::Ptr<crate::QJSEngine>,
19839    ) -> ::cpp_core::Ptr<crate::QQmlEngine> {
19840        let ffi_result = {
19841            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlEngine_ptr(
19842                ptr.as_raw_ptr() as *mut crate::QJSEngine
19843            )
19844        };
19845        ::cpp_core::Ptr::from_raw(ffi_result)
19846    }
19847}
19848
19849impl ::cpp_core::StaticUpcast<crate::QJSEngine> for crate::QQmlEngine {
19850    /// Calls C++ function: <span style='color: green;'>```QJSEngine* static_cast<QJSEngine*>(QQmlEngine* ptr)```</span>.
19851    #[inline(always)]
19852    unsafe fn static_upcast(
19853        ptr: ::cpp_core::Ptr<crate::QQmlEngine>,
19854    ) -> ::cpp_core::Ptr<crate::QJSEngine> {
19855        let ffi_result = {
19856            crate::__ffi::ctr_qt_qml_ffi_static_cast_QJSEngine_ptr1(
19857                ptr.as_raw_ptr() as *mut crate::QQmlEngine
19858            )
19859        };
19860        ::cpp_core::Ptr::from_raw(ffi_result)
19861    }
19862}
19863
19864impl ::std::ops::Deref for crate::QQmlEngine {
19865    type Target = crate::QJSEngine;
19866    /// Calls C++ function: <span style='color: green;'>```QJSEngine* static_cast<QJSEngine*>(QQmlEngine* ptr)```</span>.
19867    #[inline(always)]
19868    fn deref(&self) -> &crate::QJSEngine {
19869        let ffi_result = {
19870            unsafe {
19871                crate::__ffi::ctr_qt_qml_ffi_static_cast_QJSEngine_ptr1(
19872                    self as *const crate::QQmlEngine as *mut crate::QQmlEngine,
19873                )
19874            }
19875        };
19876        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
19877    }
19878}
19879
19880impl ::cpp_core::DynamicCast<crate::QQmlEngine> for crate::QJSEngine {
19881    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* dynamic_cast<QQmlEngine*>(QJSEngine* ptr)```</span>.
19882    #[inline(always)]
19883    unsafe fn dynamic_cast(
19884        ptr: ::cpp_core::Ptr<crate::QJSEngine>,
19885    ) -> ::cpp_core::Ptr<crate::QQmlEngine> {
19886        let ffi_result = {
19887            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlEngine_ptr(
19888                ptr.as_raw_ptr() as *mut crate::QJSEngine
19889            )
19890        };
19891        ::cpp_core::Ptr::from_raw(ffi_result)
19892    }
19893}
19894
19895impl ::cpp_core::StaticDowncast<crate::QQmlEngine> for ::qt_core::QObject {
19896    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* static_cast<QQmlEngine*>(QObject* ptr)```</span>.
19897    #[inline(always)]
19898    unsafe fn static_downcast(
19899        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
19900    ) -> ::cpp_core::Ptr<crate::QQmlEngine> {
19901        let ffi_result = {
19902            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlEngine_ptr1(
19903                ptr.as_raw_ptr() as *mut ::qt_core::QObject
19904            )
19905        };
19906        ::cpp_core::Ptr::from_raw(ffi_result)
19907    }
19908}
19909
19910impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlEngine {
19911    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlEngine* ptr)```</span>.
19912    #[inline(always)]
19913    unsafe fn static_upcast(
19914        ptr: ::cpp_core::Ptr<crate::QQmlEngine>,
19915    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
19916        let ffi_result = {
19917            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr1(
19918                ptr.as_raw_ptr() as *mut crate::QQmlEngine
19919            )
19920        };
19921        ::cpp_core::Ptr::from_raw(ffi_result)
19922    }
19923}
19924
19925impl ::cpp_core::DynamicCast<crate::QQmlEngine> for ::qt_core::QObject {
19926    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* dynamic_cast<QQmlEngine*>(QObject* ptr)```</span>.
19927    #[inline(always)]
19928    unsafe fn dynamic_cast(
19929        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
19930    ) -> ::cpp_core::Ptr<crate::QQmlEngine> {
19931        let ffi_result = {
19932            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlEngine_ptr1(
19933                ptr.as_raw_ptr() as *mut ::qt_core::QObject
19934            )
19935        };
19936        ::cpp_core::Ptr::from_raw(ffi_result)
19937    }
19938}
19939
19940impl ::cpp_core::StaticDowncast<crate::QQmlApplicationEngine> for crate::QQmlEngine {
19941    /// Calls C++ function: <span style='color: green;'>```QQmlApplicationEngine* static_cast<QQmlApplicationEngine*>(QQmlEngine* ptr)```</span>.
19942    #[inline(always)]
19943    unsafe fn static_downcast(
19944        ptr: ::cpp_core::Ptr<crate::QQmlEngine>,
19945    ) -> ::cpp_core::Ptr<crate::QQmlApplicationEngine> {
19946        let ffi_result = {
19947            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlApplicationEngine_ptr(
19948                ptr.as_raw_ptr() as *mut crate::QQmlEngine
19949            )
19950        };
19951        ::cpp_core::Ptr::from_raw(ffi_result)
19952    }
19953}
19954
19955impl ::cpp_core::StaticUpcast<crate::QQmlEngine> for crate::QQmlApplicationEngine {
19956    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* static_cast<QQmlEngine*>(QQmlApplicationEngine* ptr)```</span>.
19957    #[inline(always)]
19958    unsafe fn static_upcast(
19959        ptr: ::cpp_core::Ptr<crate::QQmlApplicationEngine>,
19960    ) -> ::cpp_core::Ptr<crate::QQmlEngine> {
19961        let ffi_result = {
19962            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlEngine_ptr2(
19963                ptr.as_raw_ptr() as *mut crate::QQmlApplicationEngine
19964            )
19965        };
19966        ::cpp_core::Ptr::from_raw(ffi_result)
19967    }
19968}
19969
19970impl ::std::ops::Deref for crate::QQmlApplicationEngine {
19971    type Target = crate::QQmlEngine;
19972    /// Calls C++ function: <span style='color: green;'>```QQmlEngine* static_cast<QQmlEngine*>(QQmlApplicationEngine* ptr)```</span>.
19973    #[inline(always)]
19974    fn deref(&self) -> &crate::QQmlEngine {
19975        let ffi_result = {
19976            unsafe {
19977                crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlEngine_ptr2(
19978                    self as *const crate::QQmlApplicationEngine
19979                        as *mut crate::QQmlApplicationEngine,
19980                )
19981            }
19982        };
19983        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
19984    }
19985}
19986
19987impl ::cpp_core::DynamicCast<crate::QQmlApplicationEngine> for crate::QQmlEngine {
19988    /// Calls C++ function: <span style='color: green;'>```QQmlApplicationEngine* dynamic_cast<QQmlApplicationEngine*>(QQmlEngine* ptr)```</span>.
19989    #[inline(always)]
19990    unsafe fn dynamic_cast(
19991        ptr: ::cpp_core::Ptr<crate::QQmlEngine>,
19992    ) -> ::cpp_core::Ptr<crate::QQmlApplicationEngine> {
19993        let ffi_result = {
19994            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlApplicationEngine_ptr(
19995                ptr.as_raw_ptr() as *mut crate::QQmlEngine
19996            )
19997        };
19998        ::cpp_core::Ptr::from_raw(ffi_result)
19999    }
20000}
20001
20002impl ::cpp_core::StaticDowncast<crate::QQmlApplicationEngine> for crate::QJSEngine {
20003    /// Calls C++ function: <span style='color: green;'>```QQmlApplicationEngine* static_cast<QQmlApplicationEngine*>(QJSEngine* ptr)```</span>.
20004    #[inline(always)]
20005    unsafe fn static_downcast(
20006        ptr: ::cpp_core::Ptr<crate::QJSEngine>,
20007    ) -> ::cpp_core::Ptr<crate::QQmlApplicationEngine> {
20008        let ffi_result = {
20009            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlApplicationEngine_ptr1(
20010                ptr.as_raw_ptr() as *mut crate::QJSEngine
20011            )
20012        };
20013        ::cpp_core::Ptr::from_raw(ffi_result)
20014    }
20015}
20016
20017impl ::cpp_core::StaticUpcast<crate::QJSEngine> for crate::QQmlApplicationEngine {
20018    /// Calls C++ function: <span style='color: green;'>```QJSEngine* static_cast<QJSEngine*>(QQmlApplicationEngine* ptr)```</span>.
20019    #[inline(always)]
20020    unsafe fn static_upcast(
20021        ptr: ::cpp_core::Ptr<crate::QQmlApplicationEngine>,
20022    ) -> ::cpp_core::Ptr<crate::QJSEngine> {
20023        let ffi_result = {
20024            crate::__ffi::ctr_qt_qml_ffi_static_cast_QJSEngine_ptr2(
20025                ptr.as_raw_ptr() as *mut crate::QQmlApplicationEngine
20026            )
20027        };
20028        ::cpp_core::Ptr::from_raw(ffi_result)
20029    }
20030}
20031
20032impl ::cpp_core::DynamicCast<crate::QQmlApplicationEngine> for crate::QJSEngine {
20033    /// Calls C++ function: <span style='color: green;'>```QQmlApplicationEngine* dynamic_cast<QQmlApplicationEngine*>(QJSEngine* ptr)```</span>.
20034    #[inline(always)]
20035    unsafe fn dynamic_cast(
20036        ptr: ::cpp_core::Ptr<crate::QJSEngine>,
20037    ) -> ::cpp_core::Ptr<crate::QQmlApplicationEngine> {
20038        let ffi_result = {
20039            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlApplicationEngine_ptr1(
20040                ptr.as_raw_ptr() as *mut crate::QJSEngine
20041            )
20042        };
20043        ::cpp_core::Ptr::from_raw(ffi_result)
20044    }
20045}
20046
20047impl ::cpp_core::StaticDowncast<crate::QQmlApplicationEngine> for ::qt_core::QObject {
20048    /// Calls C++ function: <span style='color: green;'>```QQmlApplicationEngine* static_cast<QQmlApplicationEngine*>(QObject* ptr)```</span>.
20049    #[inline(always)]
20050    unsafe fn static_downcast(
20051        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20052    ) -> ::cpp_core::Ptr<crate::QQmlApplicationEngine> {
20053        let ffi_result = {
20054            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlApplicationEngine_ptr2(
20055                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20056            )
20057        };
20058        ::cpp_core::Ptr::from_raw(ffi_result)
20059    }
20060}
20061
20062impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlApplicationEngine {
20063    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlApplicationEngine* ptr)```</span>.
20064    #[inline(always)]
20065    unsafe fn static_upcast(
20066        ptr: ::cpp_core::Ptr<crate::QQmlApplicationEngine>,
20067    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20068        let ffi_result = {
20069            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr2(
20070                ptr.as_raw_ptr() as *mut crate::QQmlApplicationEngine
20071            )
20072        };
20073        ::cpp_core::Ptr::from_raw(ffi_result)
20074    }
20075}
20076
20077impl ::cpp_core::DynamicCast<crate::QQmlApplicationEngine> for ::qt_core::QObject {
20078    /// Calls C++ function: <span style='color: green;'>```QQmlApplicationEngine* dynamic_cast<QQmlApplicationEngine*>(QObject* ptr)```</span>.
20079    #[inline(always)]
20080    unsafe fn dynamic_cast(
20081        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20082    ) -> ::cpp_core::Ptr<crate::QQmlApplicationEngine> {
20083        let ffi_result = {
20084            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlApplicationEngine_ptr2(
20085                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20086            )
20087        };
20088        ::cpp_core::Ptr::from_raw(ffi_result)
20089    }
20090}
20091
20092impl ::cpp_core::StaticDowncast<crate::QQmlComponent> for ::qt_core::QObject {
20093    /// Calls C++ function: <span style='color: green;'>```QQmlComponent* static_cast<QQmlComponent*>(QObject* ptr)```</span>.
20094    #[inline(always)]
20095    unsafe fn static_downcast(
20096        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20097    ) -> ::cpp_core::Ptr<crate::QQmlComponent> {
20098        let ffi_result = {
20099            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlComponent_ptr(
20100                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20101            )
20102        };
20103        ::cpp_core::Ptr::from_raw(ffi_result)
20104    }
20105}
20106
20107impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlComponent {
20108    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlComponent* ptr)```</span>.
20109    #[inline(always)]
20110    unsafe fn static_upcast(
20111        ptr: ::cpp_core::Ptr<crate::QQmlComponent>,
20112    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20113        let ffi_result = {
20114            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr3(
20115                ptr.as_raw_ptr() as *mut crate::QQmlComponent
20116            )
20117        };
20118        ::cpp_core::Ptr::from_raw(ffi_result)
20119    }
20120}
20121
20122impl ::std::ops::Deref for crate::QQmlComponent {
20123    type Target = ::qt_core::QObject;
20124    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlComponent* ptr)```</span>.
20125    #[inline(always)]
20126    fn deref(&self) -> &::qt_core::QObject {
20127        let ffi_result = {
20128            unsafe {
20129                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr3(
20130                    self as *const crate::QQmlComponent as *mut crate::QQmlComponent,
20131                )
20132            }
20133        };
20134        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20135    }
20136}
20137
20138impl ::cpp_core::DynamicCast<crate::QQmlComponent> for ::qt_core::QObject {
20139    /// Calls C++ function: <span style='color: green;'>```QQmlComponent* dynamic_cast<QQmlComponent*>(QObject* ptr)```</span>.
20140    #[inline(always)]
20141    unsafe fn dynamic_cast(
20142        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20143    ) -> ::cpp_core::Ptr<crate::QQmlComponent> {
20144        let ffi_result = {
20145            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlComponent_ptr(
20146                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20147            )
20148        };
20149        ::cpp_core::Ptr::from_raw(ffi_result)
20150    }
20151}
20152
20153impl ::cpp_core::StaticDowncast<crate::QQmlContext> for ::qt_core::QObject {
20154    /// Calls C++ function: <span style='color: green;'>```QQmlContext* static_cast<QQmlContext*>(QObject* ptr)```</span>.
20155    #[inline(always)]
20156    unsafe fn static_downcast(
20157        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20158    ) -> ::cpp_core::Ptr<crate::QQmlContext> {
20159        let ffi_result = {
20160            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlContext_ptr(
20161                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20162            )
20163        };
20164        ::cpp_core::Ptr::from_raw(ffi_result)
20165    }
20166}
20167
20168impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlContext {
20169    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlContext* ptr)```</span>.
20170    #[inline(always)]
20171    unsafe fn static_upcast(
20172        ptr: ::cpp_core::Ptr<crate::QQmlContext>,
20173    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20174        let ffi_result = {
20175            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr4(
20176                ptr.as_raw_ptr() as *mut crate::QQmlContext
20177            )
20178        };
20179        ::cpp_core::Ptr::from_raw(ffi_result)
20180    }
20181}
20182
20183impl ::std::ops::Deref for crate::QQmlContext {
20184    type Target = ::qt_core::QObject;
20185    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlContext* ptr)```</span>.
20186    #[inline(always)]
20187    fn deref(&self) -> &::qt_core::QObject {
20188        let ffi_result = {
20189            unsafe {
20190                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr4(
20191                    self as *const crate::QQmlContext as *mut crate::QQmlContext,
20192                )
20193            }
20194        };
20195        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20196    }
20197}
20198
20199impl ::cpp_core::DynamicCast<crate::QQmlContext> for ::qt_core::QObject {
20200    /// Calls C++ function: <span style='color: green;'>```QQmlContext* dynamic_cast<QQmlContext*>(QObject* ptr)```</span>.
20201    #[inline(always)]
20202    unsafe fn dynamic_cast(
20203        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20204    ) -> ::cpp_core::Ptr<crate::QQmlContext> {
20205        let ffi_result = {
20206            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlContext_ptr(
20207                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20208            )
20209        };
20210        ::cpp_core::Ptr::from_raw(ffi_result)
20211    }
20212}
20213
20214impl ::cpp_core::StaticDowncast<crate::QQmlExpression> for ::qt_core::QObject {
20215    /// Calls C++ function: <span style='color: green;'>```QQmlExpression* static_cast<QQmlExpression*>(QObject* ptr)```</span>.
20216    #[inline(always)]
20217    unsafe fn static_downcast(
20218        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20219    ) -> ::cpp_core::Ptr<crate::QQmlExpression> {
20220        let ffi_result = {
20221            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlExpression_ptr(
20222                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20223            )
20224        };
20225        ::cpp_core::Ptr::from_raw(ffi_result)
20226    }
20227}
20228
20229impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlExpression {
20230    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlExpression* ptr)```</span>.
20231    #[inline(always)]
20232    unsafe fn static_upcast(
20233        ptr: ::cpp_core::Ptr<crate::QQmlExpression>,
20234    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20235        let ffi_result = {
20236            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr5(
20237                ptr.as_raw_ptr() as *mut crate::QQmlExpression
20238            )
20239        };
20240        ::cpp_core::Ptr::from_raw(ffi_result)
20241    }
20242}
20243
20244impl ::std::ops::Deref for crate::QQmlExpression {
20245    type Target = ::qt_core::QObject;
20246    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlExpression* ptr)```</span>.
20247    #[inline(always)]
20248    fn deref(&self) -> &::qt_core::QObject {
20249        let ffi_result = {
20250            unsafe {
20251                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr5(
20252                    self as *const crate::QQmlExpression as *mut crate::QQmlExpression,
20253                )
20254            }
20255        };
20256        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20257    }
20258}
20259
20260impl ::cpp_core::DynamicCast<crate::QQmlExpression> for ::qt_core::QObject {
20261    /// Calls C++ function: <span style='color: green;'>```QQmlExpression* dynamic_cast<QQmlExpression*>(QObject* ptr)```</span>.
20262    #[inline(always)]
20263    unsafe fn dynamic_cast(
20264        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20265    ) -> ::cpp_core::Ptr<crate::QQmlExpression> {
20266        let ffi_result = {
20267            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlExpression_ptr(
20268                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20269            )
20270        };
20271        ::cpp_core::Ptr::from_raw(ffi_result)
20272    }
20273}
20274
20275impl ::cpp_core::StaticDowncast<crate::QQmlExtensionInterface>
20276    for crate::QQmlTypesExtensionInterface
20277{
20278    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionInterface* static_cast<QQmlExtensionInterface*>(QQmlTypesExtensionInterface* ptr)```</span>.
20279    #[inline(always)]
20280    unsafe fn static_downcast(
20281        ptr: ::cpp_core::Ptr<crate::QQmlTypesExtensionInterface>,
20282    ) -> ::cpp_core::Ptr<crate::QQmlExtensionInterface> {
20283        let ffi_result = {
20284            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlExtensionInterface_ptr(
20285                ptr.as_raw_ptr() as *mut crate::QQmlTypesExtensionInterface
20286            )
20287        };
20288        ::cpp_core::Ptr::from_raw(ffi_result)
20289    }
20290}
20291
20292impl ::cpp_core::StaticUpcast<crate::QQmlTypesExtensionInterface>
20293    for crate::QQmlExtensionInterface
20294{
20295    /// Calls C++ function: <span style='color: green;'>```QQmlTypesExtensionInterface* static_cast<QQmlTypesExtensionInterface*>(QQmlExtensionInterface* ptr)```</span>.
20296    #[inline(always)]
20297    unsafe fn static_upcast(
20298        ptr: ::cpp_core::Ptr<crate::QQmlExtensionInterface>,
20299    ) -> ::cpp_core::Ptr<crate::QQmlTypesExtensionInterface> {
20300        let ffi_result = {
20301            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlTypesExtensionInterface_ptr(
20302                ptr.as_raw_ptr() as *mut crate::QQmlExtensionInterface,
20303            )
20304        };
20305        ::cpp_core::Ptr::from_raw(ffi_result)
20306    }
20307}
20308
20309impl ::std::ops::Deref for crate::QQmlExtensionInterface {
20310    type Target = crate::QQmlTypesExtensionInterface;
20311    /// Calls C++ function: <span style='color: green;'>```QQmlTypesExtensionInterface* static_cast<QQmlTypesExtensionInterface*>(QQmlExtensionInterface* ptr)```</span>.
20312    #[inline(always)]
20313    fn deref(&self) -> &crate::QQmlTypesExtensionInterface {
20314        let ffi_result = {
20315            unsafe {
20316                crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlTypesExtensionInterface_ptr(
20317                    self as *const crate::QQmlExtensionInterface
20318                        as *mut crate::QQmlExtensionInterface,
20319                )
20320            }
20321        };
20322        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20323    }
20324}
20325
20326impl ::cpp_core::DynamicCast<crate::QQmlExtensionInterface> for crate::QQmlTypesExtensionInterface {
20327    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionInterface* dynamic_cast<QQmlExtensionInterface*>(QQmlTypesExtensionInterface* ptr)```</span>.
20328    #[inline(always)]
20329    unsafe fn dynamic_cast(
20330        ptr: ::cpp_core::Ptr<crate::QQmlTypesExtensionInterface>,
20331    ) -> ::cpp_core::Ptr<crate::QQmlExtensionInterface> {
20332        let ffi_result = {
20333            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlExtensionInterface_ptr(
20334                ptr.as_raw_ptr() as *mut crate::QQmlTypesExtensionInterface
20335            )
20336        };
20337        ::cpp_core::Ptr::from_raw(ffi_result)
20338    }
20339}
20340
20341impl ::cpp_core::StaticDowncast<crate::QQmlExtensionPlugin> for ::qt_core::QObject {
20342    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionPlugin* static_cast<QQmlExtensionPlugin*>(QObject* ptr)```</span>.
20343    #[inline(always)]
20344    unsafe fn static_downcast(
20345        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20346    ) -> ::cpp_core::Ptr<crate::QQmlExtensionPlugin> {
20347        let ffi_result = {
20348            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlExtensionPlugin_ptr(
20349                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20350            )
20351        };
20352        ::cpp_core::Ptr::from_raw(ffi_result)
20353    }
20354}
20355
20356impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlExtensionPlugin {
20357    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlExtensionPlugin* ptr)```</span>.
20358    #[inline(always)]
20359    unsafe fn static_upcast(
20360        ptr: ::cpp_core::Ptr<crate::QQmlExtensionPlugin>,
20361    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20362        let ffi_result = {
20363            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr6(
20364                ptr.as_raw_ptr() as *mut crate::QQmlExtensionPlugin
20365            )
20366        };
20367        ::cpp_core::Ptr::from_raw(ffi_result)
20368    }
20369}
20370
20371impl ::std::ops::Deref for crate::QQmlExtensionPlugin {
20372    type Target = ::qt_core::QObject;
20373    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlExtensionPlugin* ptr)```</span>.
20374    #[inline(always)]
20375    fn deref(&self) -> &::qt_core::QObject {
20376        let ffi_result = {
20377            unsafe {
20378                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr6(
20379                    self as *const crate::QQmlExtensionPlugin as *mut crate::QQmlExtensionPlugin,
20380                )
20381            }
20382        };
20383        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20384    }
20385}
20386
20387impl ::cpp_core::DynamicCast<crate::QQmlExtensionPlugin> for ::qt_core::QObject {
20388    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionPlugin* dynamic_cast<QQmlExtensionPlugin*>(QObject* ptr)```</span>.
20389    #[inline(always)]
20390    unsafe fn dynamic_cast(
20391        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20392    ) -> ::cpp_core::Ptr<crate::QQmlExtensionPlugin> {
20393        let ffi_result = {
20394            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlExtensionPlugin_ptr(
20395                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20396            )
20397        };
20398        ::cpp_core::Ptr::from_raw(ffi_result)
20399    }
20400}
20401
20402impl ::cpp_core::StaticDowncast<crate::QQmlExtensionPlugin> for crate::QQmlExtensionInterface {
20403    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionPlugin* static_cast<QQmlExtensionPlugin*>(QQmlExtensionInterface* ptr)```</span>.
20404    #[inline(always)]
20405    unsafe fn static_downcast(
20406        ptr: ::cpp_core::Ptr<crate::QQmlExtensionInterface>,
20407    ) -> ::cpp_core::Ptr<crate::QQmlExtensionPlugin> {
20408        let ffi_result = {
20409            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlExtensionPlugin_ptr1(
20410                ptr.as_raw_ptr() as *mut crate::QQmlExtensionInterface
20411            )
20412        };
20413        ::cpp_core::Ptr::from_raw(ffi_result)
20414    }
20415}
20416
20417impl ::cpp_core::StaticUpcast<crate::QQmlExtensionInterface> for crate::QQmlExtensionPlugin {
20418    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionInterface* static_cast<QQmlExtensionInterface*>(QQmlExtensionPlugin* ptr)```</span>.
20419    #[inline(always)]
20420    unsafe fn static_upcast(
20421        ptr: ::cpp_core::Ptr<crate::QQmlExtensionPlugin>,
20422    ) -> ::cpp_core::Ptr<crate::QQmlExtensionInterface> {
20423        let ffi_result = {
20424            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlExtensionInterface_ptr1(
20425                ptr.as_raw_ptr() as *mut crate::QQmlExtensionPlugin
20426            )
20427        };
20428        ::cpp_core::Ptr::from_raw(ffi_result)
20429    }
20430}
20431
20432impl ::cpp_core::DynamicCast<crate::QQmlExtensionPlugin> for crate::QQmlExtensionInterface {
20433    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionPlugin* dynamic_cast<QQmlExtensionPlugin*>(QQmlExtensionInterface* ptr)```</span>.
20434    #[inline(always)]
20435    unsafe fn dynamic_cast(
20436        ptr: ::cpp_core::Ptr<crate::QQmlExtensionInterface>,
20437    ) -> ::cpp_core::Ptr<crate::QQmlExtensionPlugin> {
20438        let ffi_result = {
20439            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlExtensionPlugin_ptr1(
20440                ptr.as_raw_ptr() as *mut crate::QQmlExtensionInterface
20441            )
20442        };
20443        ::cpp_core::Ptr::from_raw(ffi_result)
20444    }
20445}
20446
20447impl ::cpp_core::StaticDowncast<crate::QQmlExtensionPlugin> for crate::QQmlTypesExtensionInterface {
20448    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionPlugin* static_cast<QQmlExtensionPlugin*>(QQmlTypesExtensionInterface* ptr)```</span>.
20449    #[inline(always)]
20450    unsafe fn static_downcast(
20451        ptr: ::cpp_core::Ptr<crate::QQmlTypesExtensionInterface>,
20452    ) -> ::cpp_core::Ptr<crate::QQmlExtensionPlugin> {
20453        let ffi_result = {
20454            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlExtensionPlugin_ptr2(
20455                ptr.as_raw_ptr() as *mut crate::QQmlTypesExtensionInterface
20456            )
20457        };
20458        ::cpp_core::Ptr::from_raw(ffi_result)
20459    }
20460}
20461
20462impl ::cpp_core::StaticUpcast<crate::QQmlTypesExtensionInterface> for crate::QQmlExtensionPlugin {
20463    /// Calls C++ function: <span style='color: green;'>```QQmlTypesExtensionInterface* static_cast<QQmlTypesExtensionInterface*>(QQmlExtensionPlugin* ptr)```</span>.
20464    #[inline(always)]
20465    unsafe fn static_upcast(
20466        ptr: ::cpp_core::Ptr<crate::QQmlExtensionPlugin>,
20467    ) -> ::cpp_core::Ptr<crate::QQmlTypesExtensionInterface> {
20468        let ffi_result = {
20469            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlTypesExtensionInterface_ptr1(
20470                ptr.as_raw_ptr() as *mut crate::QQmlExtensionPlugin,
20471            )
20472        };
20473        ::cpp_core::Ptr::from_raw(ffi_result)
20474    }
20475}
20476
20477impl ::cpp_core::DynamicCast<crate::QQmlExtensionPlugin> for crate::QQmlTypesExtensionInterface {
20478    /// Calls C++ function: <span style='color: green;'>```QQmlExtensionPlugin* dynamic_cast<QQmlExtensionPlugin*>(QQmlTypesExtensionInterface* ptr)```</span>.
20479    #[inline(always)]
20480    unsafe fn dynamic_cast(
20481        ptr: ::cpp_core::Ptr<crate::QQmlTypesExtensionInterface>,
20482    ) -> ::cpp_core::Ptr<crate::QQmlExtensionPlugin> {
20483        let ffi_result = {
20484            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlExtensionPlugin_ptr2(
20485                ptr.as_raw_ptr() as *mut crate::QQmlTypesExtensionInterface
20486            )
20487        };
20488        ::cpp_core::Ptr::from_raw(ffi_result)
20489    }
20490}
20491
20492impl ::cpp_core::StaticDowncast<crate::QQmlFileSelector> for ::qt_core::QObject {
20493    /// Calls C++ function: <span style='color: green;'>```QQmlFileSelector* static_cast<QQmlFileSelector*>(QObject* ptr)```</span>.
20494    #[inline(always)]
20495    unsafe fn static_downcast(
20496        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20497    ) -> ::cpp_core::Ptr<crate::QQmlFileSelector> {
20498        let ffi_result = {
20499            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlFileSelector_ptr(
20500                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20501            )
20502        };
20503        ::cpp_core::Ptr::from_raw(ffi_result)
20504    }
20505}
20506
20507impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlFileSelector {
20508    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlFileSelector* ptr)```</span>.
20509    #[inline(always)]
20510    unsafe fn static_upcast(
20511        ptr: ::cpp_core::Ptr<crate::QQmlFileSelector>,
20512    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20513        let ffi_result = {
20514            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr7(
20515                ptr.as_raw_ptr() as *mut crate::QQmlFileSelector
20516            )
20517        };
20518        ::cpp_core::Ptr::from_raw(ffi_result)
20519    }
20520}
20521
20522impl ::std::ops::Deref for crate::QQmlFileSelector {
20523    type Target = ::qt_core::QObject;
20524    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlFileSelector* ptr)```</span>.
20525    #[inline(always)]
20526    fn deref(&self) -> &::qt_core::QObject {
20527        let ffi_result = {
20528            unsafe {
20529                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr7(
20530                    self as *const crate::QQmlFileSelector as *mut crate::QQmlFileSelector,
20531                )
20532            }
20533        };
20534        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20535    }
20536}
20537
20538impl ::cpp_core::DynamicCast<crate::QQmlFileSelector> for ::qt_core::QObject {
20539    /// Calls C++ function: <span style='color: green;'>```QQmlFileSelector* dynamic_cast<QQmlFileSelector*>(QObject* ptr)```</span>.
20540    #[inline(always)]
20541    unsafe fn dynamic_cast(
20542        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20543    ) -> ::cpp_core::Ptr<crate::QQmlFileSelector> {
20544        let ffi_result = {
20545            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlFileSelector_ptr(
20546                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20547            )
20548        };
20549        ::cpp_core::Ptr::from_raw(ffi_result)
20550    }
20551}
20552
20553impl ::cpp_core::StaticDowncast<crate::QQmlInfo> for ::qt_core::QDebug {
20554    /// Calls C++ function: <span style='color: green;'>```QQmlInfo* static_cast<QQmlInfo*>(QDebug* ptr)```</span>.
20555    #[inline(always)]
20556    unsafe fn static_downcast(
20557        ptr: ::cpp_core::Ptr<::qt_core::QDebug>,
20558    ) -> ::cpp_core::Ptr<crate::QQmlInfo> {
20559        let ffi_result = {
20560            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlInfo_ptr(
20561                ptr.as_raw_ptr() as *mut ::qt_core::QDebug
20562            )
20563        };
20564        ::cpp_core::Ptr::from_raw(ffi_result)
20565    }
20566}
20567
20568impl ::cpp_core::StaticUpcast<::qt_core::QDebug> for crate::QQmlInfo {
20569    /// Calls C++ function: <span style='color: green;'>```QDebug* static_cast<QDebug*>(QQmlInfo* ptr)```</span>.
20570    #[inline(always)]
20571    unsafe fn static_upcast(
20572        ptr: ::cpp_core::Ptr<crate::QQmlInfo>,
20573    ) -> ::cpp_core::Ptr<::qt_core::QDebug> {
20574        let ffi_result = {
20575            crate::__ffi::ctr_qt_qml_ffi_static_cast_QDebug_ptr(
20576                ptr.as_raw_ptr() as *mut crate::QQmlInfo
20577            )
20578        };
20579        ::cpp_core::Ptr::from_raw(ffi_result)
20580    }
20581}
20582
20583impl ::std::ops::Deref for crate::QQmlInfo {
20584    type Target = ::qt_core::QDebug;
20585    /// Calls C++ function: <span style='color: green;'>```QDebug* static_cast<QDebug*>(QQmlInfo* ptr)```</span>.
20586    #[inline(always)]
20587    fn deref(&self) -> &::qt_core::QDebug {
20588        let ffi_result = {
20589            unsafe {
20590                crate::__ffi::ctr_qt_qml_ffi_static_cast_QDebug_ptr(
20591                    self as *const crate::QQmlInfo as *mut crate::QQmlInfo,
20592                )
20593            }
20594        };
20595        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20596    }
20597}
20598
20599impl ::cpp_core::StaticDowncast<crate::QQmlPropertyMap> for ::qt_core::QObject {
20600    /// Calls C++ function: <span style='color: green;'>```QQmlPropertyMap* static_cast<QQmlPropertyMap*>(QObject* ptr)```</span>.
20601    #[inline(always)]
20602    unsafe fn static_downcast(
20603        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20604    ) -> ::cpp_core::Ptr<crate::QQmlPropertyMap> {
20605        let ffi_result = {
20606            crate::__ffi::ctr_qt_qml_ffi_static_cast_QQmlPropertyMap_ptr(
20607                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20608            )
20609        };
20610        ::cpp_core::Ptr::from_raw(ffi_result)
20611    }
20612}
20613
20614impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QQmlPropertyMap {
20615    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlPropertyMap* ptr)```</span>.
20616    #[inline(always)]
20617    unsafe fn static_upcast(
20618        ptr: ::cpp_core::Ptr<crate::QQmlPropertyMap>,
20619    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20620        let ffi_result = {
20621            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr8(
20622                ptr.as_raw_ptr() as *mut crate::QQmlPropertyMap
20623            )
20624        };
20625        ::cpp_core::Ptr::from_raw(ffi_result)
20626    }
20627}
20628
20629impl ::std::ops::Deref for crate::QQmlPropertyMap {
20630    type Target = ::qt_core::QObject;
20631    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(QQmlPropertyMap* ptr)```</span>.
20632    #[inline(always)]
20633    fn deref(&self) -> &::qt_core::QObject {
20634        let ffi_result = {
20635            unsafe {
20636                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr8(
20637                    self as *const crate::QQmlPropertyMap as *mut crate::QQmlPropertyMap,
20638                )
20639            }
20640        };
20641        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20642    }
20643}
20644
20645impl ::cpp_core::DynamicCast<crate::QQmlPropertyMap> for ::qt_core::QObject {
20646    /// Calls C++ function: <span style='color: green;'>```QQmlPropertyMap* dynamic_cast<QQmlPropertyMap*>(QObject* ptr)```</span>.
20647    #[inline(always)]
20648    unsafe fn dynamic_cast(
20649        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20650    ) -> ::cpp_core::Ptr<crate::QQmlPropertyMap> {
20651        let ffi_result = {
20652            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_QQmlPropertyMap_ptr(
20653                ptr.as_raw_ptr() as *mut ::qt_core::QObject
20654            )
20655        };
20656        ::cpp_core::Ptr::from_raw(ffi_result)
20657    }
20658}
20659
20660impl ::cpp_core::vector_ops::Data for crate::QPointerOfQObject {
20661    type Output = ::qt_core::QPtr<::qt_core::QObject>;
20662    /// <p>Returns the pointer to the object being guarded.</p>
20663    ///
20664    /// Calls C++ function: <span style='color: green;'>```QObject* QPointer<QObject>::data() const```</span>.
20665    ///
20666    /// <a href="http://doc.qt.io/qt-5/qpointer.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the pointer to the object being guarded.</p>
20667    /// <p>This function was introduced in  Qt 4.4.</p></div>
20668    #[inline(always)]
20669    unsafe fn data(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
20670        let ffi_result = {
20671            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_data(
20672                self as *const crate::QPointerOfQObject,
20673            )
20674        };
20675        ::qt_core::QPtr::from_raw(ffi_result)
20676    }
20677}
20678
20679impl ::cpp_core::ops::Indirection for crate::QPointerOfQObject {
20680    type Output = ::cpp_core::Ref<::qt_core::QObject>;
20681    /// <p>Dereference operator; implements pointer semantics. Just use this operator as you would with a normal C++ pointer.</p>
20682    ///
20683    /// Calls C++ function: <span style='color: green;'>```QObject& QPointer<QObject>::operator*() const```</span>.
20684    ///
20685    /// <a href="http://doc.qt.io/qt-5/qpointer.html#operator-2a">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Dereference operator; implements pointer semantics. Just use this operator as you would with a normal C++ pointer.</p></div>
20686    #[inline(always)]
20687    unsafe fn indirection(&self) -> ::cpp_core::Ref<::qt_core::QObject> {
20688        let ffi_result = {
20689            crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_operator_1(
20690                self as *const crate::QPointerOfQObject,
20691            )
20692        };
20693        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
20694    }
20695}
20696
20697impl ::std::cmp::PartialEq<::cpp_core::Ptr<::qt_core::QObject>> for crate::QPointerOfQObject {
20698    /// <p>Returns <code>true</code> if <i>c1</i> and <i>c2</i> are the same Unicode character; otherwise returns <code>false</code>.</p>
20699    ///
20700    /// Calls C++ function: <span style='color: green;'>```bool operator==(const QPointer<QObject>& p, const QObject* o)```</span>.
20701    ///
20702    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-eq-eq">C++ documentation</a> for <span style='color: green;'>```bool operator==(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>c1</i> and <i>c2</i> are the same Unicode character; otherwise returns <code>false</code>.</p></div>
20703    #[inline(always)]
20704    fn eq(&self, o: &::cpp_core::Ptr<::qt_core::QObject>) -> bool {
20705        unsafe {
20706            crate::__ffi::ctr_qt_qml_ffi_operator__45(
20707                self as *const crate::QPointerOfQObject,
20708                o.as_raw_ptr(),
20709            )
20710        }
20711    }
20712}
20713
20714impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QPointerOfQObject>> for crate::QPointerOfQObject {
20715    /// <p>Returns <code>true</code> if <i>c1</i> and <i>c2</i> are the same Unicode character; otherwise returns <code>false</code>.</p>
20716    ///
20717    /// Calls C++ function: <span style='color: green;'>```bool operator==(const QPointer<QObject>& p1, const QPointer<QObject>& p2)```</span>.
20718    ///
20719    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-eq-eq">C++ documentation</a> for <span style='color: green;'>```bool operator==(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>c1</i> and <i>c2</i> are the same Unicode character; otherwise returns <code>false</code>.</p></div>
20720    #[inline(always)]
20721    fn eq(&self, p2: &::cpp_core::Ref<crate::QPointerOfQObject>) -> bool {
20722        unsafe {
20723            crate::__ffi::ctr_qt_qml_ffi_operator__48(
20724                self as *const crate::QPointerOfQObject,
20725                p2.as_raw_ptr(),
20726            )
20727        }
20728    }
20729}
20730
20731impl ::cpp_core::CppDeletable for crate::QPointerOfQObject {
20732    /// <p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
20733    ///
20734    /// Calls C++ function: <span style='color: green;'>```[destructor] void QPointer<QObject>::~QPointer()```</span>.
20735    ///
20736    /// <a href="http://doc.qt.io/qt-5/qpointer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> class is a template class that provides guarded pointers to <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
20737    /// <p>A guarded pointer, <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;T&gt;, behaves like a normal C++ pointer <code>T *</code>, except that it is automatically set to 0 when the referenced object is destroyed (unlike normal C++ pointers, which become "dangling pointers" in such cases). <code>T</code> must be a subclass of <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>.</p>
20738    /// <p>Guarded pointers are useful whenever you need to store a pointer to a <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> that is owned by someone else, and therefore might be destroyed while you still hold a reference to it. You can safely test the pointer for validity.</p>
20739    /// <p>Note that Qt 5 introduces a slight change in behavior when using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>.</p>
20740    /// <ul>
20741    /// <li>When using <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> on a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> (or a subclass of <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>), previously the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> would be cleared by the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor. Now, the <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> is cleared by the <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a> destructor (since this is when <a href="http://doc.qt.io/qt-5/qweakpointer.html">QWeakPointer</a> objects are cleared). Any QPointers tracking a widget will <b>NOT</b> be cleared before the <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> destructor destroys the children for the widget being tracked.</li>
20742    /// </ul>
20743    /// <p>Qt also provides <a href="http://doc.qt.io/qt-5/qsharedpointer.html">QSharedPointer</a>, an implementation of a reference-counted shared pointer object, which can be used to maintain a collection of references to an individual pointer.</p>
20744    /// <p>Example:</p>
20745    /// <pre class="cpp">
20746    ///
20747    /// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qpointer.html#QPointer">QPointer</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span><span class="operator">&gt;</span> label <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a></span>;
20748    /// &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>setText(<span class="string">"&amp;Status:"</span>);
20749    /// &#32;     ...
20750    /// &#32;     <span class="keyword">if</span> (label)
20751    /// &#32;   &#32;     label<span class="operator">-</span><span class="operator">&gt;</span>show();
20752    ///
20753    /// </pre>
20754    /// <p>If the <a href="http://doc.qt.io/qt-5/qlabel.html">QLabel</a> is deleted in the meantime, the <code>label</code> variable will hold 0 instead of an invalid address, and the last line will never be executed.</p>
20755    /// <p>The functions and operators available with a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> are the same as those available with a normal unguarded pointer, except the pointer arithmetic operators (<code>+</code>, <code>-</code>, <code>++</code>, and <code>--</code>), which are normally used only with arrays of objects.</p>
20756    /// <p>Use QPointers like normal pointers and you will not need to read this class documentation.</p>
20757    /// <p>For creating guarded pointers, you can construct or assign to them from a T* or from another guarded pointer of the same type. You can compare them with each other using operator==() and operator!=(), or test for 0 with <a href="http://doc.qt.io/qt-5/qpointer.html#isNull">isNull</a>(). You can dereference them using either the <code>*x</code> or the <code>x-&gt;member</code> notation.</p>
20758    /// <p>A guarded pointer will automatically cast to a <code>T</code> *, so you can freely mix guarded and unguarded pointers. This means that if you have a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt;<a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a>&gt;, you can pass it to a function that requires a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. For this reason, it is of little value to declare functions to take a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> as a parameter; just use normal pointers. Use a <a href="http://doc.qt.io/qt-5/qpointer.html">QPointer</a> when you are storing a pointer over time.</p>
20759    /// <p>Note that class <code>T</code> must inherit <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a>, or a compilation or link error will result.</p></div>
20760    #[inline(always)]
20761    unsafe fn delete(&self) {
20762        crate::__ffi::ctr_qt_qml_ffi_QPointer_QObject_dQPointer(
20763            self as *const crate::QPointerOfQObject as *mut crate::QPointerOfQObject,
20764        )
20765    }
20766}
20767
20768impl ::cpp_core::CppDeletable for crate::SignalOfQStringQVariant {
20769    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref::~ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref()```</span>.
20770    #[inline(always)]
20771    unsafe fn delete(&self) {
20772        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_dctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref(self as *const crate::SignalOfQStringQVariant as *mut crate::SignalOfQStringQVariant)
20773    }
20774}
20775
20776impl ::cpp_core::CppDeletable for crate::SignalOfStatus {
20777    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status::~ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status()```</span>.
20778    #[inline(always)]
20779    unsafe fn delete(&self) {
20780        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_dctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status(self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus)
20781    }
20782}
20783
20784impl ::cpp_core::CppDeletable for crate::SignalOfQListOfQQmlError {
20785    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref::~ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref()```</span>.
20786    #[inline(always)]
20787    unsafe fn delete(&self) {
20788        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_dctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref(self as *const crate::SignalOfQListOfQQmlError as *mut crate::SignalOfQListOfQQmlError)
20789    }
20790}
20791
20792impl ::cpp_core::CppDeletable for crate::SignalOfQObjectQUrl {
20793    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref::~ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref()```</span>.
20794    #[inline(always)]
20795    unsafe fn delete(&self) {
20796        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_dctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref(self as *const crate::SignalOfQObjectQUrl as *mut crate::SignalOfQObjectQUrl)
20797    }
20798}
20799
20800impl ::cpp_core::StaticDowncast<crate::SignalOfQStringQVariant> for ::qt_core::QObject {
20801    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref* static_cast<ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref*>(QObject* ptr)```</span>.
20802    #[inline(always)]
20803    unsafe fn static_downcast(
20804        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20805    ) -> ::cpp_core::Ptr<crate::SignalOfQStringQVariant> {
20806        let ffi_result = {
20807            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20808        };
20809        ::cpp_core::Ptr::from_raw(ffi_result)
20810    }
20811}
20812
20813impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQStringQVariant {
20814    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref* ptr)```</span>.
20815    #[inline(always)]
20816    unsafe fn static_upcast(
20817        ptr: ::cpp_core::Ptr<crate::SignalOfQStringQVariant>,
20818    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20819        let ffi_result = {
20820            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr19(
20821                ptr.as_raw_ptr() as *mut crate::SignalOfQStringQVariant
20822            )
20823        };
20824        ::cpp_core::Ptr::from_raw(ffi_result)
20825    }
20826}
20827
20828impl ::std::ops::Deref for crate::SignalOfQStringQVariant {
20829    type Target = ::qt_core::QObject;
20830    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref* ptr)```</span>.
20831    #[inline(always)]
20832    fn deref(&self) -> &::qt_core::QObject {
20833        let ffi_result = {
20834            unsafe {
20835                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr19(
20836                    self as *const crate::SignalOfQStringQVariant
20837                        as *mut crate::SignalOfQStringQVariant,
20838                )
20839            }
20840        };
20841        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20842    }
20843}
20844
20845impl ::cpp_core::DynamicCast<crate::SignalOfQStringQVariant> for ::qt_core::QObject {
20846    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref* dynamic_cast<ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref*>(QObject* ptr)```</span>.
20847    #[inline(always)]
20848    unsafe fn dynamic_cast(
20849        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20850    ) -> ::cpp_core::Ptr<crate::SignalOfQStringQVariant> {
20851        let ffi_result = {
20852            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_signal_wrapper_QString_const_ref_QVariant_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20853        };
20854        ::cpp_core::Ptr::from_raw(ffi_result)
20855    }
20856}
20857
20858impl ::cpp_core::StaticDowncast<crate::SignalOfStatus> for ::qt_core::QObject {
20859    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status* static_cast<ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status*>(QObject* ptr)```</span>.
20860    #[inline(always)]
20861    unsafe fn static_downcast(
20862        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20863    ) -> ::cpp_core::Ptr<crate::SignalOfStatus> {
20864        let ffi_result = {
20865            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20866        };
20867        ::cpp_core::Ptr::from_raw(ffi_result)
20868    }
20869}
20870
20871impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStatus {
20872    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status* ptr)```</span>.
20873    #[inline(always)]
20874    unsafe fn static_upcast(
20875        ptr: ::cpp_core::Ptr<crate::SignalOfStatus>,
20876    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20877        let ffi_result = {
20878            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr21(
20879                ptr.as_raw_ptr() as *mut crate::SignalOfStatus
20880            )
20881        };
20882        ::cpp_core::Ptr::from_raw(ffi_result)
20883    }
20884}
20885
20886impl ::std::ops::Deref for crate::SignalOfStatus {
20887    type Target = ::qt_core::QObject;
20888    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status* ptr)```</span>.
20889    #[inline(always)]
20890    fn deref(&self) -> &::qt_core::QObject {
20891        let ffi_result = {
20892            unsafe {
20893                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr21(
20894                    self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus,
20895                )
20896            }
20897        };
20898        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20899    }
20900}
20901
20902impl ::cpp_core::DynamicCast<crate::SignalOfStatus> for ::qt_core::QObject {
20903    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status* dynamic_cast<ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status*>(QObject* ptr)```</span>.
20904    #[inline(always)]
20905    unsafe fn dynamic_cast(
20906        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20907    ) -> ::cpp_core::Ptr<crate::SignalOfStatus> {
20908        let ffi_result = {
20909            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_signal_wrapper_QQmlComponent_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20910        };
20911        ::cpp_core::Ptr::from_raw(ffi_result)
20912    }
20913}
20914
20915impl ::cpp_core::StaticDowncast<crate::SignalOfQListOfQQmlError> for ::qt_core::QObject {
20916    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref* static_cast<ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref*>(QObject* ptr)```</span>.
20917    #[inline(always)]
20918    unsafe fn static_downcast(
20919        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20920    ) -> ::cpp_core::Ptr<crate::SignalOfQListOfQQmlError> {
20921        let ffi_result = {
20922            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20923        };
20924        ::cpp_core::Ptr::from_raw(ffi_result)
20925    }
20926}
20927
20928impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQListOfQQmlError {
20929    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref* ptr)```</span>.
20930    #[inline(always)]
20931    unsafe fn static_upcast(
20932        ptr: ::cpp_core::Ptr<crate::SignalOfQListOfQQmlError>,
20933    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20934        let ffi_result = {
20935            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr23(
20936                ptr.as_raw_ptr() as *mut crate::SignalOfQListOfQQmlError
20937            )
20938        };
20939        ::cpp_core::Ptr::from_raw(ffi_result)
20940    }
20941}
20942
20943impl ::std::ops::Deref for crate::SignalOfQListOfQQmlError {
20944    type Target = ::qt_core::QObject;
20945    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref* ptr)```</span>.
20946    #[inline(always)]
20947    fn deref(&self) -> &::qt_core::QObject {
20948        let ffi_result = {
20949            unsafe {
20950                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr23(
20951                    self as *const crate::SignalOfQListOfQQmlError
20952                        as *mut crate::SignalOfQListOfQQmlError,
20953                )
20954            }
20955        };
20956        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
20957    }
20958}
20959
20960impl ::cpp_core::DynamicCast<crate::SignalOfQListOfQQmlError> for ::qt_core::QObject {
20961    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref* dynamic_cast<ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref*>(QObject* ptr)```</span>.
20962    #[inline(always)]
20963    unsafe fn dynamic_cast(
20964        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20965    ) -> ::cpp_core::Ptr<crate::SignalOfQListOfQQmlError> {
20966        let ffi_result = {
20967            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_signal_wrapper_QList_QQmlError_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20968        };
20969        ::cpp_core::Ptr::from_raw(ffi_result)
20970    }
20971}
20972
20973impl ::cpp_core::StaticDowncast<crate::SignalOfQObjectQUrl> for ::qt_core::QObject {
20974    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref* static_cast<ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref*>(QObject* ptr)```</span>.
20975    #[inline(always)]
20976    unsafe fn static_downcast(
20977        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
20978    ) -> ::cpp_core::Ptr<crate::SignalOfQObjectQUrl> {
20979        let ffi_result = {
20980            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
20981        };
20982        ::cpp_core::Ptr::from_raw(ffi_result)
20983    }
20984}
20985
20986impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQObjectQUrl {
20987    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref* ptr)```</span>.
20988    #[inline(always)]
20989    unsafe fn static_upcast(
20990        ptr: ::cpp_core::Ptr<crate::SignalOfQObjectQUrl>,
20991    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
20992        let ffi_result = {
20993            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr25(
20994                ptr.as_raw_ptr() as *mut crate::SignalOfQObjectQUrl
20995            )
20996        };
20997        ::cpp_core::Ptr::from_raw(ffi_result)
20998    }
20999}
21000
21001impl ::std::ops::Deref for crate::SignalOfQObjectQUrl {
21002    type Target = ::qt_core::QObject;
21003    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref* ptr)```</span>.
21004    #[inline(always)]
21005    fn deref(&self) -> &::qt_core::QObject {
21006        let ffi_result = {
21007            unsafe {
21008                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr25(
21009                    self as *const crate::SignalOfQObjectQUrl as *mut crate::SignalOfQObjectQUrl,
21010                )
21011            }
21012        };
21013        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
21014    }
21015}
21016
21017impl ::cpp_core::DynamicCast<crate::SignalOfQObjectQUrl> for ::qt_core::QObject {
21018    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref* dynamic_cast<ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref*>(QObject* ptr)```</span>.
21019    #[inline(always)]
21020    unsafe fn dynamic_cast(
21021        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21022    ) -> ::cpp_core::Ptr<crate::SignalOfQObjectQUrl> {
21023        let ffi_result = {
21024            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_signal_wrapper_QObject_ptr_QUrl_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21025        };
21026        ::cpp_core::Ptr::from_raw(ffi_result)
21027    }
21028}
21029
21030impl ::cpp_core::CppDeletable for crate::SlotOfQObjectQUrl {
21031    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref::~ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref()```</span>.
21032    #[inline(always)]
21033    unsafe fn delete(&self) {
21034        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_dctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref(self as *const crate::SlotOfQObjectQUrl as *mut crate::SlotOfQObjectQUrl)
21035    }
21036}
21037
21038impl ::cpp_core::CppDeletable for crate::SlotOfStatus {
21039    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status::~ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status()```</span>.
21040    #[inline(always)]
21041    unsafe fn delete(&self) {
21042        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_dctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status(self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus)
21043    }
21044}
21045
21046impl ::cpp_core::CppDeletable for crate::SlotOfQListOfQQmlError {
21047    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref::~ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref()```</span>.
21048    #[inline(always)]
21049    unsafe fn delete(&self) {
21050        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_dctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref(self as *const crate::SlotOfQListOfQQmlError as *mut crate::SlotOfQListOfQQmlError)
21051    }
21052}
21053
21054impl ::cpp_core::CppDeletable for crate::SlotOfQStringQVariant {
21055    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref::~ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref()```</span>.
21056    #[inline(always)]
21057    unsafe fn delete(&self) {
21058        crate::__ffi::ctr_qt_qml_ffi_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_dctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref(self as *const crate::SlotOfQStringQVariant as *mut crate::SlotOfQStringQVariant)
21059    }
21060}
21061
21062impl ::cpp_core::StaticDowncast<crate::SlotOfQObjectQUrl> for ::qt_core::QObject {
21063    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref* static_cast<ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref*>(QObject* ptr)```</span>.
21064    #[inline(always)]
21065    unsafe fn static_downcast(
21066        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21067    ) -> ::cpp_core::Ptr<crate::SlotOfQObjectQUrl> {
21068        let ffi_result = {
21069            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21070        };
21071        ::cpp_core::Ptr::from_raw(ffi_result)
21072    }
21073}
21074
21075impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQObjectQUrl {
21076    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref* ptr)```</span>.
21077    #[inline(always)]
21078    unsafe fn static_upcast(
21079        ptr: ::cpp_core::Ptr<crate::SlotOfQObjectQUrl>,
21080    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
21081        let ffi_result = {
21082            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr26(
21083                ptr.as_raw_ptr() as *mut crate::SlotOfQObjectQUrl
21084            )
21085        };
21086        ::cpp_core::Ptr::from_raw(ffi_result)
21087    }
21088}
21089
21090impl ::std::ops::Deref for crate::SlotOfQObjectQUrl {
21091    type Target = ::qt_core::QObject;
21092    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref* ptr)```</span>.
21093    #[inline(always)]
21094    fn deref(&self) -> &::qt_core::QObject {
21095        let ffi_result = {
21096            unsafe {
21097                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr26(
21098                    self as *const crate::SlotOfQObjectQUrl as *mut crate::SlotOfQObjectQUrl,
21099                )
21100            }
21101        };
21102        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
21103    }
21104}
21105
21106impl ::cpp_core::DynamicCast<crate::SlotOfQObjectQUrl> for ::qt_core::QObject {
21107    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref* dynamic_cast<ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref*>(QObject* ptr)```</span>.
21108    #[inline(always)]
21109    unsafe fn dynamic_cast(
21110        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21111    ) -> ::cpp_core::Ptr<crate::SlotOfQObjectQUrl> {
21112        let ffi_result = {
21113            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_slot_wrapper_QObject_ptr_QUrl_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21114        };
21115        ::cpp_core::Ptr::from_raw(ffi_result)
21116    }
21117}
21118
21119impl ::cpp_core::StaticDowncast<crate::SlotOfStatus> for ::qt_core::QObject {
21120    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status* static_cast<ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status*>(QObject* ptr)```</span>.
21121    #[inline(always)]
21122    unsafe fn static_downcast(
21123        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21124    ) -> ::cpp_core::Ptr<crate::SlotOfStatus> {
21125        let ffi_result = {
21126            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21127        };
21128        ::cpp_core::Ptr::from_raw(ffi_result)
21129    }
21130}
21131
21132impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStatus {
21133    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status* ptr)```</span>.
21134    #[inline(always)]
21135    unsafe fn static_upcast(
21136        ptr: ::cpp_core::Ptr<crate::SlotOfStatus>,
21137    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
21138        let ffi_result = {
21139            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr27(
21140                ptr.as_raw_ptr() as *mut crate::SlotOfStatus
21141            )
21142        };
21143        ::cpp_core::Ptr::from_raw(ffi_result)
21144    }
21145}
21146
21147impl ::std::ops::Deref for crate::SlotOfStatus {
21148    type Target = ::qt_core::QObject;
21149    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status* ptr)```</span>.
21150    #[inline(always)]
21151    fn deref(&self) -> &::qt_core::QObject {
21152        let ffi_result = {
21153            unsafe {
21154                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr27(
21155                    self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus,
21156                )
21157            }
21158        };
21159        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
21160    }
21161}
21162
21163impl ::cpp_core::DynamicCast<crate::SlotOfStatus> for ::qt_core::QObject {
21164    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status* dynamic_cast<ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status*>(QObject* ptr)```</span>.
21165    #[inline(always)]
21166    unsafe fn dynamic_cast(
21167        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21168    ) -> ::cpp_core::Ptr<crate::SlotOfStatus> {
21169        let ffi_result = {
21170            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_slot_wrapper_QQmlComponent_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21171        };
21172        ::cpp_core::Ptr::from_raw(ffi_result)
21173    }
21174}
21175
21176impl ::cpp_core::StaticDowncast<crate::SlotOfQListOfQQmlError> for ::qt_core::QObject {
21177    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref* static_cast<ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref*>(QObject* ptr)```</span>.
21178    #[inline(always)]
21179    unsafe fn static_downcast(
21180        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21181    ) -> ::cpp_core::Ptr<crate::SlotOfQListOfQQmlError> {
21182        let ffi_result = {
21183            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21184        };
21185        ::cpp_core::Ptr::from_raw(ffi_result)
21186    }
21187}
21188
21189impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQListOfQQmlError {
21190    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref* ptr)```</span>.
21191    #[inline(always)]
21192    unsafe fn static_upcast(
21193        ptr: ::cpp_core::Ptr<crate::SlotOfQListOfQQmlError>,
21194    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
21195        let ffi_result = {
21196            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr28(
21197                ptr.as_raw_ptr() as *mut crate::SlotOfQListOfQQmlError
21198            )
21199        };
21200        ::cpp_core::Ptr::from_raw(ffi_result)
21201    }
21202}
21203
21204impl ::std::ops::Deref for crate::SlotOfQListOfQQmlError {
21205    type Target = ::qt_core::QObject;
21206    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref* ptr)```</span>.
21207    #[inline(always)]
21208    fn deref(&self) -> &::qt_core::QObject {
21209        let ffi_result = {
21210            unsafe {
21211                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr28(
21212                    self as *const crate::SlotOfQListOfQQmlError
21213                        as *mut crate::SlotOfQListOfQQmlError,
21214                )
21215            }
21216        };
21217        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
21218    }
21219}
21220
21221impl ::cpp_core::DynamicCast<crate::SlotOfQListOfQQmlError> for ::qt_core::QObject {
21222    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref* dynamic_cast<ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref*>(QObject* ptr)```</span>.
21223    #[inline(always)]
21224    unsafe fn dynamic_cast(
21225        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21226    ) -> ::cpp_core::Ptr<crate::SlotOfQListOfQQmlError> {
21227        let ffi_result = {
21228            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_slot_wrapper_QList_QQmlError_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21229        };
21230        ::cpp_core::Ptr::from_raw(ffi_result)
21231    }
21232}
21233
21234impl ::cpp_core::StaticDowncast<crate::SlotOfQStringQVariant> for ::qt_core::QObject {
21235    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref* static_cast<ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref*>(QObject* ptr)```</span>.
21236    #[inline(always)]
21237    unsafe fn static_downcast(
21238        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21239    ) -> ::cpp_core::Ptr<crate::SlotOfQStringQVariant> {
21240        let ffi_result = {
21241            crate::__ffi::ctr_qt_qml_ffi_static_cast_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21242        };
21243        ::cpp_core::Ptr::from_raw(ffi_result)
21244    }
21245}
21246
21247impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQStringQVariant {
21248    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref* ptr)```</span>.
21249    #[inline(always)]
21250    unsafe fn static_upcast(
21251        ptr: ::cpp_core::Ptr<crate::SlotOfQStringQVariant>,
21252    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
21253        let ffi_result = {
21254            crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr29(
21255                ptr.as_raw_ptr() as *mut crate::SlotOfQStringQVariant
21256            )
21257        };
21258        ::cpp_core::Ptr::from_raw(ffi_result)
21259    }
21260}
21261
21262impl ::std::ops::Deref for crate::SlotOfQStringQVariant {
21263    type Target = ::qt_core::QObject;
21264    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref* ptr)```</span>.
21265    #[inline(always)]
21266    fn deref(&self) -> &::qt_core::QObject {
21267        let ffi_result = {
21268            unsafe {
21269                crate::__ffi::ctr_qt_qml_ffi_static_cast_QObject_ptr29(
21270                    self as *const crate::SlotOfQStringQVariant
21271                        as *mut crate::SlotOfQStringQVariant,
21272                )
21273            }
21274        };
21275        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
21276    }
21277}
21278
21279impl ::cpp_core::DynamicCast<crate::SlotOfQStringQVariant> for ::qt_core::QObject {
21280    /// Calls C++ function: <span style='color: green;'>```ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref* dynamic_cast<ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref*>(QObject* ptr)```</span>.
21281    #[inline(always)]
21282    unsafe fn dynamic_cast(
21283        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
21284    ) -> ::cpp_core::Ptr<crate::SlotOfQStringQVariant> {
21285        let ffi_result = {
21286            crate::__ffi::ctr_qt_qml_ffi_dynamic_cast_ctr_qt_qml_ffi_slot_wrapper_QString_const_ref_QVariant_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
21287        };
21288        ::cpp_core::Ptr::from_raw(ffi_result)
21289    }
21290}
21291
21292/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(QObject * (*FN_PTR)(QObject *) func, unsigned int seed = …)```</span>.
21293#[inline(always)]
21294#[cfg_attr(
21295    feature = "ritual_rustdoc_nightly",
21296    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
21297)]
21298#[cfg(any(
21299    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
21300    feature = "ritual_rustdoc"
21301))]
21302pub unsafe fn q_hash_option_fn_uint(
21303    func: ::std::option::Option<extern "C" fn(*mut ::qt_core::QObject) -> *mut ::qt_core::QObject>,
21304    seed: ::std::os::raw::c_uint,
21305) -> ::std::os::raw::c_uint {
21306    crate::__ffi::ctr_qt_qml_ffi_qHash(func, seed)
21307}
21308
21309/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QQmlProperty& key)```</span>.
21310#[inline(always)]
21311pub unsafe fn q_hash_q_qml_property(
21312    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QQmlProperty>>,
21313) -> ::std::os::raw::c_uint {
21314    crate::__ffi::ctr_qt_qml_ffi_qHash1(
21315        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QQmlProperty>>::cast_into(key).as_raw_ptr(),
21316    )
21317}
21318
21319/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(QObject * (*FN_PTR)(QObject *) func)```</span>.
21320#[inline(always)]
21321#[cfg_attr(
21322    feature = "ritual_rustdoc_nightly",
21323    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
21324)]
21325#[cfg(any(
21326    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
21327    feature = "ritual_rustdoc"
21328))]
21329pub unsafe fn q_hash_option_fn(
21330    func: ::std::option::Option<extern "C" fn(*mut ::qt_core::QObject) -> *mut ::qt_core::QObject>,
21331) -> ::std::os::raw::c_uint {
21332    crate::__ffi::ctr_qt_qml_ffi_qHash8(func)
21333}
21334
21335/// Calls C++ function: <span style='color: green;'>```QPointer<QObject> qPointerFromVariant<QObject>(const QVariant& variant)```</span>.
21336#[inline(always)]
21337pub unsafe fn q_pointer_from_variant_q_object(
21338    variant: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
21339) -> ::cpp_core::CppBox<crate::QPointerOfQObject> {
21340    let ffi_result = {
21341        crate::__ffi::ctr_qt_qml_ffi_qPointerFromVariant_QObject(
21342            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(variant)
21343                .as_raw_ptr(),
21344        )
21345    };
21346    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21347}
21348
21349/// Calls C++ function: <span style='color: green;'>```QJSEngine* qjsEngine(const QObject* arg1)```</span>.
21350#[inline(always)]
21351pub unsafe fn qjs_engine(
21352    arg1: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
21353) -> ::qt_core::QPtr<crate::QJSEngine> {
21354    let ffi_result = {
21355        crate::__ffi::ctr_qt_qml_ffi_qjsEngine(
21356            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(arg1)
21357                .as_raw_ptr(),
21358        )
21359    };
21360    ::qt_core::QPtr::from_raw(ffi_result)
21361}
21362
21363/// Calls C++ function: <span style='color: green;'>```bool qjsvalue_cast_helper(const QJSValue& value, int type, void* ptr)```</span>.
21364#[inline(always)]
21365pub unsafe fn qjsvalue_cast_helper(
21366    value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QJSValue>>,
21367    type_: ::std::os::raw::c_int,
21368    ptr: *mut ::std::ffi::c_void,
21369) -> bool {
21370    crate::__ffi::ctr_qt_qml_ffi_qjsvalue_cast_helper(
21371        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QJSValue>>::cast_into(value).as_raw_ptr(),
21372        type_,
21373        ptr,
21374    )
21375}
21376
21377/// <p>Clears all stored type registrations, such as those produced with <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType">qmlRegisterType</a>().</p>
21378///
21379/// Calls C++ function: <span style='color: green;'>```void qmlClearTypeRegistrations()```</span>.
21380///
21381/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlClearTypeRegistrations">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Clears all stored type registrations, such as those produced with <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType">qmlRegisterType</a>().</p>
21382/// <p>Do not call this function while a <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> exists or behavior will be undefined. Any existing QQmlEngines must be deleted before calling this function. This function only affects the application global cache. Delete the <a href="http://doc.qt.io/qt-5/qqmlengine.html">QQmlEngine</a> to clear all cached data relating to that engine.</p></div>
21383#[inline(always)]
21384pub unsafe fn qml_clear_type_registrations() {
21385    crate::__ffi::ctr_qt_qml_ffi_qmlClearTypeRegistrations()
21386}
21387
21388/// <p>This function protects a module from having types registered into it. This can be used to prevent other plugins from injecting types into your module. It can also be a performance improvement, as it allows the engine to skip checking for the possibility of new types or plugins when this import is reached.</p>
21389///
21390/// Calls C++ function: <span style='color: green;'>```bool qmlProtectModule(const char* uri, int majVersion)```</span>.
21391///
21392/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlProtectModule">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function protects a module from having types registered into it. This can be used to prevent other plugins from injecting types into your module. It can also be a performance improvement, as it allows the engine to skip checking for the possibility of new types or plugins when this import is reached.</p>
21393/// <p>The performance benefit is primarily seen when registering application specific types from within the application instead of through a plugin. Using qmlProtectModule allows the engine to skip checking for a plugin when that uri is imported, which can be noticeable with slow file systems.</p>
21394/// <p>After this function is called, any attempt to register C++ types into this uri, major version combination will lead to a runtime error. Call this after you have registered all of your types with the engine.</p>
21395/// <p>Returns true if the module with <i>uri</i> as a <a href="http://doc.qt.io/qt-5/qtqml-modules-identifiedmodules.html">module identifier</a> and <i>majVersion</i> as a major version number was found and locked, otherwise returns false. The module must contain exported types in order to be found.</p></div>
21396#[inline(always)]
21397pub unsafe fn qml_protect_module(
21398    uri: *const ::std::os::raw::c_char,
21399    maj_version: ::std::os::raw::c_int,
21400) -> bool {
21401    crate::__ffi::ctr_qt_qml_ffi_qmlProtectModule(uri, maj_version)
21402}
21403
21404/// <p>This function registers a module in a particular <i>uri</i> with a version specified in <i>versionMajor</i> and <i>versionMinor</i>.</p>
21405///
21406/// Calls C++ function: <span style='color: green;'>```void qmlRegisterModule(const char* uri, int versionMajor, int versionMinor)```</span>.
21407///
21408/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterModule">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function registers a module in a particular <i>uri</i> with a version specified in <i>versionMajor</i> and <i>versionMinor</i>.</p>
21409/// <p>This can be used to make a certain module version available, even if no types are registered for that version. This is particularly useful for keeping the versions of related modules in sync.</p>
21410/// <p>This function was introduced in  Qt 5.9.</p></div>
21411#[inline(always)]
21412pub unsafe fn qml_register_module(
21413    uri: *const ::std::os::raw::c_char,
21414    version_major: ::std::os::raw::c_int,
21415    version_minor: ::std::os::raw::c_int,
21416) {
21417    crate::__ffi::ctr_qt_qml_ffi_qmlRegisterModule(uri, version_major, version_minor)
21418}
21419
21420/// <p>This function may be used to register a singleton type with the name <i>qmlName</i>, in the library imported from <i>uri</i> having the version number composed from <i>versionMajor</i> and <i>versionMinor</i>. The type is defined by the QML file located at <i>url</i>. The url must be an absolute URL, i.e. url.isRelative() == false.</p>
21421///
21422/// Calls C++ function: <span style='color: green;'>```int qmlRegisterSingletonType(const QUrl& url, const char* uri, int versionMajor, int versionMinor, const char* qmlName)```</span>.
21423///
21424/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterSingletonType-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function may be used to register a singleton type with the name <i>qmlName</i>, in the library imported from <i>uri</i> having the version number composed from <i>versionMajor</i> and <i>versionMinor</i>. The type is defined by the QML file located at <i>url</i>. The url must be an absolute URL, i.e. url.isRelative() == false.</p>
21425/// <p>In addition the type's QML file must have pragma Singleton statement among its import statements.</p>
21426/// <p>A singleton type may be referenced via the type name with which it was registered, and this typename may be used as the target in a <a href="http://doc.qt.io/qt-5/qml-qtqml-connections.html">Connections</a> type or otherwise used as any other type id would. One exception to this is that a singleton type property may not be aliased (because the singleton type name does not identify an object within the same component as any other item).</p>
21427/// <p>Usage:</p>
21428/// <pre class="qml">
21429///
21430///   <span class="comment">// First, define your QML singleton type which provides the functionality.</span>
21431///   pragma Singleton
21432///   import QtQuick 2.0
21433///   <span class="type">Item</span> {
21434/// &#32;     property <span class="type">int</span> <span class="name">testProp1</span>: <span class="number">125</span>
21435///   }
21436///
21437/// </pre>
21438/// <pre class="cpp">
21439///
21440///   <span class="comment">// Second, register the QML singleton type by calling this function in an initialization function.</span>
21441///   qmlRegisterSingletonType(<span class="type"><a href="http://doc.qt.io/qt-5/qurl.html">QUrl</a></span>(<span class="string">"file:///absolute/path/SingletonType.qml"</span>)<span class="operator">,</span> <span class="string">"Qt.example.qobjectSingleton"</span><span class="operator">,</span> <span class="number">1</span><span class="operator">,</span> <span class="number">0</span><span class="operator">,</span> <span class="string">"RegisteredSingleton"</span>);
21442///
21443/// </pre>
21444/// <p>In order to use the registered singleton type in QML, you must import the singleton type.</p>
21445/// <pre class="qml">
21446///
21447///   import QtQuick 2.0
21448///   import Qt.example.qobjectSingleton 1.0
21449///   <span class="type">Item</span> {
21450/// &#32;     <span class="name">id</span>: <span class="name">root</span>
21451/// &#32;     property <span class="type">int</span> <span class="name">someValue</span>: <span class="name">RegisteredSingleton</span>.<span class="name">testProp1</span>
21452///   }
21453///
21454/// </pre>
21455/// <p>It is also possible to have QML singleton types registered without using the <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterSingletonType">qmlRegisterSingletonType</a> function. That can be done by adding a pragma Singleton statement among the imports of the type's QML file. In addition the type must be defined in a qmldir file with a singleton keyword and the qmldir must be imported by the QML files using the singleton.</p></div>
21456#[inline(always)]
21457pub unsafe fn qml_register_singleton_type(
21458    url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
21459    uri: *const ::std::os::raw::c_char,
21460    version_major: ::std::os::raw::c_int,
21461    version_minor: ::std::os::raw::c_int,
21462    qml_name: *const ::std::os::raw::c_char,
21463) -> ::std::os::raw::c_int {
21464    crate::__ffi::ctr_qt_qml_ffi_qmlRegisterSingletonType1(
21465        ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
21466        uri,
21467        version_major,
21468        version_minor,
21469        qml_name,
21470    )
21471}
21472
21473/// <p>This function registers a type in the QML system with the name <i>qmlName</i>, in the library imported from <i>uri</i> having the version number composed from <i>versionMajor</i> and <i>versionMinor</i>. The type is defined by the QML file located at <i>url</i>. The url must be an absolute URL, i.e. url.isRelative() == false.</p>
21474///
21475/// Calls C++ function: <span style='color: green;'>```int qmlRegisterType(const QUrl& url, const char* uri, int versionMajor, int versionMinor, const char* qmlName)```</span>.
21476///
21477/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function registers a type in the QML system with the name <i>qmlName</i>, in the library imported from <i>uri</i> having the version number composed from <i>versionMajor</i> and <i>versionMinor</i>. The type is defined by the QML file located at <i>url</i>. The url must be an absolute URL, i.e. url.isRelative() == false.</p>
21478/// <p>Normally QML files can be loaded as types directly from other QML files, or using a qmldir file. This function allows registration of files to types from C++ code, such as when the type mapping needs to be procedurally determined at startup.</p>
21479/// <p>Returns -1 if the registration was not successful.</p></div>
21480#[inline(always)]
21481pub unsafe fn qml_register_type(
21482    url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
21483    uri: *const ::std::os::raw::c_char,
21484    version_major: ::std::os::raw::c_int,
21485    version_minor: ::std::os::raw::c_int,
21486    qml_name: *const ::std::os::raw::c_char,
21487) -> ::std::os::raw::c_int {
21488    crate::__ffi::ctr_qt_qml_ffi_qmlRegisterType(
21489        ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(url).as_raw_ptr(),
21490        uri,
21491        version_major,
21492        version_minor,
21493        qml_name,
21494    )
21495}
21496
21497/// <p>This function registers a type in the QML system with the name <i>qmlName</i>, in the type namespace imported from <i>uri</i> having the version number composed from <i>versionMajor</i> and <i>versionMinor</i>, but any attempt to instantiate the type will produce the given error <i>message</i>.</p>
21498///
21499/// Calls C++ function: <span style='color: green;'>```int qmlRegisterTypeNotAvailable(const char* uri, int versionMajor, int versionMinor, const char* qmlName, const QString& message)```</span>.
21500///
21501/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterTypeNotAvailable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function registers a type in the QML system with the name <i>qmlName</i>, in the type namespace imported from <i>uri</i> having the version number composed from <i>versionMajor</i> and <i>versionMinor</i>, but any attempt to instantiate the type will produce the given error <i>message</i>.</p>
21502/// <p>Normally, the types exported by a plugin should be fixed. However, if a C++ type is not available, you should at least "reserve" the QML type name, and give the user of the unavailable type a meaningful error message.</p>
21503/// <p>Returns the QML type id.</p>
21504/// <p>Example:</p>
21505/// <pre class="cpp">
21506///
21507///   <span class="preprocessor">#ifdef NO_GAMES_ALLOWED</span>
21508///   qmlRegisterTypeNotAvailable(<span class="string">"MinehuntCore"</span><span class="operator">,</span> <span class="number">0</span><span class="operator">,</span> <span class="number">1</span><span class="operator">,</span> <span class="string">"Game"</span><span class="operator">,</span> <span class="string">"Get back to work, slacker!"</span>);
21509///   <span class="preprocessor">#else</span>
21510///   qmlRegisterType<span class="operator">&lt;</span>MinehuntGame<span class="operator">&gt;</span>(<span class="string">"MinehuntCore"</span><span class="operator">,</span> <span class="number">0</span><span class="operator">,</span> <span class="number">1</span><span class="operator">,</span> <span class="string">"Game"</span>);
21511///   <span class="preprocessor">#endif</span>
21512///
21513/// </pre>
21514/// <p>This will cause any QML which imports the "MinehuntCore" type namespace and attempts to use the type to produce an error message:</p>
21515/// <pre class="cpp">
21516///
21517///   fun<span class="operator">.</span>qml: Get back to work<span class="operator">,</span> slacker<span class="operator">!</span>
21518/// &#32;    Game {
21519/// &#32;    <span class="operator">^</span>
21520///
21521/// </pre>
21522/// <p>Without this, a generic "Game is not a type" message would be given.</p>
21523/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterUncreatableType">qmlRegisterUncreatableType</a>().</p></div>
21524#[inline(always)]
21525pub unsafe fn qml_register_type_not_available(
21526    uri: *const ::std::os::raw::c_char,
21527    version_major: ::std::os::raw::c_int,
21528    version_minor: ::std::os::raw::c_int,
21529    qml_name: *const ::std::os::raw::c_char,
21530    message: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
21531) -> ::std::os::raw::c_int {
21532    crate::__ffi::ctr_qt_qml_ffi_qmlRegisterTypeNotAvailable(
21533        uri,
21534        version_major,
21535        version_minor,
21536        qml_name,
21537        ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(message)
21538            .as_raw_ptr(),
21539    )
21540}
21541
21542/// <p>This function registers the <i>staticMetaObject</i> and its extension in the QML system with the name <i>qmlName</i> in the library imported from <i>uri</i> having version number composed from <i>versionMajor</i> and <i>versionMinor</i>.</p>
21543///
21544/// Calls C++ function: <span style='color: green;'>```int qmlRegisterUncreatableMetaObject(const QMetaObject& staticMetaObject, const char* uri, int versionMajor, int versionMinor, const char* qmlName, const QString& reason)```</span>.
21545///
21546/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterUncreatableMetaObject">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function registers the <i>staticMetaObject</i> and its extension in the QML system with the name <i>qmlName</i> in the library imported from <i>uri</i> having version number composed from <i>versionMajor</i> and <i>versionMinor</i>.</p>
21547/// <p>An instance of the meta object cannot be created. An error message with the given <i>reason</i> is printed if the user attempts to create it.</p>
21548/// <p>This function is useful for registering Q_NAMESPACE namespaces.</p>
21549/// <p>Returns the QML type id.</p>
21550/// <p>For example:</p>
21551/// <pre class="cpp">
21552///
21553///   <span class="keyword">namespace</span> MyNamespace {
21554/// &#32;   Q_NAMESPACE
21555/// &#32;   <span class="keyword">enum</span> MyEnum {
21556/// &#32;   &#32;   Key1<span class="operator">,</span>
21557/// &#32;   &#32;   Key2<span class="operator">,</span>
21558/// &#32;   };
21559/// &#32;   Q_ENUMS(MyEnum)
21560///   }
21561///
21562///   <span class="comment">//...</span>
21563///   qmlRegisterUncreatableMetaObject(MyNamespace<span class="operator">::</span>staticMetaObject<span class="operator">,</span> <span class="string">"io.qt"</span><span class="operator">,</span> <span class="number">1</span><span class="operator">,</span> <span class="number">0</span><span class="operator">,</span> <span class="string">"MyNamespace"</span><span class="operator">,</span> <span class="string">"Access to enums &amp; flags only"</span>);
21564///
21565/// </pre>
21566/// <p>On the QML side, you can now use the registered enums:</p>
21567/// <pre class="cpp">
21568///
21569///   Component<span class="operator">.</span>onCompleted: console<span class="operator">.</span>log(MyNamespace<span class="operator">.</span>Key2)
21570///
21571/// </pre>
21572/// <p>This function was introduced in  Qt 5.8.</p></div>
21573#[inline(always)]
21574pub unsafe fn qml_register_uncreatable_meta_object(
21575    static_meta_object: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QMetaObject>>,
21576    uri: *const ::std::os::raw::c_char,
21577    version_major: ::std::os::raw::c_int,
21578    version_minor: ::std::os::raw::c_int,
21579    qml_name: *const ::std::os::raw::c_char,
21580    reason: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
21581) -> ::std::os::raw::c_int {
21582    crate::__ffi::ctr_qt_qml_ffi_qmlRegisterUncreatableMetaObject(
21583        ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QMetaObject>>::cast_into(
21584            static_meta_object,
21585        )
21586        .as_raw_ptr(),
21587        uri,
21588        version_major,
21589        version_minor,
21590        qml_name,
21591        ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(reason).as_raw_ptr(),
21592    )
21593}
21594
21595/// <p>Returns the QML type id of a type that was registered with the name <i>qmlName</i> in a particular <i>uri</i> and a version specified in <i>versionMajor</i> and <i>versionMinor</i>.</p>
21596///
21597/// Calls C++ function: <span style='color: green;'>```int qmlTypeId(const char* uri, int versionMajor, int versionMinor, const char* qmlName)```</span>.
21598///
21599/// <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlTypeId">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the QML type id of a type that was registered with the name <i>qmlName</i> in a particular <i>uri</i> and a version specified in <i>versionMajor</i> and <i>versionMinor</i>.</p>
21600/// <p>This function returns the same value as the QML type registration functions such as <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType">qmlRegisterType</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterSingletonType">qmlRegisterSingletonType</a>().</p>
21601/// <p>If <i>qmlName</i>, <i>uri</i> and <i>versionMajor</i> match a registered type, but the specified minor version in <i>versionMinor</i> is higher, then the id of the type with the closest minor version is returned.</p>
21602/// <p>Returns -1 if no matching type was found or one of the given parameters was invalid.</p>
21603/// <p>This function was introduced in  Qt 5.12.</p>
21604/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterType">qmlRegisterType</a>() and <a href="http://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterSingletonType">qmlRegisterSingletonType</a>().</p></div>
21605#[inline(always)]
21606#[cfg_attr(
21607    feature = "ritual_rustdoc_nightly",
21608    doc(cfg(any(
21609        cpp_lib_version = "5.13.0",
21610        cpp_lib_version = "5.12.2",
21611        cpp_lib_version = "5.14.0"
21612    )))
21613)]
21614#[cfg(any(
21615    any(
21616        cpp_lib_version = "5.13.0",
21617        cpp_lib_version = "5.12.2",
21618        cpp_lib_version = "5.14.0"
21619    ),
21620    feature = "ritual_rustdoc"
21621))]
21622pub unsafe fn qml_type_id(
21623    uri: *const ::std::os::raw::c_char,
21624    version_major: ::std::os::raw::c_int,
21625    version_minor: ::std::os::raw::c_int,
21626    qml_name: *const ::std::os::raw::c_char,
21627) -> ::std::os::raw::c_int {
21628    crate::__ffi::ctr_qt_qml_ffi_qmlTypeId(uri, version_major, version_minor, qml_name)
21629}