### Class

# Ide Config

#### Description

    abstract class Ide.Config : Ide.Object {
      parent_instance: IdeObject
    }

No description available.

#### Ancestors

- IdeObject
- GObject

#### Instance methods

###### ide_config_apply_path

No description available.

###### ide_config_get_app_id

Gets the application ID for the configuration.

Available since: 3.32

###### ide_config_get_append_path

No description available.

###### ide_config_get_args_for_phase

No description available.

###### ide_config_get_build_commands

No description available.

###### ide_config_get_build_commands_dir

No description available.

Available since: 3.32

###### ide_config_get_config_opts

No description available.

###### ide_config_get_debug

No description available.

###### ide_config_get_dirty

No description available.

###### ide_config_get_display_name

No description available.

###### ide_config_get_environ

Gets the environment to use when spawning processes.

Available since: 3.32

###### ide_config_get_environment

No description available.

Available since: 3.32

###### ide_config_get_extensions

Gets the known SDK extensions that will be used when building the project. Implementing this in your configuration backend allows plugins to know if additional binaries will be available to the build system.

Available since: 3.34

###### ide_config_get_id

No description available.

###### ide_config_get_internal_boolean

No description available.

###### ide_config_get_internal_int

No description available.

###### ide_config_get_internal_int64

No description available.

###### ide_config_get_internal_object

Gets the value associated with `key` if it is a `GObject`.

Available since: 3.32

###### ide_config_get_internal_string

No description available.

###### ide_config_get_internal_strv

No description available.

###### ide_config_get_locality

No description available.

###### ide_config_get_parallelism

No description available.

###### ide_config_get_post_install_commands

No description available.

###### ide_config_get_prefix

No description available.

###### ide_config_get_prefix_set

No description available.

###### ide_config_get_prepend_path

No description available.

###### ide_config_get_ready

Determines if the configuration is ready for use.

Available since: 3.32

###### ide_config_get_run_opts

Gets the command line options to use when running the target application. The result should be parsed with `g_shell_parse_argv()` to convert the run options to an array suitable for use in argv.

Available since: 3.32

###### ide_config_get_runtime

Gets the runtime for the configuration.

Available since: 3.32

###### ide_config_get_runtime_environment

No description available.

Available since: 3.40

###### ide_config_get_runtime_id

No description available.

###### ide_config_get_sequence

This returns a sequence number for the configuration. This is useful for build systems that want to clear the “dirty” bit on the configuration so that they need not bootstrap a second time. This should be done by checking the sequence number before executing the bootstrap, and only cleared if the sequence number matches after performing the bootstrap. This indicates no changes have been made to the configuration in the mean time.

Available since: 3.32

###### ide_config_get_toolchain

Gets the toolchain for the configuration.

Available since: 3.32

###### ide_config_get_toolchain_id

Gets the toolchain id for the configuration.

Available since: 3.32

###### ide_config_getenv

No description available.

###### ide_config_set_app_id

No description available.

###### ide_config_set_append_path

No description available.

###### ide_config_set_args_for_phase

No description available.

###### ide_config_set_build_commands

No description available.

###### ide_config_set_build_commands_dir

No description available.

###### ide_config_set_config_opts

No description available.

###### ide_config_set_debug

No description available.

###### ide_config_set_dirty

No description available.

###### ide_config_set_display_name

No description available.

###### ide_config_set_environment

No description available.

###### ide_config_set_internal_boolean

No description available.

###### ide_config_set_internal_int

No description available.

###### ide_config_set_internal_int64

No description available.

###### ide_config_set_internal_object

Sets the value for `key` to `instance`.

Available since: 3.32

###### ide_config_set_internal_string

No description available.

###### ide_config_set_internal_strv

No description available.

###### ide_config_set_locality

No description available.

###### ide_config_set_parallelism

No description available.

###### ide_config_set_post_install_commands

No description available.

###### ide_config_set_prefix

No description available.

###### ide_config_set_prefix_set

No description available.

###### ide_config_set_prepend_path

