XbBuilder

XbBuilder

Functions

Types and Values

Description

Functions

xb_builder_new ()

XbBuilder *
xb_builder_new (void);

Creates a new builder.

The XbSilo returned by the methods of this XbBuilder will use the thread-default main context at the time of calling this function for its future signal emissions.

Returns

a new XbBuilder

Since: 0.1.0


xb_builder_append_guid ()

void
xb_builder_append_guid (XbBuilder *self,
                        const gchar *guid);

Adds the GUID to the internal correctness hash.

Parameters

self

a XbSilo

 

guid

any text, typcically a filename or GUID

 

Since: 0.1.0


xb_builder_import_source ()

void
xb_builder_import_source (XbBuilder *self,
                          XbBuilderSource *source);

Adds a XbBuilderSource to the XbBuilder.

Parameters

self

a XbSilo

 

source

a XbBuilderSource

 

Since: 0.1.0


xb_builder_import_node ()

void
xb_builder_import_node (XbBuilder *self,
                        XbBuilderNode *bn);

Adds a node tree to the builder.

If you are manually adding dynamic data sourced from a non-static source then you MUST use xb_builder_append_guid() with the appropriate GUID value, e.g. the file name and mtime.

If no appropriate value is available, the caller can use something like:

g_autofree gchar *tmp = xb_builder_node_export(bn, XB_NODE_EXPORT_FLAG_NONE, NULL); xb_builder_append_guid(builder, tmp);

Failure to include an appropriate GUID value would allow an out-of-data silo to be used.

Parameters

self

a XbSilo

 

bn

a XbBuilderNode

 

Since: 0.1.0


xb_builder_compile ()

XbSilo *
xb_builder_compile (XbBuilder *self,
                    XbBuilderCompileFlags flags,
                    GCancellable *cancellable,
                    GError **error);

Compiles a XbSilo.

Parameters

self

a XbSilo

 

flags

some XbBuilderCompileFlags, e.g. XB_BUILDER_SOURCE_FLAG_LITERAL_TEXT

 

cancellable

a GCancellable, or NULL

 

error

the GError, or NULL

 

Returns

a XbSilo, or NULL for error.

[transfer full]

Since: 0.1.0


xb_builder_ensure ()

XbSilo *
xb_builder_ensure (XbBuilder *self,
                   GFile *file,
                   XbBuilderCompileFlags flags,
                   GCancellable *cancellable,
                   GError **error);

Ensures file is up to date, and returns a compiled XbSilo.

If silo is being used by a query (e.g. in another thread) then all node data is immediately invalid.

The returned XbSilo will use the thread-default main context at the time of calling this function for its future signal emissions.

Parameters

self

a XbSilo

 

file

a GFile

 

flags

some XbBuilderCompileFlags, e.g. XB_BUILDER_COMPILE_FLAG_IGNORE_INVALID

 

cancellable

a GCancellable, or NULL

 

error

the GError, or NULL

 

Returns

a XbSilo, or NULL for error.

[transfer full]

Since: 0.1.0


xb_builder_add_locale ()

void
xb_builder_add_locale (XbBuilder *self,
                       const gchar *locale);

Adds a locale to the builder. Locales added first will be prioritised over locales added later.

Parameters

self

a XbSilo

 

locale

a locale, e.g. "en_US"

 

Since: 0.1.0


xb_builder_add_fixup ()

void
xb_builder_add_fixup (XbBuilder *self,
                      XbBuilderFixup *fixup);

Adds a function that will get run on every XbBuilderNode compile creates for the silo. This is run after all the XbBuilderSource fixups have been run.

Parameters

self

a XbBuilder

 

fixup

a XbBuilderFixup

 

Since: 0.1.3


xb_builder_set_profile_flags ()

void
xb_builder_set_profile_flags (XbBuilder *self,
                              XbSiloProfileFlags profile_flags);

Enables or disables the collection of profiling data.

Parameters

self

a XbBuilder

 

profile_flags

some XbSiloProfileFlags, e.g. XB_SILO_PROFILE_FLAG_DEBUG

 

Since: 0.1.1

Types and Values

XB_TYPE_BUILDER

#define             XB_TYPE_BUILDER

struct XbBuilderClass

struct XbBuilderClass {
	GObjectClass parent_class;
};

enum XbBuilderCompileFlags

The flags for converting to XML.

Members

XB_BUILDER_COMPILE_FLAG_NONE

   

XB_BUILDER_COMPILE_FLAG_NATIVE_LANGS

   

XB_BUILDER_COMPILE_FLAG_IGNORE_INVALID

   

XB_BUILDER_COMPILE_FLAG_SINGLE_LANG

   

XB_BUILDER_COMPILE_FLAG_WATCH_BLOB

   

XB_BUILDER_COMPILE_FLAG_IGNORE_GUID

   

XB_BUILDER_COMPILE_FLAG_SINGLE_ROOT

   

XbBuilder

typedef struct _XbBuilder XbBuilder;