## IdeBuilder

IdeBuilder

## Functions

IdeConfiguration * | ide_builder_get_configuration ()
void | ide_builder_build_async ()
IdeBuildResult * | ide_builder_build_finish ()

## Types and Values

#define | IDE_TYPE_BUILDER
enum | IdeBuilderBuildFlags
struct | IdeBuilderClass
| IdeBuilder

## Description

## Functions

### ide_builder_get_configuration ()

    IdeConfiguration *
    ide_builder_get_configuration (IdeBuilder *self);

Gets the configuration to use for the builder.

#### Parameters

self | An IdeBuilder. |

#### Returns

An IdeConfiguration.

[transfer none]

### ide_builder_build_async ()

    void
    ide_builder_build_async (IdeBuilder *self,
                             IdeBuilderBuildFlags flags,
                             IdeBuildResult **result,
                             GCancellable *cancellable,
                             GAsyncReadyCallback callback,
                             gpointer user_data);

This function requests the IdeBuilder to asynchronously begin building the project using the flags specified. By default, the builders will try to perform incremental builds.

See `ide_builder_build_finish()` to complete the request.

#### Parameters

self | An IdeBuilder |
flags | build flags for the build |
result | A location for an IdeBuildResult. | [out][transfer full][nullable]
cancellable | A GCancellable or `NULL`. | [nullable]
callback | A callback to complete the async operation |
user_data | user data for `callback` |

### ide_builder_build_finish ()

    IdeBuildResult *
    ide_builder_build_finish (IdeBuilder *self,
                              GAsyncResult *result,
                              GError **error);

Completes an asynchronous request to build the project.

#### Returns

An IdeBuildResult or `NULL` upon failure.

[transfer full]

## Types and Values

### IDE_TYPE_BUILDER

    #define IDE_TYPE_BUILDER (ide_builder_get_type())

### enum IdeBuilderBuildFlags

#### Members

IDE_BUILDER_BUILD_FLAGS_NONE |  |
IDE_BUILDER_BUILD_FLAGS_FORCE_BOOTSTRAP |  |
IDE_BUILDER_BUILD_FLAGS_FORCE_CLEAN |  |
IDE_BUILDER_BUILD_FLAGS_NO_BUILD |  |
IDE_BUILDER_BUILD_FLAGS_NO_CONFIGURE |  |

### struct IdeBuilderClass

    struct IdeBuilderClass {
      IdeObjectClass parent;

      void             (*build_async)              (IdeBuilder            *self,
                                                    IdeBuilderBuildFlags   flags,
                                                    IdeBuildResult       **result,
                                                    GCancellable          *cancellable,
                                                    GAsyncReadyCallback    callback,
                                                    gpointer               user_data);
      IdeBuildResult  *(*build_finish)             (IdeBuilder            *self,
                                                    GAsyncResult          *result,
                                                    GError               **error);
      void             (*install_async)            (IdeBuilder            *self,
                                                    IdeBuildResult       **result,
                                                    GCancellable          *cancellable,
                                                    GAsyncReadyCallback    callback,
                                                    gpointer               user_data);
      IdeBuildResult  *(*install_finish)           (IdeBuilder            *self,
                                                    GAsyncResult          *result,
                                                    GError               **error);
      void             (*get_build_flags_async)    (IdeBuilder            *self,
                                                    IdeFile               *file,
                                                    GCancellable          *cancellable,
                                                    GAsyncReadyCallback    callback,
                                                    gpointer               user_data);
      gchar          **(*get_build_flags_finish)   (IdeBuilder            *self,
                                                    GAsyncResult          *result,
                                                    GError               **error);
      void             (*get_build_targets_async)  (IdeBuilder            *self,
                                                    GCancellable          *cancellable,
                                                    GAsyncReadyCallback    callback,
                                                    gpointer               user_data);
      GPtrArray       *(*get_build_targets_finish) (IdeBuilder            *self,
                                                    GAsyncResult          *result,
                                                    GError               **error);

      gpointer _reserved1;
      gpointer _reserved2;
      gpointer _reserved3;
      gpointer _reserved4;
      gpointer _reserved5;
      gpointer _reserved6;
      gpointer _reserved7;
      gpointer _reserved8;
      gpointer _reserved9;
      gpointer _reserved10;
      gpointer _reserved11;
      gpointer _reserved12;
    };

### IdeBuilder

    typedef struct _IdeBuilder IdeBuilder;