object

# `base85`

Base85 encoder and decoder (Ascii85/btoa variant).

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

## Public predicates

### `parse/2`

Parses Base85 (Ascii85) data from the given source (`atom(Atom)`, `chars(List)`, or `codes(List)`) into a list of bytes.

Compilation flags:
`static`
Template:
`parse(Source,Bytes)`
Mode and number of proofs:
`parse(++compound,--list(byte))` - `one_or_error`
Exceptions:
`Source` is a variable:
`instantiation_error`
`Source` is neither a variable nor a valid Base85 source term:
`domain_error(base85_source,Source)`
`Source` contains Base85 data with characters outside the Base85 alphabet:
`representation_error(base85)`

### `generate/2`

Generates Base85 (Ascii85) in the representation specified in the first argument (`atom(Atom)`, `chars(List)`, or `codes(List)`) for the list of bytes in the second argument.

Compilation flags:
`static`
Template:
`generate(Sink,Bytes)`
Mode and number of proofs:
`generate(+compound,+list(byte))` - `one_or_error`
Exceptions:
`Sink` is a variable:
`instantiation_error`
`Sink` is neither a variable nor a valid Base85 sink term:
`domain_error(base85_sink,Sink)`

## Protected predicates

(none)

## Private predicates

(none)

## Operators

(none)