## IdeRuntime

IdeRuntime

## Functions

void | ide_runtime_prebuild_async ()
gboolean | ide_runtime_prebuild_finish ()
void | ide_runtime_postbuild_async ()
gboolean | ide_runtime_postbuild_finish ()
gboolean | ide_runtime_contains_program_in_path ()
IdeSubprocessLauncher * | ide_runtime_create_launcher ()
void | ide_runtime_prepare_configuration ()
IdeRuntime * | ide_runtime_new ()
const gchar * | ide_runtime_get_id ()
void | ide_runtime_set_id ()
const gchar * | ide_runtime_get_display_name ()
void | ide_runtime_set_display_name ()

## Types and Values

#define | IDE_TYPE_RUNTIME
struct | IdeRuntimeClass
| IdeRuntime

## Description

## Functions

### ide_runtime_prebuild_async ()

    void
    ide_runtime_prebuild_async (IdeRuntime *self,
                                IdeBuildResult *build_result,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);

### ide_runtime_prebuild_finish ()

    gboolean
    ide_runtime_prebuild_finish (IdeRuntime *self,
                                 GAsyncResult *result,
                                 GError **error);

### ide_runtime_postbuild_async ()

    void
    ide_runtime_postbuild_async (IdeRuntime *self,
                                 IdeBuildResult *build_result,
                                 GCancellable *cancellable,
                                 GAsyncReadyCallback callback,
                                 gpointer user_data);

### ide_runtime_postbuild_finish ()

    gboolean
    ide_runtime_postbuild_finish (IdeRuntime *self,
                                  GAsyncResult *result,
                                  GError **error);

### ide_runtime_contains_program_in_path ()

    gboolean
    ide_runtime_contains_program_in_path (IdeRuntime *self,
                                          const gchar *program,
                                          GCancellable *cancellable);

### ide_runtime_create_launcher ()

    IdeSubprocessLauncher *
    ide_runtime_create_launcher (IdeRuntime *self,
                                 GError **error);

Creates a launcher for the runtime.

This can be used to execute a command within a runtime. If you are doing a build, you probably want to ensure you call `ide_runtime_prebuild_async()` before using the launcher.

It is important that this function can be run from a thread without side effects.

#### Returns

An IdeSubprocessLauncher or `NULL` upon failure.

[transfer full]

### ide_runtime_prepare_configuration ()

    void
    ide_runtime_prepare_configuration (IdeRuntime *self,
                                       IdeConfiguration *configuration);

### ide_runtime_new ()

    IdeRuntime *
    ide_runtime_new (IdeContext *context,
                     const gchar *id,
                     const gchar *title);

### ide_runtime_get_id ()

    const gchar *
    ide_runtime_get_id (IdeRuntime *self);

### ide_runtime_set_id ()

    void
    ide_runtime_set_id (IdeRuntime *self,
                        const gchar *id);

### ide_runtime_get_display_name ()

    const gchar *
    ide_runtime_get_display_name (IdeRuntime *self);

### ide_runtime_set_display_name ()

    void
    ide_runtime_set_display_name (IdeRuntime *self,
                                  const gchar *display_name);

## Types and Values

### IDE_TYPE_RUNTIME

    #define IDE_TYPE_RUNTIME (ide_runtime_get_type())

### struct IdeRuntimeClass

    struct IdeRuntimeClass {
      IdeObjectClass parent;

      void                   (*prebuild_async)           (IdeRuntime           *self,
                                                          IdeBuildResult       *build_result,
                                                          GCancellable         *cancellable,
                                                          GAsyncReadyCallback   callback,
                                                          gpointer              user_data);
      gboolean               (*prebuild_finish)          (IdeRuntime           *self,
                                                          GAsyncResult         *result,
                                                          GError              **error);
      void                   (*postbuild_async)          (IdeRuntime           *self,
                                                          IdeBuildResult       *build_result,
                                                          GCancellable         *cancellable,
                                                          GAsyncReadyCallback   callback,
                                                          gpointer              user_data);
      gboolean               (*postbuild_finish)         (IdeRuntime           *self,
                                                          GAsyncResult         *result,
                                                          GError              **error);
      gboolean               (*contains_program_in_path) (IdeRuntime           *self,
                                                          const gchar          *program,
                                                          GCancellable         *cancellable);
      IdeSubprocessLauncher *(*create_launcher)          (IdeRuntime           *self,
                                                          GError              **error);
      void                   (*prepare_configuration)    (IdeRuntime           *self,
                                                          IdeConfiguration     *configuration);
      IdeRunner             *(*create_runner)            (IdeRuntime           *self,
                                                          IdeBuildTarget       *build_target);
      void                   (*postinstall_async)        (IdeRuntime           *self,
                                                          IdeBuildResult       *build_result,
                                                          GCancellable         *cancellable,
                                                          GAsyncReadyCallback   callback,
                                                          gpointer              user_data);
      gboolean               (*postinstall_finish)       (IdeRuntime           *self,
                                                          GAsyncResult         *result,
                                                          GError              **error);
      GFile                 *(*translate_file)           (IdeRuntime           *self,
                                                          GFile                *file);

      gpointer _reserved4;
      gpointer _reserved5;
      gpointer _reserved6;
      gpointer _reserved7;
      gpointer _reserved8;
      gpointer _reserved9;
      gpointer _reserved10;
      gpointer _reserved11;
      gpointer _reserved12;
      gpointer _reserved13;
      gpointer _reserved14;
      gpointer _reserved15;
      gpointer _reserved16;
    };

### IdeRuntime

    typedef struct _IdeRuntime IdeRuntime;