Js_of_ocaml_compiler.Base64Base64 RFC4648 implementation.
Base64 is a group of similar binary-to-text encoding schemes that represent binary data in an ASCII string format by translating it into a radix-64 representation. It is specified in RFC 4648.
val default_alphabet : alphabetA 64-character alphabet specifying the regular Base64 alphabet.
val uri_safe_alphabet : alphabetA 64-character alphabet specifying the URI- and filename-safe Base64 alphabet.
val make_alphabet : string -> alphabetMake a new alphabet.
val length_alphabet : alphabet -> intReturns length of the alphabet, should be 64.
val alphabet : alphabet -> int arrayReturns the alphabet.
val decode_exn : 
  ?pad:bool ->
  ?alphabet:alphabet ->
  ?off:int ->
  ?len:int ->
  string ->
  stringdecode_exn ?off ?len s decodes len bytes (defaults to String.length s - off) of the string s starting from off (defaults to 0) that is encoded in Base64 format. Will leave trailing NULLs on the string, padding it out to a multiple of 3 characters. alphabet defaults to default_alphabet. pad = true specifies to check if s is padded or not, otherwise, it raises an exception.
Decoder can fail when character of s is not a part of alphabet or is not padding character. If input is not padded correctly, decoder does the best-effort but it does not ensure decode_exn (encode ~pad:false x) = x.
val decode_sub : 
  ?pad:bool ->
  ?alphabet:alphabet ->
  ?off:int ->
  ?len:int ->
  string ->
  (sub, [ `Msg of string ]) resultSame as decode_exn but it returns a result type instead to raise an exception. Then, it returns a sub string. Decoded input (str, off, len) will starting to off and will have len bytes - by this way, we ensure to allocate only one time result.
val decode : 
  ?pad:bool ->
  ?alphabet:alphabet ->
  ?off:int ->
  ?len:int ->
  string ->
  (string, [ `Msg of string ]) resultSame as decode_exn, but returns an explicit error message result if it fails.
val encode : 
  ?pad:bool ->
  ?alphabet:alphabet ->
  ?off:int ->
  ?len:int ->
  string ->
  (string, [ `Msg of string ]) resultencode s encodes the string s into base64. If pad is false, no trailing padding is added. pad defaults to true, and alphabet to default_alphabet.
encode fails when off and len do not designate a valid range of s.
val encode_string : ?pad:bool -> ?alphabet:alphabet -> string -> stringencode_string s encodes the string s into base64. If pad is false, no trailing padding is added. pad defaults to true, and alphabet to default_alphabet.