CACAO
Data Structures | Namespaces | Macros | Functions | Variables
utf8.cpp File Reference

Go to the source code of this file.

Data Structures

struct  utf8_tag
 
struct  utf16_tag
 
struct  InternedUtf8String
 
struct  FromUtf8Builder< Iterator >
 
struct  FromUtf16Builder< Iterator >
 
struct  SafeCodePointCounter
 
struct  ByteCounter
 
struct  Utf16Hasher
 
struct  DisplayPrintableAscii
 
struct  SprintConvertToLatin1
 

Namespaces

 cacao
 This file contains the Instruction class.
 

Macros

#define HASHTABLE_UTF_SIZE   16384
 
#define UTF8(NAME, STR)   utf8::NAME = Utf8String::from_utf8(STR);
 
#define UTF8(NAME, STR)   Utf8String utf8::NAME;
 

Functions

static size_t update_hash (size_t hash, uint8_t byte)
 
static size_t finish_hash (size_t hash)
 
template<typename Iterator >
static Utf8String string_from_utf8 (const char *cs, size_t size)
 
template<typename Iterator >
static Utf8String string_from_utf16 (const uint16_t *cs, size_t size)
 
const char * utf8_text (utf *u)
 
const char * utf8_end (utf *u)
 
size_t utf8_size (utf *u)
 
size_t utf8_hash (utf *u)
 
void utf_display_printable_ascii (Utf8String u)
 
void utf_display_printable_ascii_classname (Utf8String u)
 
void utf_sprint_convert_to_latin1 (char *buffer, Utf8String u)
 
void utf_sprint_convert_to_latin1_classname (char *buffer, Utf8String u)
 
void utf_strcat_convert_to_latin1 (char *buffer, utf *u)
 
void utf_strcat_convert_to_latin1_classname (char *buffer, Utf8String u)
 
void utf_fprint_printable_ascii (FILE *file, Utf8String u)
 
void utf_fprint_printable_ascii_classname (FILE *file, Utf8String u)
 
OStreamcacao::operator<< (OStream &os, const Utf8String &u)
 

Variables

static InternTable
< InternedUtf8String
intern_table
 

Macro Definition Documentation

#define HASHTABLE_UTF_SIZE   16384

Definition at line 108 of file utf8.cpp.

#define UTF8 (   NAME,
  STR 
)    utf8::NAME = Utf8String::from_utf8(STR);

Definition at line 496 of file utf8.cpp.

#define UTF8 (   NAME,
  STR 
)    Utf8String utf8::NAME;

Definition at line 496 of file utf8.cpp.

Function Documentation

static size_t finish_hash ( size_t  hash)
inlinestatic

Definition at line 189 of file utf8.cpp.

template<typename Iterator >
static Utf8String string_from_utf16 ( const uint16_t *  cs,
size_t  size 
)
inlinestatic

Definition at line 327 of file utf8.cpp.

template<typename Iterator >
static Utf8String string_from_utf8 ( const char *  cs,
size_t  size 
)
inlinestatic

Definition at line 319 of file utf8.cpp.

static size_t update_hash ( size_t  hash,
uint8_t  byte 
)
inlinestatic

Definition at line 180 of file utf8.cpp.

const char* utf8_end ( utf *  u)

Definition at line 506 of file utf8.cpp.

size_t utf8_hash ( utf *  u)

Definition at line 509 of file utf8.cpp.

size_t utf8_size ( utf *  u)

Definition at line 508 of file utf8.cpp.

const char* utf8_text ( utf *  u)

Definition at line 505 of file utf8.cpp.

void utf_display_printable_ascii ( Utf8String  u)

Definition at line 532 of file utf8.cpp.

void utf_display_printable_ascii_classname ( Utf8String  u)

Definition at line 552 of file utf8.cpp.

void utf_fprint_printable_ascii ( FILE *  file,
Utf8String  u 
)

Definition at line 650 of file utf8.cpp.

void utf_fprint_printable_ascii_classname ( FILE *  file,
Utf8String  u 
)

Definition at line 665 of file utf8.cpp.

void utf_sprint_convert_to_latin1 ( char *  buffer,
Utf8String  u 
)

Definition at line 584 of file utf8.cpp.

void utf_sprint_convert_to_latin1_classname ( char *  buffer,
Utf8String  u 
)

Definition at line 604 of file utf8.cpp.

void utf_strcat_convert_to_latin1 ( char *  buffer,
utf *  u 
)

Definition at line 623 of file utf8.cpp.

void utf_strcat_convert_to_latin1_classname ( char *  buffer,
Utf8String  u 
)

Definition at line 637 of file utf8.cpp.

Variable Documentation

InternTable<InternedUtf8String> intern_table
static

Definition at line 105 of file utf8.cpp.