AscResult

AscResult — A composer result for a single unit.

Functions

Types and Values

Includes

#include <appstream-compose.h>

Description

Functions

asc_result_new ()

AscResult *
asc_result_new (void);

Creates a new AscResult.


asc_result_unit_ignored ()

gboolean
asc_result_unit_ignored (AscResult *result);

Parameters

result

an AscResult instance.

 

Returns

TRUE if this result means the analyzed unit was ignored entirely.


asc_result_components_count ()

guint
asc_result_components_count (AscResult *result);

Parameters

result

an AscResult instance.

 

Returns

The amount of components found for this unit.


asc_result_hints_count ()

guint
asc_result_hints_count (AscResult *result);

Parameters

result

an AscResult instance.

 

Returns

The amount of hints emitted for this unit.


asc_result_is_ignored ()

gboolean
asc_result_is_ignored (AscResult *result,
                       AsComponent *cpt);

Check if an AsComponent was set to be ignored in this result (usually due to errors).

Parameters

result

an AscResult instance.

 

cpt

the component to check for.

 

Returns

TRUE if the component is ignored.


asc_result_get_bundle_kind ()

AsBundleKind
asc_result_get_bundle_kind (AscResult *result);

Gets the bundle kind these results are for.

Parameters

result

an AscResult instance.

 

asc_result_set_bundle_kind ()

void
asc_result_set_bundle_kind (AscResult *result,
                            AsBundleKind kind);

Sets the kind of the bundle these results are for.

Parameters

result

an AscResult instance.

 

asc_result_get_bundle_id ()

const gchar *
asc_result_get_bundle_id (AscResult *result);

Gets the ID name of the bundle (a package / Flatpak / any entity containing metadata) that these these results are generated for.

Parameters

result

an AscResult instance.

 

asc_result_set_bundle_id ()

void
asc_result_set_bundle_id (AscResult *result,
                          const gchar *id);

Sets the name of the bundle these results are for.

Parameters

result

an AscResult instance.

 

id

The new ID.

 

asc_result_get_component ()

AsComponent *
asc_result_get_component (AscResult *result,
                          const gchar *cid);

Gets the component by its component-id-

Parameters

result

an AscResult instance.

 

cid

Component ID to look for.

 

Returns

An AsComponent.

[transfer none]


asc_result_fetch_components ()

GPtrArray *
asc_result_fetch_components (AscResult *result);

Gets all components this AsResult instance contains.

Parameters

result

an AscResult instance.

 

Returns

(transfer container) (element-type AsComponent) : An array of AsComponent


asc_result_get_hints ()

GPtrArray *
asc_result_get_hints (AscResult *result,
                      const gchar *cid);

Gets hints for a component with the given component-id.

Parameters

result

an AscResult instance.

 

cid

Component ID to look for.

 

Returns

An array of AscHint or NULL.

[transfer none][element-type AscHint]


asc_result_fetch_hints_all ()

GPtrArray *
asc_result_fetch_hints_all (AscResult *result);

Get a list of all hints for all components that are registered with this result.

Parameters

result

an AscResult instance.

 

Returns

(transfer container) (element-type AscHint) : An array of AscHint


asc_result_get_component_ids_with_hints ()

const gchar **
asc_result_get_component_ids_with_hints
                               (AscResult *result);

Gets list of component-IDs which do have issue hints associated with them.

Parameters

result

an AscResult instance.

 

Returns

An array of component-IDs. Free container with g_free.

[transfer container]


asc_result_update_component_gcid ()

gboolean
asc_result_update_component_gcid (AscResult *result,
                                  AsComponent *cpt,
                                  GBytes *bytes);

Update the global component ID for the given component.

Parameters

result

an AscResult instance.

 

cpt

The AsComponent to edit.

 

bytes

The data to include in the global component ID, or NULL.

[nullable]

Returns

TRUE if the component existed and was updated.


asc_result_update_component_gcid_with_string ()

gboolean
asc_result_update_component_gcid_with_string
                               (AscResult *result,
                                AsComponent *cpt,
                                const gchar *data);

Update the global component ID for the given component. This is a convenience method for asc_result_update_component_gcid

Parameters

result

an AscResult instance.

 

cpt

The AsComponent to edit.

 

data

The data as string to include in the global component ID, or NULL.

[nullable]

Returns

TRUE if the component existed and was updated.


asc_result_gcid_for_cid ()

const gchar *
asc_result_gcid_for_cid (AscResult *result,
                         const gchar *cid);

Retrieve the global component-ID string for the given component-ID, as long as component with the given ID is registered with this AscResult. Otherwise, NULL is returned.

Parameters

result

an AscResult instance.

 

cid

Component ID to look for.

 

asc_result_gcid_for_component ()

const gchar *
asc_result_gcid_for_component (AscResult *result,
                               AsComponent *cpt);

asc_result_get_component_gcids ()

const gchar **
asc_result_get_component_gcids (AscResult *result);

Retrieve a list of all global component-IDs that this result knows of.

Parameters

result

an AscResult instance.

 

Returns

An array of global component IDs. Free with g_free.

[transfer container]


asc_result_add_component ()

gboolean
asc_result_add_component (AscResult *result,
                          AsComponent *cpt,
                          GBytes *bytes,
                          GError **error);

