object

# `base64url`

Base64URL parser and generator.

Availability:
`logtalk_load(base64(loader))`
Author: Paulo Moura
Version: 1:0:0
Date: 2026-07-06
Compilation flags:
`static, context_switching_calls`
Dependencies:
(none)
Remarks:
(none)
Inherited public predicates:
(none)

## Public predicates

### `parse/2`

Parses the Base64URL data from the given source (`atom(Atom)`, `chars(List)`, or `codes(List)` into a URL (using the same format as the source).

Compilation flags:
`static`
Template:
`parse(Source,URL)`
Mode and number of proofs:
`parse(++compound,--types([atom,chars,codes]))` - `one_or_error`
Exceptions:
`Source` is a variable:
`instantiation_error`
`Source` is neither a variable nor a valid Base64 source term:
`domain_error(base64url_source,Source)`
`Source` contains Base64URL data with characters outside the Base64URL alphabet:
`representation_error(base64)`

### `generate/2`

Generates Base64URL data in the representation specified in the first argument (`atom(Atom)`, `chars(List)`, or `codes(List)` for the given URL (given in the same format as the sink).

Compilation flags:
`static`
Template:
`generate(Sink,URL)`
Mode and number of proofs:
`generate(+compound,+types([atom,chars,codes]))` - `one_or_error`
Exceptions:
`Sink` is a variable:
`instantiation_error`
`Sink` is neither a variable nor a valid Base64 sink term:
`domain_error(base64url_sink,Sink)`

## Protected predicates

(none)

## Private predicates

(none)

## Operators

(none)