package base64
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=3ae91334f029ccd96690b598010f94e55811095d14a37d52f1724e5eca0f35cc
sha512=818103de0ac03b9a04f5aafc119341522bf69e57dfbd038b321f92ab8cbf7fc7084ca3012086baece12da94d4d5448eb927f70b741025a13d49e93ca6ea27d41
doc/base64.rfc2045/Base64_rfc2045/index.html
Module Base64_rfc2045
Source
Decode
A 64-character string specifying the regular Base64 alphabet.
The type for decoders.
The type for input sources. With a `Manual
source the client must provide input with src
.
src d s j l
provides d
with l
bytes to read, starting at j
in s
. This byte range is read by calls to decode
with d
until `Await
is returned. To signal the end of input, call the function with l = 0
.
decode d
is:
`Await
ifd
has a`Manual
input source and awaits for more input. The client must usesrc
to provide it.`End
if the end of input was reached`Malformed bytes
if thebytes
sequence is malformed according to the decoded base64 encoding scheme. If you are interested in a best-effort decoding, you can still continue to decode after an error until the decode synchronizes again on valid bytes.`Flush data
if adata
sequence value was decoded.`Wrong_padding
if decoder retrieve a wrong padding at the end of the input.
Note. Repeated invocation always eventually returns `End
, even in case of errors.
decoder_byte_count d
is the number of characters already decoded on d
(included malformed ones). This is the last decode
's end output offset counting from beginning of the stream.
decoder_dangerous d
returns true
if encoded input does not respect the 80-columns rule. If your are interested in a best-effort decoding you can still continue to decode even if decoder_dangerous d
returns true
. Nothing grow automatically internally in this state.
The type for output destinations. With a `Manual
destination the client must provide output storage with dst
.
The type for Base64 (RFC2045) encoder.
encoder dst
is an encoder for Base64 (RFC2045) that outputs to dst
.
encode e v
: is
`Partial
iffe
has a`Manual
destination and needs more output storage. The client must usedst
to provide a new buffer and then callencode
with`Await
until`Ok
is returned.`Ok
when the encoder is ready to encode a new`Char
or`End
For `Manual
destination, encoding `End
always return `Partial
, the client should continue as usual with `Await
until `Ok
is returned at which point dst_rem
encoder
is guaranteed to be the size of the last provided buffer (i.e. nothing was written).
Raises. Invalid_argument
if a `Char
or `End
is encoded after a `Partial
encode.