jaulib v1.3.6
Jau Support Library (C++, Java, ..)
Loading...
Searching...
No Matches
jau::codec::base::natural64_alphabet Class Reference

Safe natural base 64 alphabet, both without ASCII code-point sorting order. More...

#include <base_codec.hpp>

Inheritance diagram for jau::codec::base::natural64_alphabet:
Collaboration diagram for jau::codec::base::natural64_alphabet:

Public Member Functions

 natural64_alphabet () noexcept
 
- Public Member Functions inherited from jau::codec::base::alphabet
 alphabet (std::string _name, int _base, std::string_view _symbols, char _padding64, code_point_func _cpf) noexcept
 
constexpr int base () const noexcept
 The fixed base used for this alphabet.
 
constexpr int code_point (const char c) const noexcept
 Returns the code-point of the given character or -1 if not element of this alphabet.
 
constexpr const std::string & name () const noexcept
 Human readable name for this alphabet instance.
 
constexpr char operator[] (size_t cp) const noexcept
 Retrieve the character at given code-point of this alphabet.
 
constexpr char padding64 () const noexcept
 Padding symbol for base <= 64 and block encoding only.
 
constexpr const std::string_view & symbols () const noexcept
 The string of symbols of this alphabet.
 
std::string to_string () const noexcept
 

Additional Inherited Members

- Public Types inherited from jau::codec::base::alphabet
typedef int(* code_point_func) (const char c) noexcept
 

Detailed Description

Safe natural base 64 alphabet, both without ASCII code-point sorting order.

Order is considered a natural extension of decimal symbols, i.e. 0 < a < A < _.

  • Value: 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_
  • Padding: =

Properties

  • Base 64
  • 7-bit ASCII
  • Code page 437 compatible
  • base64url alphabet, but different order
  • Safe URL and filename use
  • Excludes forbidden [v]fat chars: <>:"/\|?*</tt> - Excludes quoting chars: "'$ and space
  • Not supporting ASCII code-point sorting.
  • Order: 0 < a < A < _

Definition at line 213 of file base_codec.hpp.

Constructor & Destructor Documentation

◆ natural64_alphabet()

jau::codec::base::natural64_alphabet::natural64_alphabet ( )
inlinenoexcept

Definition at line 234 of file base_codec.hpp.


The documentation for this class was generated from the following file: