### Class

# AppStream ComponentBox

#### Description

    class AppStream.ComponentBox : GObject.Object
    {
      /* No available fields */
    }

No description available.

#### Ancestors

- GObject

#### Constructors

###### as_component_box_new

Creates a new `AsComponentBox`.

since: 1.0

###### as_component_box_new_simple

Creates a new `AsComponentBox` with the simplest parameters, so it is basically an array storage without overhead.

#### Instance methods

###### as_component_box_add

Add a component to the box. Returns an error if we could not add it (most likely due to component box constraints).

###### as_component_box_as_array

Get the contents of this component box as `GPtrArray`.

###### as_component_box_clear

Remove all contents of this component box.

###### as_component_box_get_flags

Get the flags this component box was constructed with.

###### as_component_box_get_size

Get the amount of components in this box.

###### as_component_box_index_safe

Retrieve a component at the respective index from the internal component array.

###### as_component_box_is_empty

Check if there are any components present.

###### as_component_box_remove_at

Remove a component at the specified index. Please ensure that the index is not larger than %as_component_box_get_size() - 1.

###### as_component_box_sort

Sort components to bring them into a deterministic order.

###### as_component_box_sort_by_score

Sort components by their (search) match score.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### AppStream.ComponentBox:flags

No description available.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct AppStreamComponentBoxClass {
      GObjectClass parent_class;
      void (* _as_reserved1) (
    void
      );
      void (* _as_reserved2) (
    void
      );
      void (* _as_reserved3) (
    void
      );
      void (* _as_reserved4) (
    void
      );
      void (* _as_reserved5) (
    void
      );
      void (* _as_reserved6) (
    void
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`_as_reserved1: void (* _as_reserved1) ( void )`

  No description available.

`_as_reserved2: void (* _as_reserved2) ( void )`

  No description available.

`_as_reserved3: void (* _as_reserved3) ( void )`

  No description available.

`_as_reserved4: void (* _as_reserved4) ( void )`

  No description available.

`_as_reserved5: void (* _as_reserved5) ( void )`

  No description available.

`_as_reserved6: void (* _as_reserved6) ( void )`

  No description available.