Packages
dagger
0.20.2
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/binding.ex
# This file generated by `dagger_codegen`. Please DO NOT EDIT.
defmodule Dagger.Binding do
@moduledoc """
Dagger.Binding
"""
use Dagger.Core.Base, kind: :object, name: "Binding"
alias Dagger.Core.Client
alias Dagger.Core.QueryBuilder, as: QB
@derive Dagger.ID
defstruct [:query_builder, :client]
@type t() :: %__MODULE__{}
@doc """
Retrieve the binding value, as type Address
"""
@spec as_address(t()) :: Dagger.Address.t()
def as_address(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asAddress")
%Dagger.Address{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type CacheVolume
"""
@spec as_cache_volume(t()) :: Dagger.CacheVolume.t()
def as_cache_volume(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asCacheVolume")
%Dagger.CacheVolume{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Changeset
"""
@spec as_changeset(t()) :: Dagger.Changeset.t()
def as_changeset(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asChangeset")
%Dagger.Changeset{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Check
"""
@spec as_check(t()) :: Dagger.Check.t()
def as_check(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asCheck")
%Dagger.Check{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type CheckGroup
"""
@spec as_check_group(t()) :: Dagger.CheckGroup.t()
def as_check_group(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asCheckGroup")
%Dagger.CheckGroup{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Cloud
"""
@spec as_cloud(t()) :: Dagger.Cloud.t()
def as_cloud(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asCloud")
%Dagger.Cloud{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Container
"""
@spec as_container(t()) :: Dagger.Container.t()
def as_container(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asContainer")
%Dagger.Container{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Directory
"""
@spec as_directory(t()) :: Dagger.Directory.t()
def as_directory(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asDirectory")
%Dagger.Directory{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Env
"""
@spec as_env(t()) :: Dagger.Env.t()
def as_env(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asEnv")
%Dagger.Env{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type EnvFile
"""
@spec as_env_file(t()) :: Dagger.EnvFile.t()
def as_env_file(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asEnvFile")
%Dagger.EnvFile{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type File
"""
@spec as_file(t()) :: Dagger.File.t()
def as_file(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asFile")
%Dagger.File{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type GitRef
"""
@spec as_git_ref(t()) :: Dagger.GitRef.t()
def as_git_ref(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asGitRef")
%Dagger.GitRef{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type GitRepository
"""
@spec as_git_repository(t()) :: Dagger.GitRepository.t()
def as_git_repository(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asGitRepository")
%Dagger.GitRepository{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type JSONValue
"""
@spec as_json_value(t()) :: Dagger.JSONValue.t()
def as_json_value(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asJSONValue")
%Dagger.JSONValue{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Module
"""
@spec as_module(t()) :: Dagger.Module.t()
def as_module(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asModule")
%Dagger.Module{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type ModuleConfigClient
"""
@spec as_module_config_client(t()) :: Dagger.ModuleConfigClient.t()
def as_module_config_client(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asModuleConfigClient")
%Dagger.ModuleConfigClient{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type ModuleSource
"""
@spec as_module_source(t()) :: Dagger.ModuleSource.t()
def as_module_source(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asModuleSource")
%Dagger.ModuleSource{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type SearchResult
"""
@spec as_search_result(t()) :: Dagger.SearchResult.t()
def as_search_result(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asSearchResult")
%Dagger.SearchResult{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type SearchSubmatch
"""
@spec as_search_submatch(t()) :: Dagger.SearchSubmatch.t()
def as_search_submatch(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asSearchSubmatch")
%Dagger.SearchSubmatch{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Secret
"""
@spec as_secret(t()) :: Dagger.Secret.t()
def as_secret(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asSecret")
%Dagger.Secret{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Service
"""
@spec as_service(t()) :: Dagger.Service.t()
def as_service(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asService")
%Dagger.Service{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Retrieve the binding value, as type Socket
"""
@spec as_socket(t()) :: Dagger.Socket.t()
def as_socket(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asSocket")
%Dagger.Socket{
query_builder: query_builder,
client: binding.client
}
end
@doc """
Returns the binding's string value
"""
@spec as_string(t()) :: {:ok, String.t() | nil} | {:error, term()}
def as_string(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("asString")
Client.execute(binding.client, query_builder)
end
@doc """
Returns the digest of the binding value
"""
@spec digest(t()) :: {:ok, String.t()} | {:error, term()}
def digest(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("digest")
Client.execute(binding.client, query_builder)
end
@doc """
A unique identifier for this Binding.
"""
@spec id(t()) :: {:ok, Dagger.BindingID.t()} | {:error, term()}
def id(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("id")
Client.execute(binding.client, query_builder)
end
@doc """
Returns true if the binding is null
"""
@spec null?(t()) :: {:ok, boolean()} | {:error, term()}
def null?(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("isNull")
Client.execute(binding.client, query_builder)
end
@doc """
Returns the binding name
"""
@spec name(t()) :: {:ok, String.t()} | {:error, term()}
def name(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("name")
Client.execute(binding.client, query_builder)
end
@doc """
Returns the binding type
"""
@spec type_name(t()) :: {:ok, String.t()} | {:error, term()}
def type_name(%__MODULE__{} = binding) do
query_builder =
binding.query_builder |> QB.select("typeName")
Client.execute(binding.client, query_builder)
end
end
defimpl Jason.Encoder, for: Dagger.Binding do
def encode(binding, opts) do
{:ok, id} = Dagger.Binding.id(binding)
Jason.Encode.string(id, opts)
end
end
defimpl Nestru.Decoder, for: Dagger.Binding do
def decode_fields_hint(_struct, _context, id) do
{:ok, Dagger.Client.load_binding_from_id(Dagger.Global.dag(), id)}
end
end