1 // This file was generated by gir (https://github.com/gtk-rs/gir)
2 // from gir-files (https://github.com/gtk-rs/gir-files)
3 // DO NOT EDIT
4 
5 use crate::error::ErrorDomain;
6 use crate::translate::*;
7 use crate::Quark;
8 use std::fmt;
9 
10 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11 #[non_exhaustive]
12 #[doc(alias = "GChecksumType")]
13 pub enum ChecksumType {
14     #[doc(alias = "G_CHECKSUM_MD5")]
15     Md5,
16     #[doc(alias = "G_CHECKSUM_SHA1")]
17     Sha1,
18     #[doc(alias = "G_CHECKSUM_SHA256")]
19     Sha256,
20     #[doc(alias = "G_CHECKSUM_SHA512")]
21     Sha512,
22     #[cfg(any(feature = "v2_52", feature = "dox"))]
23     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
24     #[doc(alias = "G_CHECKSUM_SHA384")]
25     Sha384,
26     #[doc(hidden)]
27     __Unknown(i32),
28 }
29 
30 impl fmt::Display for ChecksumType {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result31     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
32         write!(
33             f,
34             "ChecksumType::{}",
35             match *self {
36                 Self::Md5 => "Md5",
37                 Self::Sha1 => "Sha1",
38                 Self::Sha256 => "Sha256",
39                 Self::Sha512 => "Sha512",
40                 #[cfg(any(feature = "v2_52", feature = "dox"))]
41                 Self::Sha384 => "Sha384",
42                 _ => "Unknown",
43             }
44         )
45     }
46 }
47 
48 #[doc(hidden)]
49 impl IntoGlib for ChecksumType {
50     type GlibType = ffi::GChecksumType;
51 
into_glib(self) -> ffi::GChecksumType52     fn into_glib(self) -> ffi::GChecksumType {
53         match self {
54             Self::Md5 => ffi::G_CHECKSUM_MD5,
55             Self::Sha1 => ffi::G_CHECKSUM_SHA1,
56             Self::Sha256 => ffi::G_CHECKSUM_SHA256,
57             Self::Sha512 => ffi::G_CHECKSUM_SHA512,
58             #[cfg(any(feature = "v2_52", feature = "dox"))]
59             Self::Sha384 => ffi::G_CHECKSUM_SHA384,
60             Self::__Unknown(value) => value,
61         }
62     }
63 }
64 
65 #[doc(hidden)]
66 impl FromGlib<ffi::GChecksumType> for ChecksumType {
from_glib(value: ffi::GChecksumType) -> Self67     unsafe fn from_glib(value: ffi::GChecksumType) -> Self {
68         match value {
69             ffi::G_CHECKSUM_MD5 => Self::Md5,
70             ffi::G_CHECKSUM_SHA1 => Self::Sha1,
71             ffi::G_CHECKSUM_SHA256 => Self::Sha256,
72             ffi::G_CHECKSUM_SHA512 => Self::Sha512,
73             #[cfg(any(feature = "v2_52", feature = "dox"))]
74             ffi::G_CHECKSUM_SHA384 => Self::Sha384,
75             value => Self::__Unknown(value),
76         }
77     }
78 }
79 
80 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
81 #[non_exhaustive]
82 #[doc(alias = "GDateMonth")]
83 pub enum DateMonth {
84     #[doc(alias = "G_DATE_BAD_MONTH")]
85     BadMonth,
86     #[doc(alias = "G_DATE_JANUARY")]
87     January,
88     #[doc(alias = "G_DATE_FEBRUARY")]
89     February,
90     #[doc(alias = "G_DATE_MARCH")]
91     March,
92     #[doc(alias = "G_DATE_APRIL")]
93     April,
94     #[doc(alias = "G_DATE_MAY")]
95     May,
96     #[doc(alias = "G_DATE_JUNE")]
97     June,
98     #[doc(alias = "G_DATE_JULY")]
99     July,
100     #[doc(alias = "G_DATE_AUGUST")]
101     August,
102     #[doc(alias = "G_DATE_SEPTEMBER")]
103     September,
104     #[doc(alias = "G_DATE_OCTOBER")]
105     October,
106     #[doc(alias = "G_DATE_NOVEMBER")]
107     November,
108     #[doc(alias = "G_DATE_DECEMBER")]
109     December,
110     #[doc(hidden)]
111     __Unknown(i32),
112 }
113 
114 impl fmt::Display for DateMonth {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result115     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
116         write!(
117             f,
118             "DateMonth::{}",
119             match *self {
120                 Self::BadMonth => "BadMonth",
121                 Self::January => "January",
122                 Self::February => "February",
123                 Self::March => "March",
124                 Self::April => "April",
125                 Self::May => "May",
126                 Self::June => "June",
127                 Self::July => "July",
128                 Self::August => "August",
129                 Self::September => "September",
130                 Self::October => "October",
131                 Self::November => "November",
132                 Self::December => "December",
133                 _ => "Unknown",
134             }
135         )
136     }
137 }
138 
139 #[doc(hidden)]
140 impl IntoGlib for DateMonth {
141     type GlibType = ffi::GDateMonth;
142 
into_glib(self) -> ffi::GDateMonth143     fn into_glib(self) -> ffi::GDateMonth {
144         match self {
145             Self::BadMonth => ffi::G_DATE_BAD_MONTH,
146             Self::January => ffi::G_DATE_JANUARY,
147             Self::February => ffi::G_DATE_FEBRUARY,
148             Self::March => ffi::G_DATE_MARCH,
149             Self::April => ffi::G_DATE_APRIL,
150             Self::May => ffi::G_DATE_MAY,
151             Self::June => ffi::G_DATE_JUNE,
152             Self::July => ffi::G_DATE_JULY,
153             Self::August => ffi::G_DATE_AUGUST,
154             Self::September => ffi::G_DATE_SEPTEMBER,
155             Self::October => ffi::G_DATE_OCTOBER,
156             Self::November => ffi::G_DATE_NOVEMBER,
157             Self::December => ffi::G_DATE_DECEMBER,
158             Self::__Unknown(value) => value,
159         }
160     }
161 }
162 
163 #[doc(hidden)]
164 impl FromGlib<ffi::GDateMonth> for DateMonth {
from_glib(value: ffi::GDateMonth) -> Self165     unsafe fn from_glib(value: ffi::GDateMonth) -> Self {
166         match value {
167             ffi::G_DATE_BAD_MONTH => Self::BadMonth,
168             ffi::G_DATE_JANUARY => Self::January,
169             ffi::G_DATE_FEBRUARY => Self::February,
170             ffi::G_DATE_MARCH => Self::March,
171             ffi::G_DATE_APRIL => Self::April,
172             ffi::G_DATE_MAY => Self::May,
173             ffi::G_DATE_JUNE => Self::June,
174             ffi::G_DATE_JULY => Self::July,
175             ffi::G_DATE_AUGUST => Self::August,
176             ffi::G_DATE_SEPTEMBER => Self::September,
177             ffi::G_DATE_OCTOBER => Self::October,
178             ffi::G_DATE_NOVEMBER => Self::November,
179             ffi::G_DATE_DECEMBER => Self::December,
180             value => Self::__Unknown(value),
181         }
182     }
183 }
184 
185 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
186 #[non_exhaustive]
187 #[doc(alias = "GDateWeekday")]
188 pub enum DateWeekday {
189     #[doc(alias = "G_DATE_BAD_WEEKDAY")]
190     BadWeekday,
191     #[doc(alias = "G_DATE_MONDAY")]
192     Monday,
193     #[doc(alias = "G_DATE_TUESDAY")]
194     Tuesday,
195     #[doc(alias = "G_DATE_WEDNESDAY")]
196     Wednesday,
197     #[doc(alias = "G_DATE_THURSDAY")]
198     Thursday,
199     #[doc(alias = "G_DATE_FRIDAY")]
200     Friday,
201     #[doc(alias = "G_DATE_SATURDAY")]
202     Saturday,
203     #[doc(alias = "G_DATE_SUNDAY")]
204     Sunday,
205     #[doc(hidden)]
206     __Unknown(i32),
207 }
208 
209 impl fmt::Display for DateWeekday {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result210     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
211         write!(
212             f,
213             "DateWeekday::{}",
214             match *self {
215                 Self::BadWeekday => "BadWeekday",
216                 Self::Monday => "Monday",
217                 Self::Tuesday => "Tuesday",
218                 Self::Wednesday => "Wednesday",
219                 Self::Thursday => "Thursday",
220                 Self::Friday => "Friday",
221                 Self::Saturday => "Saturday",
222                 Self::Sunday => "Sunday",
223                 _ => "Unknown",
224             }
225         )
226     }
227 }
228 
229 #[doc(hidden)]
230 impl IntoGlib for DateWeekday {
231     type GlibType = ffi::GDateWeekday;
232 
into_glib(self) -> ffi::GDateWeekday233     fn into_glib(self) -> ffi::GDateWeekday {
234         match self {
235             Self::BadWeekday => ffi::G_DATE_BAD_WEEKDAY,
236             Self::Monday => ffi::G_DATE_MONDAY,
237             Self::Tuesday => ffi::G_DATE_TUESDAY,
238             Self::Wednesday => ffi::G_DATE_WEDNESDAY,
239             Self::Thursday => ffi::G_DATE_THURSDAY,
240             Self::Friday => ffi::G_DATE_FRIDAY,
241             Self::Saturday => ffi::G_DATE_SATURDAY,
242             Self::Sunday => ffi::G_DATE_SUNDAY,
243             Self::__Unknown(value) => value,
244         }
245     }
246 }
247 
248 #[doc(hidden)]
249 impl FromGlib<ffi::GDateWeekday> for DateWeekday {
from_glib(value: ffi::GDateWeekday) -> Self250     unsafe fn from_glib(value: ffi::GDateWeekday) -> Self {
251         match value {
252             ffi::G_DATE_BAD_WEEKDAY => Self::BadWeekday,
253             ffi::G_DATE_MONDAY => Self::Monday,
254             ffi::G_DATE_TUESDAY => Self::Tuesday,
255             ffi::G_DATE_WEDNESDAY => Self::Wednesday,
256             ffi::G_DATE_THURSDAY => Self::Thursday,
257             ffi::G_DATE_FRIDAY => Self::Friday,
258             ffi::G_DATE_SATURDAY => Self::Saturday,
259             ffi::G_DATE_SUNDAY => Self::Sunday,
260             value => Self::__Unknown(value),
261         }
262     }
263 }
264 
265 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
266 #[non_exhaustive]
267 #[doc(alias = "GKeyFileError")]
268 pub enum KeyFileError {
269     #[doc(alias = "G_KEY_FILE_ERROR_UNKNOWN_ENCODING")]
270     UnknownEncoding,
271     #[doc(alias = "G_KEY_FILE_ERROR_PARSE")]
272     Parse,
273     #[doc(alias = "G_KEY_FILE_ERROR_NOT_FOUND")]
274     NotFound,
275     #[doc(alias = "G_KEY_FILE_ERROR_KEY_NOT_FOUND")]
276     KeyNotFound,
277     #[doc(alias = "G_KEY_FILE_ERROR_GROUP_NOT_FOUND")]
278     GroupNotFound,
279     #[doc(alias = "G_KEY_FILE_ERROR_INVALID_VALUE")]
280     InvalidValue,
281     #[doc(hidden)]
282     __Unknown(i32),
283 }
284 
285 impl fmt::Display for KeyFileError {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result286     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
287         write!(
288             f,
289             "KeyFileError::{}",
290             match *self {
291                 Self::UnknownEncoding => "UnknownEncoding",
292                 Self::Parse => "Parse",
293                 Self::NotFound => "NotFound",
294                 Self::KeyNotFound => "KeyNotFound",
295                 Self::GroupNotFound => "GroupNotFound",
296                 Self::InvalidValue => "InvalidValue",
297                 _ => "Unknown",
298             }
299         )
300     }
301 }
302 
303 #[doc(hidden)]
304 impl IntoGlib for KeyFileError {
305     type GlibType = ffi::GKeyFileError;
306 
into_glib(self) -> ffi::GKeyFileError307     fn into_glib(self) -> ffi::GKeyFileError {
308         match self {
309             Self::UnknownEncoding => ffi::G_KEY_FILE_ERROR_UNKNOWN_ENCODING,
310             Self::Parse => ffi::G_KEY_FILE_ERROR_PARSE,
311             Self::NotFound => ffi::G_KEY_FILE_ERROR_NOT_FOUND,
312             Self::KeyNotFound => ffi::G_KEY_FILE_ERROR_KEY_NOT_FOUND,
313             Self::GroupNotFound => ffi::G_KEY_FILE_ERROR_GROUP_NOT_FOUND,
314             Self::InvalidValue => ffi::G_KEY_FILE_ERROR_INVALID_VALUE,
315             Self::__Unknown(value) => value,
316         }
317     }
318 }
319 
320 #[doc(hidden)]
321 impl FromGlib<ffi::GKeyFileError> for KeyFileError {
from_glib(value: ffi::GKeyFileError) -> Self322     unsafe fn from_glib(value: ffi::GKeyFileError) -> Self {
323         match value {
324             ffi::G_KEY_FILE_ERROR_UNKNOWN_ENCODING => Self::UnknownEncoding,
325             ffi::G_KEY_FILE_ERROR_PARSE => Self::Parse,
326             ffi::G_KEY_FILE_ERROR_NOT_FOUND => Self::NotFound,
327             ffi::G_KEY_FILE_ERROR_KEY_NOT_FOUND => Self::KeyNotFound,
328             ffi::G_KEY_FILE_ERROR_GROUP_NOT_FOUND => Self::GroupNotFound,
329             ffi::G_KEY_FILE_ERROR_INVALID_VALUE => Self::InvalidValue,
330             value => Self::__Unknown(value),
331         }
332     }
333 }
334 
335 impl ErrorDomain for KeyFileError {
domain() -> Quark336     fn domain() -> Quark {
337         unsafe { from_glib(ffi::g_key_file_error_quark()) }
338     }
339 
code(self) -> i32340     fn code(self) -> i32 {
341         self.into_glib()
342     }
343 
from(code: i32) -> Option<Self>344     fn from(code: i32) -> Option<Self> {
345         match code {
346             ffi::G_KEY_FILE_ERROR_UNKNOWN_ENCODING => Some(Self::UnknownEncoding),
347             ffi::G_KEY_FILE_ERROR_PARSE => Some(Self::Parse),
348             ffi::G_KEY_FILE_ERROR_NOT_FOUND => Some(Self::NotFound),
349             ffi::G_KEY_FILE_ERROR_KEY_NOT_FOUND => Some(Self::KeyNotFound),
350             ffi::G_KEY_FILE_ERROR_GROUP_NOT_FOUND => Some(Self::GroupNotFound),
351             ffi::G_KEY_FILE_ERROR_INVALID_VALUE => Some(Self::InvalidValue),
352             value => Some(Self::__Unknown(value)),
353         }
354     }
355 }
356 
357 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
358 #[non_exhaustive]
359 #[doc(alias = "GOptionArg")]
360 pub enum OptionArg {
361     #[doc(alias = "G_OPTION_ARG_NONE")]
362     None,
363     #[doc(alias = "G_OPTION_ARG_STRING")]
364     String,
365     #[doc(alias = "G_OPTION_ARG_INT")]
366     Int,
367     #[doc(alias = "G_OPTION_ARG_CALLBACK")]
368     Callback,
369     #[doc(alias = "G_OPTION_ARG_FILENAME")]
370     Filename,
371     #[doc(alias = "G_OPTION_ARG_STRING_ARRAY")]
372     StringArray,
373     #[doc(alias = "G_OPTION_ARG_FILENAME_ARRAY")]
374     FilenameArray,
375     #[doc(alias = "G_OPTION_ARG_DOUBLE")]
376     Double,
377     #[doc(alias = "G_OPTION_ARG_INT64")]
378     Int64,
379     #[doc(hidden)]
380     __Unknown(i32),
381 }
382 
383 impl fmt::Display for OptionArg {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result384     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
385         write!(
386             f,
387             "OptionArg::{}",
388             match *self {
389                 Self::None => "None",
390                 Self::String => "String",
391                 Self::Int => "Int",
392                 Self::Callback => "Callback",
393                 Self::Filename => "Filename",
394                 Self::StringArray => "StringArray",
395                 Self::FilenameArray => "FilenameArray",
396                 Self::Double => "Double",
397                 Self::Int64 => "Int64",
398                 _ => "Unknown",
399             }
400         )
401     }
402 }
403 
404 #[doc(hidden)]
405 impl IntoGlib for OptionArg {
406     type GlibType = ffi::GOptionArg;
407 
into_glib(self) -> ffi::GOptionArg408     fn into_glib(self) -> ffi::GOptionArg {
409         match self {
410             Self::None => ffi::G_OPTION_ARG_NONE,
411             Self::String => ffi::G_OPTION_ARG_STRING,
412             Self::Int => ffi::G_OPTION_ARG_INT,
413             Self::Callback => ffi::G_OPTION_ARG_CALLBACK,
414             Self::Filename => ffi::G_OPTION_ARG_FILENAME,
415             Self::StringArray => ffi::G_OPTION_ARG_STRING_ARRAY,
416             Self::FilenameArray => ffi::G_OPTION_ARG_FILENAME_ARRAY,
417             Self::Double => ffi::G_OPTION_ARG_DOUBLE,
418             Self::Int64 => ffi::G_OPTION_ARG_INT64,
419             Self::__Unknown(value) => value,
420         }
421     }
422 }
423 
424 #[doc(hidden)]
425 impl FromGlib<ffi::GOptionArg> for OptionArg {
from_glib(value: ffi::GOptionArg) -> Self426     unsafe fn from_glib(value: ffi::GOptionArg) -> Self {
427         match value {
428             ffi::G_OPTION_ARG_NONE => Self::None,
429             ffi::G_OPTION_ARG_STRING => Self::String,
430             ffi::G_OPTION_ARG_INT => Self::Int,
431             ffi::G_OPTION_ARG_CALLBACK => Self::Callback,
432             ffi::G_OPTION_ARG_FILENAME => Self::Filename,
433             ffi::G_OPTION_ARG_STRING_ARRAY => Self::StringArray,
434             ffi::G_OPTION_ARG_FILENAME_ARRAY => Self::FilenameArray,
435             ffi::G_OPTION_ARG_DOUBLE => Self::Double,
436             ffi::G_OPTION_ARG_INT64 => Self::Int64,
437             value => Self::__Unknown(value),
438         }
439     }
440 }
441 
442 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
443 #[non_exhaustive]
444 #[doc(alias = "GSeekType")]
445 pub enum SeekType {
446     #[doc(alias = "G_SEEK_CUR")]
447     Cur,
448     #[doc(alias = "G_SEEK_SET")]
449     Set,
450     #[doc(alias = "G_SEEK_END")]
451     End,
452     #[doc(hidden)]
453     __Unknown(i32),
454 }
455 
456 impl fmt::Display for SeekType {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result457     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
458         write!(
459             f,
460             "SeekType::{}",
461             match *self {
462                 Self::Cur => "Cur",
463                 Self::Set => "Set",
464                 Self::End => "End",
465                 _ => "Unknown",
466             }
467         )
468     }
469 }
470 
471 #[doc(hidden)]
472 impl IntoGlib for SeekType {
473     type GlibType = ffi::GSeekType;
474 
into_glib(self) -> ffi::GSeekType475     fn into_glib(self) -> ffi::GSeekType {
476         match self {
477             Self::Cur => ffi::G_SEEK_CUR,
478             Self::Set => ffi::G_SEEK_SET,
479             Self::End => ffi::G_SEEK_END,
480             Self::__Unknown(value) => value,
481         }
482     }
483 }
484 
485 #[doc(hidden)]
486 impl FromGlib<ffi::GSeekType> for SeekType {
from_glib(value: ffi::GSeekType) -> Self487     unsafe fn from_glib(value: ffi::GSeekType) -> Self {
488         match value {
489             ffi::G_SEEK_CUR => Self::Cur,
490             ffi::G_SEEK_SET => Self::Set,
491             ffi::G_SEEK_END => Self::End,
492             value => Self::__Unknown(value),
493         }
494     }
495 }
496 
497 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
498 #[non_exhaustive]
499 #[doc(alias = "GTimeType")]
500 pub enum TimeType {
501     #[doc(alias = "G_TIME_TYPE_STANDARD")]
502     Standard,
503     #[doc(alias = "G_TIME_TYPE_DAYLIGHT")]
504     Daylight,
505     #[doc(alias = "G_TIME_TYPE_UNIVERSAL")]
506     Universal,
507     #[doc(hidden)]
508     __Unknown(i32),
509 }
510 
511 impl fmt::Display for TimeType {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result512     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
513         write!(
514             f,
515             "TimeType::{}",
516             match *self {
517                 Self::Standard => "Standard",
518                 Self::Daylight => "Daylight",
519                 Self::Universal => "Universal",
520                 _ => "Unknown",
521             }
522         )
523     }
524 }
525 
526 #[doc(hidden)]
527 impl IntoGlib for TimeType {
528     type GlibType = ffi::GTimeType;
529 
into_glib(self) -> ffi::GTimeType530     fn into_glib(self) -> ffi::GTimeType {
531         match self {
532             Self::Standard => ffi::G_TIME_TYPE_STANDARD,
533             Self::Daylight => ffi::G_TIME_TYPE_DAYLIGHT,
534             Self::Universal => ffi::G_TIME_TYPE_UNIVERSAL,
535             Self::__Unknown(value) => value,
536         }
537     }
538 }
539 
540 #[doc(hidden)]
541 impl FromGlib<ffi::GTimeType> for TimeType {
from_glib(value: ffi::GTimeType) -> Self542     unsafe fn from_glib(value: ffi::GTimeType) -> Self {
543         match value {
544             ffi::G_TIME_TYPE_STANDARD => Self::Standard,
545             ffi::G_TIME_TYPE_DAYLIGHT => Self::Daylight,
546             ffi::G_TIME_TYPE_UNIVERSAL => Self::Universal,
547             value => Self::__Unknown(value),
548         }
549     }
550 }
551 
552 #[cfg(any(feature = "v2_66", feature = "dox"))]
553 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
554 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
555 #[non_exhaustive]
556 #[doc(alias = "GUriError")]
557 pub enum UriError {
558     #[doc(alias = "G_URI_ERROR_FAILED")]
559     Failed,
560     #[doc(alias = "G_URI_ERROR_BAD_SCHEME")]
561     BadScheme,
562     #[doc(alias = "G_URI_ERROR_BAD_USER")]
563     BadUser,
564     #[doc(alias = "G_URI_ERROR_BAD_PASSWORD")]
565     BadPassword,
566     #[doc(alias = "G_URI_ERROR_BAD_AUTH_PARAMS")]
567     BadAuthParams,
568     #[doc(alias = "G_URI_ERROR_BAD_HOST")]
569     BadHost,
570     #[doc(alias = "G_URI_ERROR_BAD_PORT")]
571     BadPort,
572     #[doc(alias = "G_URI_ERROR_BAD_PATH")]
573     BadPath,
574     #[doc(alias = "G_URI_ERROR_BAD_QUERY")]
575     BadQuery,
576     #[doc(alias = "G_URI_ERROR_BAD_FRAGMENT")]
577     BadFragment,
578     #[doc(hidden)]
579     __Unknown(i32),
580 }
581 
582 #[cfg(any(feature = "v2_66", feature = "dox"))]
583 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
584 impl fmt::Display for UriError {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result585     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
586         write!(
587             f,
588             "UriError::{}",
589             match *self {
590                 Self::Failed => "Failed",
591                 Self::BadScheme => "BadScheme",
592                 Self::BadUser => "BadUser",
593                 Self::BadPassword => "BadPassword",
594                 Self::BadAuthParams => "BadAuthParams",
595                 Self::BadHost => "BadHost",
596                 Self::BadPort => "BadPort",
597                 Self::BadPath => "BadPath",
598                 Self::BadQuery => "BadQuery",
599                 Self::BadFragment => "BadFragment",
600                 _ => "Unknown",
601             }
602         )
603     }
604 }
605 
606 #[cfg(any(feature = "v2_66", feature = "dox"))]
607 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
608 #[doc(hidden)]
609 impl IntoGlib for UriError {
610     type GlibType = ffi::GUriError;
611 
into_glib(self) -> ffi::GUriError612     fn into_glib(self) -> ffi::GUriError {
613         match self {
614             Self::Failed => ffi::G_URI_ERROR_FAILED,
615             Self::BadScheme => ffi::G_URI_ERROR_BAD_SCHEME,
616             Self::BadUser => ffi::G_URI_ERROR_BAD_USER,
617             Self::BadPassword => ffi::G_URI_ERROR_BAD_PASSWORD,
618             Self::BadAuthParams => ffi::G_URI_ERROR_BAD_AUTH_PARAMS,
619             Self::BadHost => ffi::G_URI_ERROR_BAD_HOST,
620             Self::BadPort => ffi::G_URI_ERROR_BAD_PORT,
621             Self::BadPath => ffi::G_URI_ERROR_BAD_PATH,
622             Self::BadQuery => ffi::G_URI_ERROR_BAD_QUERY,
623             Self::BadFragment => ffi::G_URI_ERROR_BAD_FRAGMENT,
624             Self::__Unknown(value) => value,
625         }
626     }
627 }
628 
629 #[cfg(any(feature = "v2_66", feature = "dox"))]
630 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
631 #[doc(hidden)]
632 impl FromGlib<ffi::GUriError> for UriError {
from_glib(value: ffi::GUriError) -> Self633     unsafe fn from_glib(value: ffi::GUriError) -> Self {
634         match value {
635             ffi::G_URI_ERROR_FAILED => Self::Failed,
636             ffi::G_URI_ERROR_BAD_SCHEME => Self::BadScheme,
637             ffi::G_URI_ERROR_BAD_USER => Self::BadUser,
638             ffi::G_URI_ERROR_BAD_PASSWORD => Self::BadPassword,
639             ffi::G_URI_ERROR_BAD_AUTH_PARAMS => Self::BadAuthParams,
640             ffi::G_URI_ERROR_BAD_HOST => Self::BadHost,
641             ffi::G_URI_ERROR_BAD_PORT => Self::BadPort,
642             ffi::G_URI_ERROR_BAD_PATH => Self::BadPath,
643             ffi::G_URI_ERROR_BAD_QUERY => Self::BadQuery,
644             ffi::G_URI_ERROR_BAD_FRAGMENT => Self::BadFragment,
645             value => Self::__Unknown(value),
646         }
647     }
648 }
649 
650 #[cfg(any(feature = "v2_66", feature = "dox"))]
651 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
652 impl ErrorDomain for UriError {
domain() -> Quark653     fn domain() -> Quark {
654         unsafe { from_glib(ffi::g_uri_error_quark()) }
655     }
656 
code(self) -> i32657     fn code(self) -> i32 {
658         self.into_glib()
659     }
660 
from(code: i32) -> Option<Self>661     fn from(code: i32) -> Option<Self> {
662         match code {
663             ffi::G_URI_ERROR_FAILED => Some(Self::Failed),
664             ffi::G_URI_ERROR_BAD_SCHEME => Some(Self::BadScheme),
665             ffi::G_URI_ERROR_BAD_USER => Some(Self::BadUser),
666             ffi::G_URI_ERROR_BAD_PASSWORD => Some(Self::BadPassword),
667             ffi::G_URI_ERROR_BAD_AUTH_PARAMS => Some(Self::BadAuthParams),
668             ffi::G_URI_ERROR_BAD_HOST => Some(Self::BadHost),
669             ffi::G_URI_ERROR_BAD_PORT => Some(Self::BadPort),
670             ffi::G_URI_ERROR_BAD_PATH => Some(Self::BadPath),
671             ffi::G_URI_ERROR_BAD_QUERY => Some(Self::BadQuery),
672             ffi::G_URI_ERROR_BAD_FRAGMENT => Some(Self::BadFragment),
673             _ => Some(Self::Failed),
674         }
675     }
676 }
677