/* gmodule-2.0.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "G", gir_namespace = "GModule", gir_version = "2.0", lower_case_cprefix = "g_")]
namespace GLib {
	[CCode (cheader_filename = "gmodule.h", free_function = "g_module_close", has_type_id = false)]
	[Compact]
	public class Module {
		[Version (deprecated = true, deprecated_since = "2.76")]
		public const string SUFFIX;
		[CCode (cname = "g_module_open_full", has_construct_function = false)]
		[Version (since = "2.70")]
		public Module (string? file_name, GLib.ModuleFlags flags) throws GLib.ModuleError;
		[Version (deprecated = true, deprecated_since = "2.76")]
		public static string build_path (string? directory, string module_name);
		[DestroysInstance]
		public bool close ();
		public static unowned string error ();
		public static GLib.Quark error_quark ();
		public void make_resident ();
		public unowned string name ();
		public static GLib.Module? open (string? file_name, GLib.ModuleFlags flags);
		public static bool supported ();
		public bool symbol (string symbol_name, out void* symbol);
	}
	[CCode (cheader_filename = "gmodule.h", cprefix = "G_MODULE_BIND_", has_type_id = false)]
	public enum ModuleFlags {
		[CCode (cname = "G_MODULE_BIND_LAZY")]
		[Version (deprecated = true, deprecated_since = "vala-0.46", replacement = "LAZY")]
		BIND_LAZY,
		[CCode (cname = "G_MODULE_BIND_LOCAL")]
		[Version (deprecated = true, deprecated_since = "vala-0.46", replacement = "LOCAL")]
		BIND_LOCAL,
		[CCode (cname = "G_MODULE_BIND_MASK")]
		[Version (deprecated = true, deprecated_since = "vala-0.46", replacement = "MASK")]
		BIND_MASK,
		LAZY,
		LOCAL,
		MASK
	}
	[CCode (cheader_filename = "gmodule.h", cprefix = "G_MODULE_ERROR_", has_type_id = false)]
	[Version (since = "2.70")]
	public errordomain ModuleError {
		FAILED,
		CHECK_FAILED;
		[Version (replacement = "Module.error_quark")]
		public static GLib.Quark quark ();
	}
	[CCode (cheader_filename = "gmodule.h", has_target = false)]
	public delegate unowned string ModuleCheckInit (GLib.Module module);
	[CCode (cheader_filename = "gmodule.h", has_target = false)]
	public delegate void ModuleUnload (GLib.Module module);
	[CCode (cheader_filename = "gmodule.h", cname = "G_MODULE_IMPL_AR")]
	public const int MODULE_IMPL_AR;
	[CCode (cheader_filename = "gmodule.h", cname = "G_MODULE_IMPL_DL")]
	public const int MODULE_IMPL_DL;
	[CCode (cheader_filename = "gmodule.h", cname = "G_MODULE_IMPL_NONE")]
	public const int MODULE_IMPL_NONE;
	[CCode (cheader_filename = "gmodule.h", cname = "G_MODULE_IMPL_WIN32")]
	public const int MODULE_IMPL_WIN32;
	[CCode (cheader_filename = "gmodule.h")]
	[Version (deprecated = true, deprecated_since = "2.76", replacement = "Module.build_path")]
	public static string module_build_path (string? directory, string module_name);
	[CCode (cheader_filename = "gmodule.h")]
	[Version (replacement = "Module.error")]
	public static unowned string module_error ();
	[CCode (cheader_filename = "gmodule.h")]
	[Version (replacement = "Module.supported")]
	public static bool module_supported ();
}
