Packages
dagger
0.16.0
0.21.7
0.21.6
0.21.5
0.21.4
0.21.3
0.21.2
0.21.1
0.21.0
0.20.8
0.20.7
0.20.6
0.20.5
0.20.4
0.20.3
0.20.2
0.20.1
0.20.0
0.19.11
0.19.10
0.19.9
0.19.8
0.19.7
0.19.6
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.19
0.18.18
0.18.17
0.18.16
0.18.15
0.18.14
0.18.13
0.18.12
0.18.11
0.18.10
0.18.9
0.18.8
0.18.7
0.18.5
0.18.4
0.18.3
0.18.2
0.18.1
0.18.0
0.17.2
0.17.1
0.17.0
0.16.3
0.16.2
0.16.1
0.16.0
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.0
0.13.7
0.13.6
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.7
0.12.6
0.12.5
0.12.4
0.12.3
0.12.2
0.12.1
0.12.0
0.11.9
0.11.8
0.11.7
0.11.6
0.11.5
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.3
0.10.2
0.10.1
0.10.0
0.9.11
0.9.10
0.9.9
0.9.8
0.9.7
0.9.6
0.9.5
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.8
0.8.7
0.8.6
0.8.5
0.8.4
0.8.2
0.0.0
retired
Dagger SDK for Elixir
Current section
Files
Jump to
Current section
Files
lib/dagger/gen/git_ref.ex
# This file generated by `dagger_codegen`. Please DO NOT EDIT.
defmodule Dagger.GitRef do
@moduledoc "A git ref (tag, branch, or commit)."
alias Dagger.Core.Client
alias Dagger.Core.QueryBuilder, as: QB
@derive Dagger.ID
defstruct [:query_builder, :client]
@type t() :: %__MODULE__{}
@doc "The resolved commit id at this ref."
@spec commit(t()) :: {:ok, String.t()} | {:error, term()}
def commit(%__MODULE__{} = git_ref) do
query_builder =
git_ref.query_builder |> QB.select("commit")
Client.execute(git_ref.client, query_builder)
end
@doc "A unique identifier for this GitRef."
@spec id(t()) :: {:ok, Dagger.GitRefID.t()} | {:error, term()}
def id(%__MODULE__{} = git_ref) do
query_builder =
git_ref.query_builder |> QB.select("id")
Client.execute(git_ref.client, query_builder)
end
@doc "The filesystem tree at this ref."
@spec tree(t(), [{:discard_git_dir, boolean() | nil}]) :: Dagger.Directory.t()
def tree(%__MODULE__{} = git_ref, optional_args \\ []) do
query_builder =
git_ref.query_builder
|> QB.select("tree")
|> QB.maybe_put_arg("discardGitDir", optional_args[:discard_git_dir])
%Dagger.Directory{
query_builder: query_builder,
client: git_ref.client
}
end
end