gio/auto/
file_attribute_info_list.rs

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
5use crate::{ffi, FileAttributeInfoFlags, FileAttributeType};
6use glib::translate::*;
7
8glib::wrapper! {
9    #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
10    pub struct FileAttributeInfoList(Shared<ffi::GFileAttributeInfoList>);
11
12    match fn {
13        ref => |ptr| ffi::g_file_attribute_info_list_ref(ptr),
14        unref => |ptr| ffi::g_file_attribute_info_list_unref(ptr),
15        type_ => || ffi::g_file_attribute_info_list_get_type(),
16    }
17}
18
19impl FileAttributeInfoList {
20    #[doc(alias = "g_file_attribute_info_list_new")]
21    pub fn new() -> FileAttributeInfoList {
22        unsafe { from_glib_full(ffi::g_file_attribute_info_list_new()) }
23    }
24
25    #[doc(alias = "g_file_attribute_info_list_add")]
26    pub fn add(&self, name: &str, type_: FileAttributeType, flags: FileAttributeInfoFlags) {
27        unsafe {
28            ffi::g_file_attribute_info_list_add(
29                self.to_glib_none().0,
30                name.to_glib_none().0,
31                type_.into_glib(),
32                flags.into_glib(),
33            );
34        }
35    }
36
37    #[doc(alias = "g_file_attribute_info_list_dup")]
38    #[must_use]
39    pub fn dup(&self) -> FileAttributeInfoList {
40        unsafe { from_glib_full(ffi::g_file_attribute_info_list_dup(self.to_glib_none().0)) }
41    }
42}
43
44impl Default for FileAttributeInfoList {
45    fn default() -> Self {
46        Self::new()
47    }
48}