View Source Dagger.Function (dagger v0.12.0)

Function represents a resolver provided by a Module.

A function always evaluates against a parent object and is given a set of named arguments.

Summary

Functions

Arguments accepted by the function, if any.

A doc string for the function, if any.

A unique identifier for this Function.

The name of the function.

The type returned by the function.

Returns the function with the provided argument

Returns the function with the given doc string.

Types

@type t() :: %Dagger.Function{client: term(), selection: term()}

Functions

@spec args(t()) :: {:ok, [Dagger.FunctionArg.t()]} | {:error, term()}

Arguments accepted by the function, if any.

@spec description(t()) :: {:ok, String.t()} | {:error, term()}

A doc string for the function, if any.

@spec id(t()) :: {:ok, Dagger.FunctionID.t()} | {:error, term()}

A unique identifier for this Function.

@spec name(t()) :: {:ok, String.t()} | {:error, term()}

The name of the function.

@spec return_type(t()) :: Dagger.TypeDef.t()

The type returned by the function.

Link to this function

with_arg(function, name, type_def, optional_args \\ [])

View Source
@spec with_arg(t(), String.t(), Dagger.TypeDef.t(),
  description: String.t() | nil,
  default_value: Dagger.JSON.t() | nil
) :: t()

Returns the function with the provided argument

Link to this function

with_description(function, description)

View Source
@spec with_description(t(), String.t()) :: t()

Returns the function with the given doc string.