## XdgAppRef XdgAppRef |

## Functions

char * | xdg_app_ref_format_ref ()
const char * | xdg_app_ref_get_arch ()
const char * | xdg_app_ref_get_branch ()
const char * | xdg_app_ref_get_commit ()
XdgAppRefKind | xdg_app_ref_get_kind ()
const char * | xdg_app_ref_get_name ()
GType | xdg_app_ref_get_type ()
XdgAppRef * | xdg_app_ref_parse ()

## Properties

gchar * | arch | Read / Write
gchar * | branch | Read / Write
gchar * | commit | Read / Write
XdgAppRefKind | kind | Read / Write
gchar * | name | Read / Write

## Types and Values

struct | XdgAppRef
| XdgAppRefClass
enum | XdgAppRefKind

## Object Hierarchy

        GObject
        ╰── XdgAppRef
            ├── XdgAppInstalledRef
            ╰── XdgAppRemoteRef

## Description

## Functions

### xdg_app_ref_format_ref ()

    char *
    xdg_app_ref_format_ref (XdgAppRef *self);

### xdg_app_ref_get_arch ()

    const char *
    xdg_app_ref_get_arch (XdgAppRef *self);

### xdg_app_ref_get_branch ()

    const char *
    xdg_app_ref_get_branch (XdgAppRef *self);

### xdg_app_ref_get_commit ()

    const char *
    xdg_app_ref_get_commit (XdgAppRef *self);

### xdg_app_ref_get_kind ()

    XdgAppRefKind
    xdg_app_ref_get_kind (XdgAppRef *self);

### xdg_app_ref_get_name ()

    const char *
    xdg_app_ref_get_name (XdgAppRef *self);

### xdg_app_ref_get_type ()

    GType
    xdg_app_ref_get_type (void);

### xdg_app_ref_parse ()

    XdgAppRef *
    xdg_app_ref_parse (const char *ref,
                       GError **error);

Tries to parse a full ref name and return a XdgAppRef (without a commit set) or fail if the ref is invalid somehow.

#### Parameters

ref | A string ref name, such as "app/org.test.App/86_64/master" |
error | return location for a GError |

#### Returns

an XdgAppRef, or `NULL`.

[transfer full]

## Types and Values

### struct XdgAppRef

    struct XdgAppRef;

### XdgAppRefClass

    typedef struct {
      GObjectClass parent_class;
    } XdgAppRefClass;

### enum XdgAppRefKind

Currently xdg-app manages two types of binary artifacts: applications, and runtimes. Applications contain a program that desktop users can run, while runtimes contain only libraries and data.

#### Members

XDG_APP_REF_KIND_APP | An application |
XDG_APP_REF_KIND_RUNTIME | A runtime that applications can use. |

## Property Details

### The `“arch”` property

      “arch”                     gchar *

Flags: Read / Write

Default value: NULL

### The `“branch”` property

      “branch”                   gchar *

Flags: Read / Write

Default value: NULL

### The `“commit”` property

      “commit”                   gchar *

Flags: Read / Write

Default value: NULL

### The `“kind”` property

      “kind”                     XdgAppRefKind

Flags: Read / Write

Default value: XDG_APP_REF_KIND_APP

### The `“name”` property

      “name”                     gchar *

Flags: Read / Write

Default value: NULL