* SECTION:extensionpoints
* @short_description: Extension Points
* @include: gio.h
- * @see_also: <link linkend="extending-gio">Extending GIO</link>
+ * @see_also: [Extending GIO][extending-gio]
*
* #GIOExtensionPoint provides a mechanism for modules to extend the
* functionality of the library or application that loaded it in an
* |[<!-- language="C" -->
* GIOExtensionPoint *ep;
*
- * /* Register an extension point */
+ * // Register an extension point
* ep = g_io_extension_point_register ("my-extension-point");
* g_io_extension_point_set_required_type (ep, MY_TYPE_EXAMPLE);
* ]|
*
* |[<!-- language="C" -->
- * /* Implement an extension point */
+ * // Implement an extension point
* G_DEFINE_TYPE (MyExampleImpl, my_example_impl, MY_TYPE_EXAMPLE);
* g_io_extension_point_implement ("my-extension-point",
* my_example_impl_get_type (),
*
* To avoid opening all modules just to find out what extension
* points they implement, GIO makes use of a caching mechanism,
- * see <link linkend="gio-querymodules">gio-querymodules</link>.
+ * see [gio-querymodules][gio-querymodules].
* You are expected to run this command after installing a
* GIO module.
*
- * The <envar>GIO_EXTRA_MODULES</envar> environment variable can be
- * used to specify additional directories to automatically load modules
+ * The `GIO_EXTRA_MODULES` environment variable can be used to
+ * specify additional directories to automatically load modules
* from. This environment variable has the same syntax as the
- * <envar>PATH</envar>. If two modules have the same base name in different
+ * `PATH`. If two modules have the same base name in different
* directories, then the latter one will be ignored. If additional
* directories are specified GIO will load modules from the built-in
* directory last.
* The result is cached after it is generated the first time, and
* the function is thread-safe.
*
- * Return value: (transfer none): an object implementing
+ * Returns: (transfer none): an object implementing
* @extension_point, or %NULL if there are no usable
* implementations.
*/
* The result is cached after it is generated the first time, and
* the function is thread-safe.
*
- * Return value: (transfer none): an object implementing
+ * Returns: (transfer none): an object implementing
* @extension_point, or %NULL if there are no usable
* implementations.
*/
/* Initialize types from built-in "modules" */
g_type_ensure (g_null_settings_backend_get_type ());
g_type_ensure (g_memory_settings_backend_get_type ());
-#if defined(HAVE_SYS_INOTIFY_H) || defined(HAVE_LINUX_INOTIFY_H)
+#if defined(HAVE_INOTIFY_INIT1)
g_type_ensure (_g_inotify_directory_monitor_get_type ());
g_type_ensure (_g_inotify_file_monitor_get_type ());
#endif
g_type_ensure (g_win32_directory_monitor_get_type ());
g_type_ensure (g_registry_backend_get_type ());
#endif
-#ifdef HAVE_CARBON
+#ifdef HAVE_COCOA
g_nextstep_settings_backend_get_type ();
#endif
#ifdef G_OS_UNIX
{
GList *l;
+ g_return_val_if_fail (name != NULL, NULL);
+
lazy_load_modules (extension_point);
for (l = extension_point->extensions; l != NULL; l = l->next)
{