as-tag

as-tag — Helper functions to convert to and from tag enums

Stability Level

Stable, unless otherwise indicated

Synopsis

#include <appstream-glib.h>

enum                AsTag;
enum                AsTagFlags;
AsTag               as_tag_from_string                  (const gchar *tag);
AsTag               as_tag_from_string_full             (const gchar *tag,
                                                         AsTagFlags flags);
const gchar *       as_tag_to_string                    (AsTag tag);

Description

These functions will convert a tag enum such as AS_TAG_APPLICATION to it's string form, and also vice-versa.

These helper functions may be useful if implementing an AppStream parser.

Details

enum AsTag

typedef enum {
	AS_TAG_UNKNOWN,			/* Since: 0.1.0 */
	AS_TAG_APPLICATIONS,		/* Since: 0.1.0 */
	AS_TAG_APPLICATION,		/* Since: 0.1.0 */
	AS_TAG_ID,			/* Since: 0.1.0 */
	AS_TAG_PKGNAME,			/* Since: 0.1.0 */
	AS_TAG_NAME,			/* Since: 0.1.0 */
	AS_TAG_SUMMARY,			/* Since: 0.1.0 */
	AS_TAG_DESCRIPTION,		/* Since: 0.1.0 */
	AS_TAG_URL,			/* Since: 0.1.0 */
	AS_TAG_ICON,			/* Since: 0.1.0 */
	AS_TAG_CATEGORIES,		/* Since: 0.1.0 */
	AS_TAG_CATEGORY,		/* Since: 0.1.0 */
	AS_TAG_KEYWORDS,		/* Since: 0.1.0 */
	AS_TAG_KEYWORD,			/* Since: 0.1.0 */
	AS_TAG_MIMETYPES,		/* Since: 0.1.0 */
	AS_TAG_MIMETYPE,		/* Since: 0.1.0 */
	AS_TAG_PROJECT_GROUP,		/* Since: 0.1.0 */
	AS_TAG_PROJECT_LICENSE,		/* Since: 0.1.0 */
	AS_TAG_SCREENSHOT,		/* Since: 0.1.0 */
	AS_TAG_SCREENSHOTS,		/* Since: 0.1.0 */
	AS_TAG_UPDATE_CONTACT,		/* Since: 0.1.0 */
	AS_TAG_IMAGE,			/* Since: 0.1.0 */
	AS_TAG_COMPULSORY_FOR_DESKTOP, /* Since: 0.1.0 */
	AS_TAG_PRIORITY,		/* Since: 0.1.0 */
	AS_TAG_CAPTION,			/* Since: 0.1.0 */
	AS_TAG_LANGUAGES,		/* Since: 0.1.0 */
	AS_TAG_LANG,			/* Since: 0.1.0 */
	AS_TAG_METADATA,		/* Since: 0.1.0 */
	AS_TAG_VALUE,			/* Since: 0.1.0 */
	AS_TAG_RELEASES,		/* Since: 0.1.0 */
	AS_TAG_RELEASE,			/* Since: 0.1.0 */
	AS_TAG_ARCHITECTURES,		/* Since: 0.1.1 */
	AS_TAG_ARCH,			/* Since: 0.1.1 */
	AS_TAG_METADATA_LICENSE, /* Since: 0.1.4 */
	AS_TAG_PROVIDES,		/* Since: 0.1.6 */
	AS_TAG_EXTENDS,			/* Since: 0.1.7 */
	AS_TAG_DEVELOPER_NAME,		/* Since: 0.1.8 */
	AS_TAG_KUDOS,			/* Since: 0.2.1 */
	AS_TAG_KUDO,			/* Since: 0.2.1 */
	AS_TAG_SOURCE_PKGNAME,		/* Since: 0.2.4 */
} AsTag;

The tag type.

AS_TAG_UNKNOWN

Type invalid or not known

AS_TAG_APPLICATIONS

`applications`

AS_TAG_APPLICATION

`application`

AS_TAG_ID

`id`

AS_TAG_PKGNAME

`pkgname`

AS_TAG_NAME

`name`

AS_TAG_SUMMARY

`summary`

AS_TAG_DESCRIPTION

`description`

AS_TAG_URL

`url`

AS_TAG_ICON

`icon`

AS_TAG_CATEGORIES

`categories` (or `appcategories`)

AS_TAG_CATEGORY

`category` (or `appcategory`)

AS_TAG_KEYWORDS

`keywords`

AS_TAG_KEYWORD

`keyword`

AS_TAG_MIMETYPES

`mimetypes`

AS_TAG_MIMETYPE

`mimetype`

AS_TAG_PROJECT_GROUP

`project_group`

AS_TAG_PROJECT_LICENSE

`project_license` (or `licence`)

AS_TAG_SCREENSHOT

`screenshot`

AS_TAG_SCREENSHOTS

`screenshots`

AS_TAG_UPDATE_CONTACT

`updatecontact`

AS_TAG_IMAGE

`image`

AS_TAG_COMPULSORY_FOR_DESKTOP

`compulsory_for_desktop`

AS_TAG_PRIORITY

`priority`

AS_TAG_CAPTION

`caption`

AS_TAG_LANGUAGES

`languages`

AS_TAG_LANG

`lang`

AS_TAG_METADATA

`metadata`

AS_TAG_VALUE

`value`

AS_TAG_RELEASES

`releases`

AS_TAG_RELEASE

`release`

AS_TAG_ARCHITECTURES

`architectures`

AS_TAG_ARCH

`arch`

AS_TAG_METADATA_LICENSE

`metadata_license`

AS_TAG_PROVIDES

`provides`

AS_TAG_EXTENDS

`extends`

AS_TAG_DEVELOPER_NAME

`developer_name`

AS_TAG_KUDOS

`kudos`

AS_TAG_KUDO

`kudo`

AS_TAG_SOURCE_PKGNAME

`source_pkgname`

enum AsTagFlags

typedef enum {
	AS_TAG_FLAG_NONE,
	AS_TAG_FLAG_USE_FALLBACKS 	= 1, /* Since: 0.1.4 */
	AS_TAG_FLAG_USE_TRANSLATED = 2, /* Since: 0.1.6 */
} AsTagFlags;

The flags to use when matching AsTag's.

AS_TAG_FLAG_NONE

No special actions to use

AS_TAG_FLAG_USE_FALLBACKS

Use fallback tag names

AS_TAG_FLAG_USE_TRANSLATED

Use translated tag names

as_tag_from_string ()

AsTag               as_tag_from_string                  (const gchar *tag);

Converts the text representation to an enumerated value.

tag :

the string.

Returns :

a AsTag, or AS_TAG_UNKNOWN if not known.

Since 0.1.0


as_tag_from_string_full ()

AsTag               as_tag_from_string_full             (const gchar *tag,
                                                         AsTagFlags flags);

Converts the text representation to an enumerated value also converting legacy key names.

tag :

the string.

flags :

the AsTagFlags e.g. AS_TAG_FLAG_USE_FALLBACKS

Returns :

a AsTag, or AS_TAG_UNKNOWN if not known.

Since 0.1.2


as_tag_to_string ()

const gchar *       as_tag_to_string                    (AsTag tag);

Converts the enumerated value to an text representation.

tag :

the AsTag value.

Returns :

string version of tag

Since 0.1.0