/
githubmirror
/
libxmlb
Обзор
Документация
Войти
/
githubmirror
/
libxmlb
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
0.3.13
src/xb-silo.h
113 строк
3 KB
Richard Hughes
trivial: Reformat with clang-format
29 дек 2021, 12:43
29 дек 2021, 12:43
8836e41
Код
Авторство
О чём код?
/* * Copyright (C) 2018 Richard Hughes <richard@hughsie.com> * * SPDX-License-Identifier: LGPL-2.1+ */ #pragma once #include <gio/gio.h> #include <glib-object.h> #include <glib.h> #include "xb-node.h" G_BEGIN_DECLS #define XB_TYPE_SILO (xb_silo_get_type()) G_DECLARE_DERIVABLE_TYPE(XbSilo, xb_silo, XB, SILO, GObject) struct _XbSiloClass { GObjectClass parent_class; /*< private >*/ void (*_xb_reserved1)(void); void (*_xb_reserved2)(void); void (*_xb_reserved3)(void); void (*_xb_reserved4)(void); void (*_xb_reserved5)(void); void (*_xb_reserved6)(void); void (*_xb_reserved7)(void); }; /** * XbSiloLoadFlags: * @XB_SILO_LOAD_FLAG_NONE: No extra flags to use * @XB_SILO_LOAD_FLAG_NO_MAGIC: No not check header signature * @XB_SILO_LOAD_FLAG_WATCH_BLOB: Watch the XMLB file for changes * * The flags for loading a silo. **/ typedef enum { XB_SILO_LOAD_FLAG_NONE = 0, /* Since: 0.1.0 */ XB_SILO_LOAD_FLAG_NO_MAGIC = 1 << 0, /* Since: 0.1.0 */ XB_SILO_LOAD_FLAG_WATCH_BLOB = 1 << 1, /* Since: 0.1.0 */ /*< private >*/ XB_SILO_LOAD_FLAG_LAST } XbSiloLoadFlags; /** * XbSiloProfileFlags: * @XB_SILO_PROFILE_FLAG_NONE: No extra flags to use * @XB_SILO_PROFILE_FLAG_DEBUG: Output profiling as debug * @XB_SILO_PROFILE_FLAG_APPEND: Save profiling in an appended string * @XB_SILO_PROFILE_FLAG_XPATH: Save XPATH queries * @XB_SILO_PROFILE_FLAG_OPTIMIZER: Output the machine optimizer as debug * * The flags used when profiling a silo. **/ typedef enum { XB_SILO_PROFILE_FLAG_NONE = 0, /* Since: 0.1.1 */ XB_SILO_PROFILE_FLAG_DEBUG = 1 << 0, /* Since: 0.1.1 */ XB_SILO_PROFILE_FLAG_APPEND = 1 << 1, /* Since: 0.1.1 */ XB_SILO_PROFILE_FLAG_XPATH = 1 << 2, /* Since: 0.1.1 */ XB_SILO_PROFILE_FLAG_OPTIMIZER = 1 << 3, /* Since: 0.3.1 */ /*< private >*/ XB_SILO_PROFILE_FLAG_LAST } XbSiloProfileFlags; XbSilo * xb_silo_new(void); XbSilo * xb_silo_new_from_xml(const gchar *xml, GError **error); GBytes * xb_silo_get_bytes(XbSilo *self); gboolean xb_silo_load_from_bytes(XbSilo *self, GBytes *blob, XbSiloLoadFlags flags, GError **error); gboolean xb_silo_load_from_file(XbSilo *self, GFile *file, XbSiloLoadFlags flags, GCancellable *cancellable, GError **error); gboolean xb_silo_save_to_file(XbSilo *self, GFile *file, GCancellable *cancellable, GError **error); gchar * xb_silo_to_string(XbSilo *self, GError **error); guint xb_silo_get_size(XbSilo *self); const gchar * xb_silo_get_guid(XbSilo *self); XbNode * xb_silo_get_root(XbSilo *self); void xb_silo_invalidate(XbSilo *self); gboolean xb_silo_is_valid(XbSilo *self); gboolean xb_silo_watch_file(XbSilo *self, GFile *file, GCancellable *cancellable, GError **error); void xb_silo_set_profile_flags(XbSilo *self, XbSiloProfileFlags profile_flags); const gchar * xb_silo_get_profile_string(XbSilo *self); gboolean xb_silo_get_enable_node_cache(XbSilo *self); void xb_silo_set_enable_node_cache(XbSilo *self, gboolean enable_node_cache); #include "xb-query.h" XbQuery * xb_silo_lookup_query(XbSilo *self, const gchar *xpath); G_END_DECLS