encoding
The encoding
namespace contains encoding and decoding functions.
encoding.from_base64
The encoding.from_base64
function decodes a RFC4648-compliant Base64-encoded string into the original string.
encoding.from_base64
fails if the provided string argument contains invalid Base64 data.
Example
> encoding.from_base64("dGFuZ2VyaW5l")
tangerine
encoding.from_URLbase64
The encoding.from_URLbase64
function decodes a RFC4648-compliant Base64 URL safe encoded string into the original string.
encoding.from_URLbase64
fails if the provided string argument contains invalid Base64 data.
Example
> encoding.from_URLbase64("c3RyaW5nMTIzIT8kKiYoKSctPUB-")
string123!?$*&()'-=@~
encoding.to_base64
The encoding.to_base64
function encodes the original string into RFC4648-compliant Base64 encoded string.
Example
> encoding.to_base64("string123!?$*&()'-=@~")
c3RyaW5nMTIzIT8kKiYoKSctPUB+
encoding.to_URLbase64
The encoding.to_base64
function encodes the original string into RFC4648-compliant URL safe Base64 encoded string.
Example
> encoding.to_URLbase64("string123!?$*&()'-=@~")
c3RyaW5nMTIzIT8kKiYoKSctPUB-
encoding.to_json
The encoding.to_json
function encodes the map into a JSON string. encoding.to_json
fails if the input argument provided can’t be parsed as a JSON string.
A common use case for encoding.to_json
is to encode a configuration of component which is expected to be a JSON string. For example, config
argument of prometheus.exporter.blackbox
.
Examples
> encoding.to_json({"modules"={"http_2xx"={"prober"="http","timeout"="5s","http"={"headers"={"Authorization"=sys.env("TEST_VAR")}}}}})
"{\"modules\":{\"http_2xx\":{\"http\":{\"headers\":{\"Authorization\":\"Hello!\"}},\"prober\":\"http\",\"timeout\":\"5s\"}}}"
encoding.from_json
The encoding.from_json
function decodes a string representing JSON into an Alloy value. encoding.from_json
fails if the string argument provided can’t be parsed as JSON.
A common use case of encoding.from_json
is to decode the output of a local.file
component to an Alloy value.
Examples
> encoding.from_json("15")
15
> encoding.from_json("[1, 2, 3]")
[1, 2, 3]
> encoding.from_json("null")
null
> encoding.from_json("{\"key\": \"value\"}")
{
key = "value",
}
> encoding.from_json(local.file.some_file.content)
"Hello, world!"
encoding.from_yaml
The encoding.from_yaml
function decodes a string representing YAML into an Alloy value. encoding.from_yaml
fails if the string argument provided can’t be parsed as YAML.
A common use case of encoding.from_yaml
is to decode the output of a local.file
component to an Alloy value.
Examples
> encoding.from_yaml("15")
15
> encoding.from_yaml("[1, 2, 3]")
[1, 2, 3]
> encoding.from_yaml("null")
null
> encoding.from_yaml("key: value")
{
key = "value",
}
> encoding.from_yaml(local.file.some_file.content)
"Hello, world!"