7#ifndef ADA_IDNA_UNICODE_TRANSCODING_H 
    8#define ADA_IDNA_UNICODE_TRANSCODING_H 
   15size_t utf8_to_utf32(
const char* buf, 
size_t len, 
char32_t* utf32_output);
 
   21size_t utf32_to_utf8(
const char32_t* buf, 
size_t len, 
char* utf8_output);
 
 
   28#ifndef ADA_IDNA_MAPPING_H 
   29#define ADA_IDNA_MAPPING_H 
   37void ascii_map(
char* input, 
size_t length);
 
   39std::u32string 
map(std::u32string_view input);
 
   46#ifndef ADA_IDNA_NORMALIZATION_H 
   47#define ADA_IDNA_NORMALIZATION_H 
   61#ifndef ADA_IDNA_PUNYCODE_H 
   62#define ADA_IDNA_PUNYCODE_H 
   78#ifndef ADA_IDNA_VALIDITY_H 
   79#define ADA_IDNA_VALIDITY_H 
   96#ifndef ADA_IDNA_TO_ASCII_H 
   97#define ADA_IDNA_TO_ASCII_H 
  100#include <string_view> 
  113std::string 
to_ascii(std::string_view ut8_string);
 
  120bool constexpr is_ascii(std::u32string_view view);
 
  121bool constexpr is_ascii(std::string_view view);
 
  129#ifndef ADA_IDNA_TO_UNICODE_H 
  130#define ADA_IDNA_TO_UNICODE_H 
  132#include <string_view> 
  136std::string 
to_unicode(std::string_view input);
 
  143#ifndef ADA_IDNA_IDENTIFIER_H 
  144#define ADA_IDNA_IDENTIFIER_H 
  147#include <string_view> 
void ascii_map(char *input, size_t length)
 
bool punycode_to_utf32(std::string_view input, std::u32string &out)
 
size_t utf32_length_from_utf8(const char *buf, size_t len)
 
size_t utf32_to_utf8(const char32_t *buf, size_t len, char *utf8_output)
 
bool constexpr is_ascii(std::u32string_view view)
 
void normalize(std::u32string &input)
 
bool utf32_to_punycode(std::u32string_view input, std::string &out)
 
std::string to_ascii(std::string_view ut8_string)
 
std::string to_unicode(std::string_view input)
 
bool valid_name_code_point(char32_t code_point, bool first)
 
size_t utf8_length_from_utf32(const char32_t *buf, size_t len)
 
bool is_label_valid(std::u32string_view label)
 
bool contains_forbidden_domain_code_point(std::string_view ascii_string)
 
std::u32string map(std::u32string_view input)
 
size_t utf8_to_utf32(const char *buf, size_t len, char32_t *utf32_output)
 
bool verify_punycode(std::string_view input)