name: custom_tgt
long_name: Custom target
extends: tgt
description: |
  This object is returned by [[custom_target]] and contains a target with the following methods:

methods:
  - name: full_path
    returns: str
    description: |
      Returns a full path pointing to the result target file
      NOTE: In most cases using the object itself will do the same job as
      this and will also allow Meson to setup inter-target dependencies
      correctly. Please file a bug if that doesn't work for you.
      *(since 0.54.0)* It can be also called on indexes objects:
      `custom_targets[i].full_path()`.

  - name: "[index]"
    returns: custom_idx
    description: |
      Returns an opaque object that references this target, and
      can be used as a source in other targets. When it is used as such it
      will make that target depend on this custom target, but the only
      source added will be the one that corresponds to the index of the
      custom target's output argument.

  - name: to_list
    returns: list[custom_idx]
    since: 0.54.0
    description: |
        Returns a list of opaque objects that references this target,
        and can be used as a source in other targets. This can be used to
        iterate outputs with `foreach` loop.
