Current section

Files

Jump to
ywt_core src ywt@internal@base64url.erl
Raw

src/ywt@internal@base64url.erl

-module(ywt@internal@base64url).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/ywt/internal/base64url.gleam").
-export([is_valid/1, decode/1]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(false).
-file("src/ywt/internal/base64url.gleam", 12).
?DOC(false).
-spec is_valid(binary()) -> boolean().
is_valid(Input) ->
ywt_core_ffi:is_base64url_unpadded(Input).
-file("src/ywt/internal/base64url.gleam", 3).
?DOC(false).
-spec decode(binary()) -> {ok, bitstring()} | {error, nil}.
decode(Input) ->
case ywt_core_ffi:is_base64url_unpadded(Input) of
true ->
gleam@bit_array:base64_url_decode(Input);
false ->
{error, nil}
end.