## IdeBuildTargetProvider IdeBuildTargetProvider |

## Functions

void | ide_build_target_provider_get_targets_async ()
GPtrArray * | ide_build_target_provider_get_targets_finish ()

## Types and Values

#define | IDE_TYPE_BUILD_TARGET_PROVIDER
struct | IdeBuildTargetProviderInterface
| IdeBuildTargetProvider

## Object Hierarchy

        GInterface
        ╰── IdeBuildTargetProvider

## Prerequisites

IdeBuildTargetProvider requires GObject.

## Description

## Functions

### ide_build_target_provider_get_targets_async ()

    void
    ide_build_target_provider_get_targets_async
                                   (IdeBuildTargetProvider *self,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously requests that the provider fetch all of the known build targets that are part of the project. Generally this should be limited to executables that Builder might be interested in potentially running.

`callback` should call `ide_build_target_provider_get_targets_finish()` to complete the asynchronous operation.

See also: `ide_build_target_provider_get_targets_finish()`

#### Parameters

self | an IdeBuildTargetProvider |
cancellable | a GCancellable or `NULL`. | [nullable]
callback | a callback to execute upon completion. | [scope async]
user_data | closure data for `callback` |

Since: 3.32

### ide_build_target_provider_get_targets_finish ()

    GPtrArray *
    ide_build_target_provider_get_targets_finish
                                   (IdeBuildTargetProvider *self,
                                    GAsyncResult *result,
                                    GError **error);

Completes a request to get the targets for the project.

See also: `ide_build_target_provider_get_targets_async()`

#### Parameters

self | an IdeBuildTargetProvider |
result | a GAsyncResult provided to the callback |
error | a location for a GError, or `NULL` |

#### Returns

The array of build targets or `NULL` upon failure and `error` is set.

[transfer full][element-type Ide.BuildTarget]

Since: 3.32

## Types and Values

### IDE_TYPE_BUILD_TARGET_PROVIDER

    #define IDE_TYPE_BUILD_TARGET_PROVIDER (ide_build_target_provider_get_type())

### struct IdeBuildTargetProviderInterface

    struct IdeBuildTargetProviderInterface {
      GTypeInterface parent_iface;

      void       (*get_targets_async)  (IdeBuildTargetProvider  *self,
                                        GCancellable            *cancellable,
                                        GAsyncReadyCallback      callback,
                                        gpointer                 user_data);
      GPtrArray *(*get_targets_finish) (IdeBuildTargetProvider  *self,
                                        GAsyncResult            *result,
                                        GError                 **error);
    };

### IdeBuildTargetProvider

    typedef struct _IdeBuildTargetProvider IdeBuildTargetProvider;