Add component to the results set.

Parameters

result

an AscResult instance.

 

cpt

The AsComponent to add.

 

bytes

Source data used to generate the GCID hash, or NULL if nonexistent.

 

error

A GError or NULL

 

Returns

TRUE on success.


asc_result_add_component_with_string ()

gboolean
asc_result_add_component_with_string (AscResult *result,
                                      AsComponent *cpt,
                                      const gchar *data,
                                      GError **error);

Add component to the results set, using string data.

Parameters

result

an AscResult instance.

 

cpt

The AsComponent to add.

 

data

Source data used to generate the GCID hash, or NULL if nonexistent.

 

error

A GError or NULL

 

Returns

TRUE on success.


asc_result_remove_component ()

gboolean
asc_result_remove_component (AscResult *result,
                             AsComponent *cpt);

Remove a component from the results set.

Parameters

result

an AscResult instance.

 

cpt

The AsComponent to remove.

 

Returns

TRUE if the component was found and removed.


asc_result_remove_component_full ()

gboolean
asc_result_remove_component_full (AscResult *result,
                                  AsComponent *cpt,
                                  gboolean remove_gcid);

Remove a component from the results set.

Parameters

result

an AscResult instance.

 

cpt

The AsComponent to remove.

 

remove_gcid

TRUE if global component ID should be unregistered as well.

 

Returns

TRUE if the component was found and removed.


asc_result_remove_component_by_id ()

gboolean
asc_result_remove_component_by_id (AscResult *result,
                                   const gchar *cid);

Remove a component from the results set.

Parameters

result

an AscResult instance.

 

cid

a component-ID

 

Returns

TRUE if the component was found and removed.


asc_result_remove_hints_for_cid ()

void
asc_result_remove_hints_for_cid (AscResult *result,
                                 const gchar *cid);

Remove all hints that we have associated with the selected component-ID.

Parameters

result

an AscResult instance.

 

cid

The component ID

 

asc_result_has_hint ()

gboolean
asc_result_has_hint (AscResult *result,
                     AsComponent *cpt,
                     const gchar *tag);

Test if a hint tag is associated with a given component in this result.

Parameters

result

an AscResult instance.

 

cpt

the AsComponent to check

 

tag

the hint tag to check for

 

Returns

TRUE if a hint with this tag exists for the selected component.


asc_result_add_hint_by_cid ()

gboolean
asc_result_add_hint_by_cid (AscResult *result,
                            const gchar *component_id,
                            const gchar *tag,
                            const gchar *key1,
                            ...);

Add an issue hint for a component.

[skip]

Parameters

result

an AscResult instance.

 

component_id

The component-ID of the affected AsComponent

 

tag

AppStream Compose Issue hint tag

 

key1

First key to add a value for, or NULL

 

...

replacement keys and values for the issue explanation, terminated by NULL

 

Returns

TRUE if the added hint did not cause the component to be invalidated.


asc_result_add_hint_by_cid_v ()

gboolean
asc_result_add_hint_by_cid_v (AscResult *result,
                              const gchar *component_id,
                              const gchar *tag,
                              gchar **kv);

Add an issue hint for a component.

[rename-to asc_result_add_hint_by_cid]

Parameters

result

an AscResult instance.

 

component_id

The component-ID of the affected AsComponent

 

tag

AppStream Compose Issue hint tag

 

kv

List of key-value pairs for replacement variables.

 

Returns

TRUE if the added hint did not cause the component to be invalidated.


asc_result_add_hint ()

gboolean
asc_result_add_hint (AscResult *result,
                     AsComponent *cpt,
                     const gchar *tag,
                     const gchar *key1,
                     ...);

Add an issue hint for a component.

[skip]

Parameters

result

an AscResult instance.

 

cpt

The affected AsComponent

 

tag

AppStream Compose Issue hint tag

 

key1

First key to add a value for, or NULL

 

...

replacement keys and values for the issue explanation, terminated by NULL

 

Returns

TRUE if the added hint did not cause the component to be invalidated.


asc_result_add_hint_simple ()

gboolean
asc_result_add_hint_simple (AscResult *result,
                            AsComponent *cpt,
                            const gchar *tag);

Add an issue hint which does not have any variables to replace in its explanation text for a component.

[skip]

Parameters

result

an AscResult instance.

 

cpt

The affected AsComponent

 

tag

AppStream Compose Issue hint tag

 

Returns

TRUE if the added hint did not cause the component to be invalidated.


asc_result_add_hint_v ()

gboolean
asc_result_add_hint_v (AscResult *result,
                       AsComponent *cpt,
                       const gchar *tag,
                       gchar **kv);

Add an issue hint for a component.

[rename-to asc_result_add_hint]

Parameters

result

an AscResult instance.

 

cpt

The affected AsComponent

 

tag

AppStream Compose Issue hint tag

 

kv

List of key-value pairs for replacement variables.

 

Returns

TRUE if the added hint did not cause the component to be invalidated.

Types and Values

ASC_TYPE_RESULT

#define ASC_TYPE_RESULT (asc_result_get_type ())

struct AscResultClass

struct AscResultClass {
	GObjectClass parent_class;
};

AscResult

typedef struct _AscResult AscResult;