Files

645 lines
15 KiB
TOML

[options]
girs_directories = ["../gir-files"]
library = "GLib"
version = "2.0"
min_cfg_version = "2.48"
target_path = "."
work_mode = "normal"
single_version_file = true
deprecate_by_min_version = true
trust_return_value_nullability = true
generate = [
"GLib.DateDay",
"GLib.DateMonth",
"GLib.DateWeekday",
"GLib.DateYear",
"GLib.FileSetContentsFlags",
"GLib.FormatSizeFlags",
"GLib.KeyFileError",
"GLib.KeyFileFlags",
"GLib.LogLevelFlags",
"GLib.OptionArg",
"GLib.OptionFlags",
"GLib.SeekType",
"GLib.SpawnFlags",
"GLib.Time",
"GLib.TimeType",
"GLib.TimeSpan",
"GLib.FileTest",
"GLib.IOCondition",
"GLib.UriError",
"GLib.UriFlags",
"GLib.UriHideFlags",
"GLib.UriParamsFlags",
]
ignore = [
]
manual = [
"GLib.Bytes",
"GLib.ByteArray",
"GLib.Error",
"GLib.Variant",
"GLib.VariantType",
"GLib.UserDirectory",
"GObject.Object",
]
[[object]]
name = "GLib.*"
status = "generate"
[[object.function]]
name = "propagate_error"
#empty first parameter
ignore = true
[[object.function]]
name = "set_error_literal"
#empty first parameter
ignore = true
[[object.function]]
pattern = "atomic_.+"
ignore = true
[[object.function]]
pattern = "bit_.*lock"
ignore = true
[[object.function]]
name = "get_filename_charsets"
#string
ignore = true
[[object.function]]
pattern = "str.+v"
#string
ignore = true
[[object.function]]
name = "strv_length"
#string
ignore = true
[[object.function]]
pattern = "str.+"
ignore = true
[[object.function]]
pattern = "ucs4_.+"
ignore = true
[[object.function]]
pattern = "utf16_.+"
ignore = true
[[object.function]]
pattern = "utf8_.+"
ignore = true
[[object.function]]
pattern = "unichar_.+"
ignore = true
[[object.function]]
pattern = "ascii_.+"
ignore = true
[[object.function]]
name = "assertion_message_error"
#Quark
ignore = true
[[object.function]]
name = "assertion_message_expr"
ignore = true # function is useless
[[object.function]]
pattern = "test_.+"
ignore = true # functions are useless
[[object.function]]
pattern = ".+_error_quark"
#Quark
ignore = true
[[object.function]]
pattern = "quark_.+_string"
#Quark
ignore = true
[[object.function]]
name = "spawn_close_pid"
#Pid
ignore = true
[[object.function]]
name = "get_current_dir"
#manual
ignore = true
[[object.function]]
pattern = "[gs]et_prgname"
#manual pathbuf
ignore = true
[[object.function]]
name = "filename_from_utf8"
#not in 64bit lib for Windows
ignore = true
[[object.function]]
name = "get_user_name"
#manual pathbuf is_windows_utf8
ignore = true
[[object.function]]
pattern = "[gs]etenv"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "unsetenv"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "filename_to_uri"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "filename_from_uri"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "find_program_in_path"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "get_home_dir"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "get_real_name"
#manual pathbuf? is_windows_utf8
ignore = true
[[object.function]]
name = "get_tmp_dir"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "mkstemp"
#manual is_windows_utf8
ignore = true
[[object.function]]
name = "strdup"
#not needed
ignore = true
[[object.function]]
pattern = "unix_.+"
cfg_condition = "unix"
[[object.function]]
name = "spawn_command_line_async"
cfg_condition = "unix"
[[object.function.parameter]]
name = "command_line"
string_type = "os_string"
[[object.function]]
name = "unix_open_pipe"
manual = true
[[object.function]]
name = "convert_with_fallback"
#out param not in .gir
ignore = true
[[object.function]]
name = "unicode_canonical_decomposition"
#out param not in .gir
ignore = true
[[object.function]]
name = "unicode_canonical_ordering"
#UCS-4 encoded string
ignore = true
[[object.function]]
name = "convert"
#unusable
ignore = true
[[object.function]]
name = "filename_to_utf8"
#unusable
ignore = true
[[object.function]]
name = "locale_from_utf8"
#unusable
ignore = true
[[object.function]]
name = "locale_to_utf8"
#unusable
ignore = true
[[object.function]]
name = "child_watch_source_new"
# Need manual bindings to be useful
ignore = true
[[object.function]]
name = "idle_source_new"
# Need manual bindings to be useful
ignore = true
[[object.function]]
name = "timeout_source_new"
# Need manual bindings to be useful
ignore = true
[[object.function]]
name = "timeout_source_new_seconds"
# Need manual bindings to be useful
ignore = true
[[object.function]]
name = "unix_signal_source_new"
# Need manual bindings to be useful
ignore = true
[[object.function]]
pattern = "unix_fd.*"
# Need manual binding for RawFd
ignore = true
[[object.function]]
name = "close"
# Need manual binding for RawFd
ignore = true
[[object.function]]
name = "log_writer_is_journald"
# Need manual binding for RawFd
ignore = true
[[object.function]]
name = "log_writer_supports_color"
# Need manual binding for RawFd
ignore = true
[[object.function]]
name = "unix_set_fd_nonblocking"
# Need manual binding for RawFd
ignore = true
[[object.function]]
name = "environ_getenv"
# manual input &[OsString]
ignore = true
[[object.function]]
pattern = "environ_(un)?setenv"
# unusable
ignore = true
[[object.function]]
name = "get_charset"
# boolean return value
ignore = true
[[object.function]]
name = "get_environ"
[object.function.return]
string_type = "os_string"
[[object.function]]
name = "listenv"
[object.function.return]
string_type = "os_string"
[[object.function]]
name = "shell_parse_argv"
[[object.function.parameter]]
name = "command_line"
string_type = "os_string"
[[object.function.parameter]]
name = "argvp"
string_type = "os_string"
[[object.function]]
name = "shell_quote"
[[object.function.parameter]]
name = "unquoted_string"
string_type = "os_string"
[object.function.return]
string_type = "os_string"
[[object.function]]
name = "shell_unquote"
[[object.function.parameter]]
name = "quoted_string"
string_type = "os_string"
[object.function.return]
string_type = "os_string"
[[object.function]]
name = "intern_static_string"
ignore = true
[[object.function]]
name = "intern_string"
ignore = true
[[object.function]]
# Pid conversion issue
name = "child_watch_add"
ignore = true
[[object.function]]
# Pid conversion issue
name = "child_watch_add_full"
ignore = true
[[object.function]]
name = "idle_add"
ignore = true
[[object.function]]
name = "idle_add_full"
ignore = true
[[object.function]]
name = "timeout_add"
ignore = true
[[object.function]]
name = "timeout_add_full"
ignore = true
[[object.function]]
name = "timeout_add_seconds"
ignore = true
[[object.function]]
name = "timeout_add_seconds_full"
ignore = true
[[object.function]]
name = "unix_signal_add"
ignore = true
[[object.function]]
name = "unix_signal_add_full"
ignore = true
[[object.function]]
pattern = "rc_box_.+"
#need manual implementation
ignore = true
[[object.function]]
pattern = "ref_count_.+"
#need manual implementation
ignore = true
[[object.function]]
pattern = "ref_string_.+"
#need manual implementation
ignore = true
[[object.function]]
name = "spawn_async_with_fds"
# generates invalid FDs
ignore = true
[[object.function]]
name = "spawn_async_with_pipes"
# generates invalid FDs
ignore = true
[[object.function]]
name = "log_set_handler"
# leaks closure
ignore = true
[[object.function]]
name = "log_default_handler"
# last argument is unused
ignore = true
[[object.function]]
name = "log_set_handler_full"
# from_glib_borrow on non-pointer objects
ignore = true
[[object.function]]
name = "log_set_writer_func"
# from_glib_borrow on non-pointer objects
ignore = true
[[object.function]]
name = "log_structured"
# implemented with a macro because of var args and weird arguments pairing
ignore = true
[[object.function]]
name = "log"
# implemented with a macro because of var args
ignore = true
[[object.function]]
name = "log_set_default_handler"
# It returned the old callback, which is problematic
ignore = true
[[object.function]]
name = "log_remove_handler"
# Change handler_id parameter type to LogHandlerId
ignore = true
[[object.function]]
name = "log_set_always_fatal"
# update of arguments and return type
ignore = true
[[object.function]]
name = "log_variant"
# usage of LogLevelFlags
ignore = true
[[object.function]]
name = "log_set_fatal_mask"
# update of arguments and return type
ignore = true
[[object.constant]]
pattern = "DIR_SEPARATOR(_S)?"
#not cross-platform
ignore = true
[[object.constant]]
pattern = "SEARCHPATH_SEPARATOR(_S)?"
#not cross-platform
ignore = true
[[object.constant]]
name = "MODULE_SUFFIX"
#not cross-platform
ignore = true
[[object.constant]]
pattern = "GU?INT(16)?(32)?(64)?(PTR)?_FORMAT"
#for C printf
ignore = true
[[object.constant]]
pattern = "GU?INT(16)?(32)?(64)?(PTR)?_MODIFIER"
#for C printf
ignore = true
[[object.constant]]
pattern = "GS?SIZE_(FORMAT)?(MODIFIER)?"
#for C printf
ignore = true
[[object.constant]]
pattern = "GNUC_(PRETTY_)?FUNCTION"
#for C printf
ignore = true
[[object.constant]]
pattern = "PID_FORMAT"
#for C printf
ignore = true
[[object.constant]]
pattern = "POLLFD_FORMAT"
#for C printf
ignore = true
[[object.function]]
name = "variant_get_gtype"
# get_type() function that should be used in StaticType impl instead
ignore = true
[[object]]
name = "GLib.Checksum"
status = "generate"
concurrency = "send+sync"
[[object.function]]
name = "get_digest"
#wrong array definition
manual = true
[[object.function]]
name = "get_string"
#consume
manual = true
[[object]]
name = "GLib.ChecksumType"
status = "generate"
[[object.member]]
name = "sha384"
version = "2.52"
[[object]]
name = "GLib.KeyFile"
status = "generate"
[[object.function]]
name = "load_from_data_dirs"
manual = true
[[object.function]]
name = "load_from_dirs"
manual = true
[[object.function]]
name = "save_to_file"
# file parameter needs to be a PathBuf
manual = true
[[object.function]]
name = "set_locale_string_list"
#[&str] to *mut i8
ignore = true
[[object.function]]
name = "set_string_list"
#[&str] to *mut i8
ignore = true
[[object.function]]
name = "to_data"
manual = true
[[object.function]]
name = "set_double_list"
#wrong array type
ignore = true
[[object.function]]
name = "set_integer_list"
#wrong array type
ignore = true
[[object.function]]
name = "get_boolean"
#boolean return value needs to be returned
manual = true
[[object.function]]
name = "has_key"
#boolean return value needs to be returned
manual = true
[[object.function]]
name = "get_boolean_list"
#boolean array needs to be converted to Vec<bool>
manual = true
[[object.function]]
name = "get_string"
# can return an error but still a value to be freed
manual = true
[[object.function]]
name = "get_string_list"
# can return an error but still a value to be freed
manual = true
[[object.function]]
name = "get_locale_string"
# can return an error but still a value to be freed
manual = true
[[object.function]]
name = "get_locale_string_list"
# can return an error but still a value to be freed
manual = true
[[object.function]]
name = "get_comment"
[[object.function.parameter]]
name = "key"
nullable = true
# Fixed in GLib 2.66.2
[[object.function]]
name = "get_start_group"
[object.function.return]
nullable = true
[[object]]
name = "GLib.DateTime"
status = "generate"
concurrency = "send+sync"
[[object.function]]
pattern = ".+"
[object.function.return]
nullable_return_is_error = "Invalid date"
[[object]]
name = "GLib.MainContext"
status = "generate"
concurrency = "send+sync"
[[object.function]]
name = "prepare"
# out parameter not marked as such
manual = true
[[object.function]]
name = "find_source_by_id"
# source id is a newtype
manual = true
[[object.function]]
name = "invoke"
manual = true
[[object.function]]
name = "invoke_full"
ignore = true
# Fixed in GLib 2.66.2
[[object.function]]
name = "get_thread_default"
[object.function.return]
nullable = true
# Fixed in GLib 2.66.2
[[object.function]]
name = "current_source"
[object.function.return]
nullable = true
[[object.function]]
name = "acquire"
# implemented with a guard type
manual = true
[[object.function]]
name = "release"
# implemented with a guard type
manual = true
[[object]]
name = "GLib.MainLoop"
status = "generate"
concurrency = "send+sync"
[[object]]
name = "GLib.Source"
status = "generate"
concurrency = "send+sync"
[[object.function]]
pattern = "set_.+"
# Setters are generally not thread-safe
# while GSource itself is
ignore = true
[[object.function]]
pattern = "attach"
# return type
ignore = true
[[object.function]]
pattern = "get_id"
# unsafe as it would allow multiple times to remove
ignore = true
[[object.function]]
pattern = "remove"
# parameter type
ignore = true
# Fixed in GLib 2.66.2
[[object.function]]
name = "get_name"
[object.function.return]
nullable = true
[[object]]
name = "GLib.TimeZone"
status = "generate"
concurrency = "send+sync"
[[object.function]]
name = "adjust_time"
# in-out parameter
ignore = true
[[object]]
name = "GLib.Uri"
status = "generate"
concurrency = "send+sync"
# Fixed in GLib 2.66.2
[[object.function]]
name = "unescape_string"
[object.function.return]
nullable = true
# Fixed in GLib 2.66.2
[[object.function]]
name = "unescape_segment"
[object.function.return]
nullable = true