Container - Variant

Container - Variant — A container class for Variant subtag

Synopsis

lt_bool_t           lt_variant_compare                  (const lt_variant_t *v1,
                                                         const lt_variant_t *v2);
void                lt_variant_dump                     (const lt_variant_t *variant);
const char *        lt_variant_get_better_tag           (const lt_variant_t *variant);
const char *        lt_variant_get_name                 (const lt_variant_t *variant);
const char *        lt_variant_get_preferred_tag        (const lt_variant_t *variant);
const lt_list_t *   lt_variant_get_prefix               (const lt_variant_t *variant);
const char *        lt_variant_get_tag                  (const lt_variant_t *variant);
lt_variant_t *      lt_variant_ref                      (lt_variant_t *variant);
                    lt_variant_t;
void                lt_variant_unref                    (lt_variant_t *variant);

Description

This container class provides a data access to Variant subtag entry.

Details

lt_variant_compare ()

lt_bool_t           lt_variant_compare                  (const lt_variant_t *v1,
                                                         const lt_variant_t *v2);

Compare if v1 and v2 is the same object or not.

v1 :

a lt_variant_t.

v2 :

a lt_variant_t.

Returns :

TRUE if it's the same, otherwise FALSE.

lt_variant_dump ()

void                lt_variant_dump                     (const lt_variant_t *variant);

Dumps the container information to the standard output.

variant :

a lt_variant_t.

lt_variant_get_better_tag ()

const char *        lt_variant_get_better_tag           (const lt_variant_t *variant);

Obtains the better tag for use. this is a convenient function to get the preferred-value if available.

variant :

a lt_variant_t.

Returns :

a tag string.

lt_variant_get_name ()

const char *        lt_variant_get_name                 (const lt_variant_t *variant);

Obtains the description of the subtag.

variant :

a lt_variant_t.

Returns :

a description string.

lt_variant_get_preferred_tag ()

const char *        lt_variant_get_preferred_tag        (const lt_variant_t *variant);

Obtains the preferred-value. this is available only when the tag is marked as deprecated.

variant :

a lt_variant_t.

Returns :

a preferred-value for the tag or NULL.

lt_variant_get_prefix ()

const lt_list_t *   lt_variant_get_prefix               (const lt_variant_t *variant);

Obtains the prefix being assigned to the subtag. This is available only when the subtag has any suitable sequence of subtags for forming (with other subtags, as appropriate) a language tag when using the variant.

variant :

a lt_variant_t.

Returns :

a lt_list_t contains prefix strings or NULL. [transfer none]

lt_variant_get_tag ()

const char *        lt_variant_get_tag                  (const lt_variant_t *variant);

Obtains the tag name.

variant :

a lt_variant_t.

Returns :

a tag string.

lt_variant_ref ()

lt_variant_t *      lt_variant_ref                      (lt_variant_t *variant);

Increases the reference count of variant.

variant :

a lt_variant_t.

Returns :

the same variant object. [transfer none]

lt_variant_t

typedef struct _lt_variant_t lt_variant_t;

All the fields in the lt_variant_t structure are private to the lt_variant_t implementation.


lt_variant_unref ()

void                lt_variant_unref                    (lt_variant_t *variant);

Decreases the reference count of variant. when its reference count drops to 0, the object is finalized (i.e. its memory is freed).

variant :

a lt_variant_t.