Class: Base85

@nginstack/engine/lib/encoding/Base85~ Base85


new Base85()

Classe que permite codificação e decodificação de conteúdo binário para a Base85. No formato Base85 são utilizados cinco caracteres para representar quatro bytes de dado binário, sendo assim mais compacto do que o formato Base64. Para uma melhor interoperabilidade com o Javascript e ao SQL, a implementação do Engine segue a especificação Z85, com uma extensão para o suporte ao uso de padding no conteúdo. Vale ressaltar que a especificação Z85 faz uso dos caracteres '<' e '>', sendo necessário que seu conteúdo seja escapado em linguagens SGML.

Não devem ser construídas instâncias da classe Base85, e sim utilizados os seus métodos de classe.

Members


<static, constant> ARRAY_BUFFER_DECODING

Constante para ser usada no parâmetro decodeFmt do método decode. Indica que o método decode deve retornar um objeto ArrayBuffer.


<static, constant> STRING_DECODING

Constante para ser usada no parâmetro decodeFmt do método decode. Indica que o método decode deve retornar uma String.


<static, constant> Z85

Constante para ser usada no parâmetro encoding. Indica que deve ser usado a codificação Z85. É o único formato de encoding Base85 suportado atualmente.

Methods


<static> decode(str [, encoding] [, decodeFormat])

Decodifica uma string em Base85 para um binário codificado como string, ou um ArrayBuffer.

Parameters:
Name Type Argument Description
str string

String em Base85 a ser decodificada.

encoding string <optional>

Formato de codificação Base85, sendo Base85.Z85 o valor default do parâmetro.

decodeFormat number <optional>

O formato de saída. Os valores possíveis são Base85.STRING_DECODING e Base85.ARRAY_BUFFER_DECODING.

Returns:

Um binário codificado como string ou um ArrayBuffer.

Type
string | ArrayBuffer

<static> decodeStream(input, output [, encoding])

Lê um conteúdo Base85 de um stream e escreve como binário em outro stream. Faz a operação inversa do método encodeStream.

Parameters:
Name Type Argument Description
input File | MemoryStream

Conteúdo Base85 a ser decodificado

output File | MemoryStream

Stream que recebe o conteúdo em formato binário

encoding string <optional>

Formato de codificação Base85, sendo Base85.Z85 o valor default do parâmetro.


<static> encode(bin [, encoding] [, noPadding])

Codifica um conteúdo binário para a Base85.

Parameters:
Name Type Argument Description
bin string | MemoryStream | File | ArrayBuffer

Dados a serem codificados, podendo ser um binário codificado como string.

encoding string <optional>

Formato de codificação Base85. Somente é suportado o formato Z85 atualmente, sendo Base85.Z85 o valor default do parâmetro.

noPadding boolean <optional>

Indica que não deve ser feito o padding do conteúdo caso seja necessário, sendo false o valor padrão. Um erro será lançado caso seja informado true e se o conteúdo não for de um tamanho múltiplo de quatro.

Returns:

String codificada em Base85.

Type
string

<static> encodeStream(input, output [, encoding])

Lê um conteúdo binário de um stream e escreve como Base85 em outro stream. Faz a operação inversa do método decodeStream.

Parameters:
Name Type Argument Description
input File | MemoryStream

Conteúdo binário a ser codificado

output File | MemoryStream

Stream que recebe o conteúdo em formato Base85

encoding string <optional>

Formato de codificação Base85, sendo Base85.Z85 o valor default do parâmetro.