Packages
dagger
0.9.10
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/codegen/elixir/module.ex
defmodule Dagger.Codegen.Elixir.Module do
@moduledoc false
# TODO: retire this and find a better way
@id_modules_map %{
"CacheVolumeID" => "CacheVolume",
"ContainerID" => "Container",
"DirectoryID" => "Directory",
"EnvVariableID" => "EnvVariable",
"FieldTypeDefID" => "FieldTypeDef",
"FileID" => "File",
"FunctionArgID" => "FunctionArg",
"FunctionCallArgValueID" => "FunctionCallArgValue",
"FunctionCallID" => "FunctionCall",
"FunctionID" => "Function",
"GeneratedCodeID" => "GeneratedCode",
"GitRefID" => "GitRef",
"GitRepositoryID" => "GitRepository",
"HostID" => "Host",
"InterfaceTypeDefID" => "InterfaceTypeDef",
"LabelID" => "Label",
"ListTypeDefID" => "ListTypeDef",
"ModuleConfigID" => "ModuleConfig",
"ModuleID" => "Module",
"ObjectTypeDefID" => "ObjectTypeDef",
"PortID" => "Port",
"SecretID" => "Secret",
"ServiceID" => "Service",
"SocketID" => "Socket",
"TypeDefID" => "TypeDef"
}
defmacro id_modules(), do: quote(do: Map.keys(@id_modules_map))
def id_module_to_module(id_mod), do: Map.fetch!(@id_modules_map, id_mod)
def format_name(name) when is_binary(name) do
name
|> Macro.camelize()
|> String.to_atom()
end
def from_name("Query") do
from_name("Client")
end
def from_name(name) do
Module.concat([Dagger, format_name(name)])
end
end