No description available.

###### ide_config_set_run_opts

Sets the run options to use when running the target application. See `ide_config_get_run_opts()` for more information.

Available since: 3.32

###### ide_config_set_runtime

No description available.

###### ide_config_set_runtime_environment

No description available.

###### ide_config_set_runtime_id

No description available.

###### ide_config_set_toolchain

Sets the toolchain for the configuration.

Available since: 3.32

###### ide_config_set_toolchain_id

Sets the toolchain id for the configuration.

Available since: 3.32

###### ide_config_setenv

No description available.

###### ide_config_supports_runtime

No description available.

##### Methods inherited from IdeObject (28)

Please see IdeObject for a full list of methods.

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

Please see GObject for a full list of methods.

#### Properties

###### Ide.Config:app-id

No description available.

###### Ide.Config:append-path

No description available.

###### Ide.Config:build-commands

No description available.

###### Ide.Config:build-commands-dir

No description available.

###### Ide.Config:config-opts

No description available.

###### Ide.Config:debug

No description available.

###### Ide.Config:dirty

No description available.

###### Ide.Config:display-name

No description available.

###### Ide.Config:environ

No description available.

###### Ide.Config:id

No description available.

###### Ide.Config:locality

No description available.

###### Ide.Config:parallelism

No description available.

###### Ide.Config:post-install-commands

No description available.

###### Ide.Config:prefix

No description available.

###### Ide.Config:prefix-set

No description available.

###### Ide.Config:prepend-path

No description available.

###### Ide.Config:ready

No description available.

###### Ide.Config:run-opts

No description available.

###### Ide.Config:runtime

No description available.

###### Ide.Config:runtime-id

No description available.

###### Ide.Config:toolchain

No description available.

###### Ide.Config:toolchain-id

No description available.

##### Properties inherited from IdeObject (2)

###### Ide.Object:cancellable

The “cancellable” property is a `GCancellable` that can be used by operations that will be cancelled when the `IdeObject::destroy` signal is emitted on `self`.

Available since: 3.32

###### Ide.Object:parent

The parent `IdeObject`, if any.

Available since: 3.32

#### Signals

###### Ide.Config::changed

No description available.

##### Signals inherited from IdeObject (1)

###### Ide.Object::destroy

The “destroy” signal is emitted when the object should destroy itself and cleanup any state that is no longer necessary. This happens when the object has been removed from the because it was requested to be destroyed, or because a parent object is being destroyed.

Available since: 3.32

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

###### GObject.Object::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 IdeConfigClass {
      IdeObjectClass parent;
      IdeRuntime* (* get_runtime) (
        IdeConfig* self
      );
      void (* set_runtime) (
        IdeConfig* self,
        IdeRuntime* runtime
      );
      gboolean (* supports_runtime) (
        IdeConfig* self,
        IdeRuntime* runtime
      );
      GPtrArray* (* get_extensions) (
        IdeConfig* self
      );

    }

###### Class members

`parent` |
    IdeObjectClass
| No description available.
`get_runtime` |
    IdeRuntime* (* get_runtime) (
        IdeConfig* self
      )
| No description available.
`set_runtime` |
    void (* set_runtime) (
        IdeConfig* self,
        IdeRuntime* runtime
      )
| No description available.
`supports_runtime` |
    gboolean (* supports_runtime) (
        IdeConfig* self,
        IdeRuntime* runtime
      )
| No description available.
`get_extensions` |
    GPtrArray* (* get_extensions) (
        IdeConfig* self
      )
| No description available.

#### Virtual methods

###### Ide.ConfigClass.get_extensions

Gets the known SDK extensions that will be used when building the project. Implementing this in your configuration backend allows plugins to know if additional binaries will be available to the build system.

Available since: 3.34

###### Ide.ConfigClass.get_runtime

Gets the runtime for the configuration.

Available since: 3.32

###### Ide.ConfigClass.set_runtime

No description available.

###### Ide.ConfigClass.supports_runtime

No description available.