json_glib/auto/
enums.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir
3// from gtk-girs (https://github.com/gtk-rs/gir-files)
4// DO NOT EDIT
5
6use crate::{ffi};
7use glib::{prelude::*,translate::*};
8
9#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
10#[derive(Clone, Copy)]
11#[non_exhaustive]
12#[doc(alias = "JsonNodeType")]
13pub enum NodeType {
14    #[doc(alias = "JSON_NODE_OBJECT")]
15    Object,
16    #[doc(alias = "JSON_NODE_ARRAY")]
17    Array,
18    #[doc(alias = "JSON_NODE_VALUE")]
19    Value,
20    #[doc(alias = "JSON_NODE_NULL")]
21    Null,
22#[doc(hidden)]
23    __Unknown(i32),
24}
25
26#[doc(hidden)]
27impl IntoGlib for NodeType {
28    type GlibType = ffi::JsonNodeType;
29
30    #[inline]
31fn into_glib(self) -> ffi::JsonNodeType {
32match self {
33            Self::Object => ffi::JSON_NODE_OBJECT,
34            Self::Array => ffi::JSON_NODE_ARRAY,
35            Self::Value => ffi::JSON_NODE_VALUE,
36            Self::Null => ffi::JSON_NODE_NULL,
37            Self::__Unknown(value) => value,
38}
39}
40}
41
42#[doc(hidden)]
43impl FromGlib<ffi::JsonNodeType> for NodeType {
44    #[inline]
45unsafe fn from_glib(value: ffi::JsonNodeType) -> Self {
46        skip_assert_initialized!();
47        
48match value {
49            ffi::JSON_NODE_OBJECT => Self::Object,
50            ffi::JSON_NODE_ARRAY => Self::Array,
51            ffi::JSON_NODE_VALUE => Self::Value,
52            ffi::JSON_NODE_NULL => Self::Null,
53            value => Self::__Unknown(value),
54}
55}
56}
57
58impl StaticType for NodeType {
59                #[inline]
60    #[doc(alias = "json_node_type_get_type")]
61   fn static_type() -> glib::Type {
62                    unsafe { from_glib(ffi::json_node_type_get_type()) }
63                }
64            }
65
66impl glib::HasParamSpec for NodeType {
67                type ParamSpec = glib::ParamSpecEnum;
68                type SetValue = Self;
69                type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
70    
71                fn param_spec_builder() -> Self::BuilderFn {
72                    Self::ParamSpec::builder_with_default
73                }
74}
75
76impl glib::value::ValueType for NodeType {
77    type Type = Self;
78}
79
80unsafe impl<'a> glib::value::FromValue<'a> for NodeType {
81    type Checker = glib::value::GenericValueTypeChecker<Self>;
82
83    #[inline]
84    unsafe fn from_value(value: &'a glib::Value) -> Self {
85        skip_assert_initialized!();
86        from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
87    }
88}
89
90impl ToValue for NodeType {
91    #[inline]
92    fn to_value(&self) -> glib::Value {
93        let mut value = glib::Value::for_value_type::<Self>();
94        unsafe {
95            glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
96        }
97        value
98    }
99
100    #[inline]
101    fn value_type(&self) -> glib::Type {
102        Self::static_type()
103    }
104}
105
106impl From<NodeType> for glib::Value {
107    #[inline]
108    fn from(v: NodeType) -> Self {
109        skip_assert_initialized!();
110        ToValue::to_value(&v)
111    }
112}
113
114#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
115#[derive(Clone, Copy)]
116#[non_exhaustive]
117#[doc(alias = "JsonParserError")]
118pub enum ParserError {
119    #[doc(alias = "JSON_PARSER_ERROR_PARSE")]
120    Parse,
121    #[doc(alias = "JSON_PARSER_ERROR_TRAILING_COMMA")]
122    TrailingComma,
123    #[doc(alias = "JSON_PARSER_ERROR_MISSING_COMMA")]
124    MissingComma,
125    #[doc(alias = "JSON_PARSER_ERROR_MISSING_COLON")]
126    MissingColon,
127    #[doc(alias = "JSON_PARSER_ERROR_INVALID_BAREWORD")]
128    InvalidBareword,
129    #[doc(alias = "JSON_PARSER_ERROR_EMPTY_MEMBER_NAME")]
130    EmptyMemberName,
131    #[doc(alias = "JSON_PARSER_ERROR_INVALID_DATA")]
132    InvalidData,
133    #[doc(alias = "JSON_PARSER_ERROR_UNKNOWN")]
134    Unknown,
135    #[cfg(feature = "v1_10")]
136    #[cfg_attr(docsrs, doc(cfg(feature = "v1_10")))]
137    #[doc(alias = "JSON_PARSER_ERROR_NESTING")]
138    Nesting,
139    #[cfg(feature = "v1_10")]
140    #[cfg_attr(docsrs, doc(cfg(feature = "v1_10")))]
141    #[doc(alias = "JSON_PARSER_ERROR_INVALID_STRUCTURE")]
142    InvalidStructure,
143    #[cfg(feature = "v1_10")]
144    #[cfg_attr(docsrs, doc(cfg(feature = "v1_10")))]
145    #[doc(alias = "JSON_PARSER_ERROR_INVALID_ASSIGNMENT")]
146    InvalidAssignment,
147#[doc(hidden)]
148    __Unknown(i32),
149}
150
151#[doc(hidden)]
152impl IntoGlib for ParserError {
153    type GlibType = ffi::JsonParserError;
154
155    #[inline]
156fn into_glib(self) -> ffi::JsonParserError {
157match self {
158            Self::Parse => ffi::JSON_PARSER_ERROR_PARSE,
159            Self::TrailingComma => ffi::JSON_PARSER_ERROR_TRAILING_COMMA,
160            Self::MissingComma => ffi::JSON_PARSER_ERROR_MISSING_COMMA,
161            Self::MissingColon => ffi::JSON_PARSER_ERROR_MISSING_COLON,
162            Self::InvalidBareword => ffi::JSON_PARSER_ERROR_INVALID_BAREWORD,
163            Self::EmptyMemberName => ffi::JSON_PARSER_ERROR_EMPTY_MEMBER_NAME,
164            Self::InvalidData => ffi::JSON_PARSER_ERROR_INVALID_DATA,
165            Self::Unknown => ffi::JSON_PARSER_ERROR_UNKNOWN,
166            #[cfg(feature = "v1_10")]
167            Self::Nesting => ffi::JSON_PARSER_ERROR_NESTING,
168            #[cfg(feature = "v1_10")]
169            Self::InvalidStructure => ffi::JSON_PARSER_ERROR_INVALID_STRUCTURE,
170            #[cfg(feature = "v1_10")]
171            Self::InvalidAssignment => ffi::JSON_PARSER_ERROR_INVALID_ASSIGNMENT,
172            Self::__Unknown(value) => value,
173}
174}
175}
176
177#[doc(hidden)]
178impl FromGlib<ffi::JsonParserError> for ParserError {
179    #[inline]
180unsafe fn from_glib(value: ffi::JsonParserError) -> Self {
181        skip_assert_initialized!();
182        
183match value {
184            ffi::JSON_PARSER_ERROR_PARSE => Self::Parse,
185            ffi::JSON_PARSER_ERROR_TRAILING_COMMA => Self::TrailingComma,
186            ffi::JSON_PARSER_ERROR_MISSING_COMMA => Self::MissingComma,
187            ffi::JSON_PARSER_ERROR_MISSING_COLON => Self::MissingColon,
188            ffi::JSON_PARSER_ERROR_INVALID_BAREWORD => Self::InvalidBareword,
189            ffi::JSON_PARSER_ERROR_EMPTY_MEMBER_NAME => Self::EmptyMemberName,
190            ffi::JSON_PARSER_ERROR_INVALID_DATA => Self::InvalidData,
191            ffi::JSON_PARSER_ERROR_UNKNOWN => Self::Unknown,
192            #[cfg(feature = "v1_10")]
193            ffi::JSON_PARSER_ERROR_NESTING => Self::Nesting,
194            #[cfg(feature = "v1_10")]
195            ffi::JSON_PARSER_ERROR_INVALID_STRUCTURE => Self::InvalidStructure,
196            #[cfg(feature = "v1_10")]
197            ffi::JSON_PARSER_ERROR_INVALID_ASSIGNMENT => Self::InvalidAssignment,
198            value => Self::__Unknown(value),
199}
200}
201}
202
203impl glib::error::ErrorDomain for ParserError {
204    #[inline]
205    fn domain() -> glib::Quark {
206        skip_assert_initialized!();
207        
208        unsafe { from_glib(ffi::json_parser_error_quark()) }
209    }
210
211    #[inline]
212    fn code(self) -> i32 {
213        self.into_glib()
214    }
215
216    #[inline]
217    #[allow(clippy::match_single_binding)]
218    fn from(code: i32) -> Option<Self> {
219        skip_assert_initialized!();
220        match unsafe { from_glib(code) } {
221            value => Some(value),
222}
223    }
224}
225
226impl StaticType for ParserError {
227                #[inline]
228    #[doc(alias = "json_parser_error_get_type")]
229   fn static_type() -> glib::Type {
230                    unsafe { from_glib(ffi::json_parser_error_get_type()) }
231                }
232            }
233
234impl glib::HasParamSpec for ParserError {
235                type ParamSpec = glib::ParamSpecEnum;
236                type SetValue = Self;
237                type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
238    
239                fn param_spec_builder() -> Self::BuilderFn {
240                    Self::ParamSpec::builder_with_default
241                }
242}
243
244impl glib::value::ValueType for ParserError {
245    type Type = Self;
246}
247
248unsafe impl<'a> glib::value::FromValue<'a> for ParserError {
249    type Checker = glib::value::GenericValueTypeChecker<Self>;
250
251    #[inline]
252    unsafe fn from_value(value: &'a glib::Value) -> Self {
253        skip_assert_initialized!();
254        from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
255    }
256}
257
258impl ToValue for ParserError {
259    #[inline]
260    fn to_value(&self) -> glib::Value {
261        let mut value = glib::Value::for_value_type::<Self>();
262        unsafe {
263            glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
264        }
265        value
266    }
267
268    #[inline]
269    fn value_type(&self) -> glib::Type {
270        Self::static_type()
271    }
272}
273
274impl From<ParserError> for glib::Value {
275    #[inline]
276    fn from(v: ParserError) -> Self {
277        skip_assert_initialized!();
278        ToValue::to_value(&v)
279    }
280}
281
282#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
283#[derive(Clone, Copy)]
284#[non_exhaustive]
285#[doc(alias = "JsonPathError")]
286pub enum PathError {
287    #[doc(alias = "JSON_PATH_ERROR_INVALID_QUERY")]
288    Query,
289#[doc(hidden)]
290    __Unknown(i32),
291}
292
293#[doc(hidden)]
294impl IntoGlib for PathError {
295    type GlibType = ffi::JsonPathError;
296
297    #[inline]
298fn into_glib(self) -> ffi::JsonPathError {
299match self {
300            Self::Query => ffi::JSON_PATH_ERROR_INVALID_QUERY,
301            Self::__Unknown(value) => value,
302}
303}
304}
305
306#[doc(hidden)]
307impl FromGlib<ffi::JsonPathError> for PathError {
308    #[inline]
309unsafe fn from_glib(value: ffi::JsonPathError) -> Self {
310        skip_assert_initialized!();
311        
312match value {
313            ffi::JSON_PATH_ERROR_INVALID_QUERY => Self::Query,
314            value => Self::__Unknown(value),
315}
316}
317}
318
319impl glib::error::ErrorDomain for PathError {
320    #[inline]
321    fn domain() -> glib::Quark {
322        skip_assert_initialized!();
323        
324        unsafe { from_glib(ffi::json_path_error_quark()) }
325    }
326
327    #[inline]
328    fn code(self) -> i32 {
329        self.into_glib()
330    }
331
332    #[inline]
333    #[allow(clippy::match_single_binding)]
334    fn from(code: i32) -> Option<Self> {
335        skip_assert_initialized!();
336        match unsafe { from_glib(code) } {
337            value => Some(value),
338}
339    }
340}
341
342impl StaticType for PathError {
343                #[inline]
344    #[doc(alias = "json_path_error_get_type")]
345   fn static_type() -> glib::Type {
346                    unsafe { from_glib(ffi::json_path_error_get_type()) }
347                }
348            }
349
350impl glib::HasParamSpec for PathError {
351                type ParamSpec = glib::ParamSpecEnum;
352                type SetValue = Self;
353                type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
354    
355                fn param_spec_builder() -> Self::BuilderFn {
356                    Self::ParamSpec::builder_with_default
357                }
358}
359
360impl glib::value::ValueType for PathError {
361    type Type = Self;
362}
363
364unsafe impl<'a> glib::value::FromValue<'a> for PathError {
365    type Checker = glib::value::GenericValueTypeChecker<Self>;
366
367    #[inline]
368    unsafe fn from_value(value: &'a glib::Value) -> Self {
369        skip_assert_initialized!();
370        from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
371    }
372}
373
374impl ToValue for PathError {
375    #[inline]
376    fn to_value(&self) -> glib::Value {
377        let mut value = glib::Value::for_value_type::<Self>();
378        unsafe {
379            glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
380        }
381        value
382    }
383
384    #[inline]
385    fn value_type(&self) -> glib::Type {
386        Self::static_type()
387    }
388}
389
390impl From<PathError> for glib::Value {
391    #[inline]
392    fn from(v: PathError) -> Self {
393        skip_assert_initialized!();
394        ToValue::to_value(&v)
395    }
396}
397
398#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
399#[derive(Clone, Copy)]
400#[non_exhaustive]
401#[doc(alias = "JsonReaderError")]
402pub enum ReaderError {
403    #[doc(alias = "JSON_READER_ERROR_NO_ARRAY")]
404    NoArray,
405    #[doc(alias = "JSON_READER_ERROR_INVALID_INDEX")]
406    InvalidIndex,
407    #[doc(alias = "JSON_READER_ERROR_NO_OBJECT")]
408    NoObject,
409    #[doc(alias = "JSON_READER_ERROR_INVALID_MEMBER")]
410    InvalidMember,
411    #[doc(alias = "JSON_READER_ERROR_INVALID_NODE")]
412    InvalidNode,
413    #[doc(alias = "JSON_READER_ERROR_NO_VALUE")]
414    NoValue,
415    #[doc(alias = "JSON_READER_ERROR_INVALID_TYPE")]
416    InvalidType,
417#[doc(hidden)]
418    __Unknown(i32),
419}
420
421#[doc(hidden)]
422impl IntoGlib for ReaderError {
423    type GlibType = ffi::JsonReaderError;
424
425    #[inline]
426fn into_glib(self) -> ffi::JsonReaderError {
427match self {
428            Self::NoArray => ffi::JSON_READER_ERROR_NO_ARRAY,
429            Self::InvalidIndex => ffi::JSON_READER_ERROR_INVALID_INDEX,
430            Self::NoObject => ffi::JSON_READER_ERROR_NO_OBJECT,
431            Self::InvalidMember => ffi::JSON_READER_ERROR_INVALID_MEMBER,
432            Self::InvalidNode => ffi::JSON_READER_ERROR_INVALID_NODE,
433            Self::NoValue => ffi::JSON_READER_ERROR_NO_VALUE,
434            Self::InvalidType => ffi::JSON_READER_ERROR_INVALID_TYPE,
435            Self::__Unknown(value) => value,
436}
437}
438}
439
440#[doc(hidden)]
441impl FromGlib<ffi::JsonReaderError> for ReaderError {
442    #[inline]
443unsafe fn from_glib(value: ffi::JsonReaderError) -> Self {
444        skip_assert_initialized!();
445        
446match value {
447            ffi::JSON_READER_ERROR_NO_ARRAY => Self::NoArray,
448            ffi::JSON_READER_ERROR_INVALID_INDEX => Self::InvalidIndex,
449            ffi::JSON_READER_ERROR_NO_OBJECT => Self::NoObject,
450            ffi::JSON_READER_ERROR_INVALID_MEMBER => Self::InvalidMember,
451            ffi::JSON_READER_ERROR_INVALID_NODE => Self::InvalidNode,
452            ffi::JSON_READER_ERROR_NO_VALUE => Self::NoValue,
453            ffi::JSON_READER_ERROR_INVALID_TYPE => Self::InvalidType,
454            value => Self::__Unknown(value),
455}
456}
457}
458
459impl glib::error::ErrorDomain for ReaderError {
460    #[inline]
461    fn domain() -> glib::Quark {
462        skip_assert_initialized!();
463        
464        unsafe { from_glib(ffi::json_reader_error_quark()) }
465    }
466
467    #[inline]
468    fn code(self) -> i32 {
469        self.into_glib()
470    }
471
472    #[inline]
473    #[allow(clippy::match_single_binding)]
474    fn from(code: i32) -> Option<Self> {
475        skip_assert_initialized!();
476        match unsafe { from_glib(code) } {
477            value => Some(value),
478}
479    }
480}
481
482impl StaticType for ReaderError {
483                #[inline]
484    #[doc(alias = "json_reader_error_get_type")]
485   fn static_type() -> glib::Type {
486                    unsafe { from_glib(ffi::json_reader_error_get_type()) }
487                }
488            }
489
490impl glib::HasParamSpec for ReaderError {
491                type ParamSpec = glib::ParamSpecEnum;
492                type SetValue = Self;
493                type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
494    
495                fn param_spec_builder() -> Self::BuilderFn {
496                    Self::ParamSpec::builder_with_default
497                }
498}
499
500impl glib::value::ValueType for ReaderError {
501    type Type = Self;
502}
503
504unsafe impl<'a> glib::value::FromValue<'a> for ReaderError {
505    type Checker = glib::value::GenericValueTypeChecker<Self>;
506
507    #[inline]
508    unsafe fn from_value(value: &'a glib::Value) -> Self {
509        skip_assert_initialized!();
510        from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
511    }
512}
513
514impl ToValue for ReaderError {
515    #[inline]
516    fn to_value(&self) -> glib::Value {
517        let mut value = glib::Value::for_value_type::<Self>();
518        unsafe {
519            glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
520        }
521        value
522    }
523
524    #[inline]
525    fn value_type(&self) -> glib::Type {
526        Self::static_type()
527    }
528}
529
530impl From<ReaderError> for glib::Value {
531    #[inline]
532    fn from(v: ReaderError) -> Self {
533        skip_assert_initialized!();
534        ToValue::to_value(&v)
535    }
536}
537