cprover
|
#include "unicode.h"
#include <cstring>
#include <locale>
#include <iomanip>
#include <sstream>
#include <cstdint>
Go to the source code of this file.
Macros | |
#define | BUFSIZE 100 |
Functions | |
bool | is_little_endian_arch () |
Determine endianness of the architecture. More... | |
std::string | narrow (const wchar_t *s) |
std::wstring | widen (const char *s) |
std::string | narrow (const std::wstring &s) |
std::wstring | widen (const std::string &s) |
static void | utf8_append_code (unsigned int c, std::string &result) |
Appends a unicode character to a utf8-encoded string. More... | |
std::string | utf32_to_utf8 (const std::basic_string< unsigned int > &s) |
std::vector< std::string > | narrow_argv (int argc, const wchar_t **argv_wide) |
uint16_t | do_swap_bytes (uint16_t x) |
A helper function for dealing with different UTF16 endians. More... | |
void | utf16_append_code (unsigned int code, bool swap_bytes, std::wstring &result) |
std::wstring | utf8_to_utf16 (const std::string &in, bool swap_bytes) |
std::wstring | utf8_to_utf16_big_endian (const std::string &in) |
std::wstring | utf8_to_utf16_little_endian (const std::string &in) |
static void | utf16_little_endian_to_java (const wchar_t ch, std::ostringstream &result, const std::locale &loc) |
std::string | utf16_little_endian_to_java (const wchar_t ch) |
std::string | utf16_little_endian_to_java (const std::wstring &in) |
#define BUFSIZE 100 |
Definition at line 29 of file unicode.cpp.
uint16_t do_swap_bytes | ( | uint16_t | x | ) |
A helper function for dealing with different UTF16 endians.
Definition at line 171 of file unicode.cpp.
Referenced by utf16_append_code().
bool is_little_endian_arch | ( | ) |
Determine endianness of the architecture.
Definition at line 23 of file unicode.cpp.
Referenced by utf8_to_utf16_big_endian(), and utf8_to_utf16_little_endian().
std::string narrow | ( | const wchar_t * | s | ) |
Definition at line 31 of file unicode.cpp.
References r.
Referenced by main(), narrow_argv(), ms_cl_cmdlinet::parse_env(), and ms_cl_cmdlinet::process_response_file().
std::string narrow | ( | const std::wstring & | s | ) |
Definition at line 81 of file unicode.cpp.
References r.
std::vector<std::string> narrow_argv | ( | int | argc, |
const wchar_t ** | argv_wide | ||
) |
void utf16_append_code | ( | unsigned int | code, |
bool | swap_bytes, | ||
std::wstring & | result | ||
) |
Definition at line 179 of file unicode.cpp.
References do_swap_bytes().
Referenced by utf8_to_utf16().
|
static |
ch | UTF-16LE character |
result | stream to receive string in US-ASCII format, with \uxxxx escapes for other characters |
loc | locale to check for printable characters |
Definition at line 291 of file unicode.cpp.
References loc.
Referenced by expr2javat::convert_constant(), utf16_constant_array_to_java(), and utf16_little_endian_to_java().
std::string utf16_little_endian_to_java | ( | const wchar_t | ch | ) |
ch | UTF-16LE character |
Definition at line 330 of file unicode.cpp.
References loc, and utf16_little_endian_to_java().
std::string utf16_little_endian_to_java | ( | const std::wstring & | in | ) |
in | String in UTF-16LE format |
Definition at line 340 of file unicode.cpp.
References loc, and utf16_little_endian_to_java().
std::string utf32_to_utf8 | ( | const std::basic_string< unsigned int > & | s | ) |
utf32:encoded | wide string |
Definition at line 143 of file unicode.cpp.
References utf8_append_code().
Referenced by append_universal_char(), convert_one_string_literal(), and make_identifier().
|
static |
Appends a unicode character to a utf8-encoded string.
Definition at line 117 of file unicode.cpp.
Referenced by utf32_to_utf8().
std::wstring utf8_to_utf16 | ( | const std::string & | in, |
bool | swap_bytes | ||
) |
Definition at line 212 of file unicode.cpp.
References size_type(), and utf16_append_code().
Referenced by utf8_to_utf16_big_endian(), and utf8_to_utf16_little_endian().
std::wstring utf8_to_utf16_big_endian | ( | const std::string & | in | ) |
Definition at line 273 of file unicode.cpp.
References is_little_endian_arch(), and utf8_to_utf16().
std::wstring utf8_to_utf16_little_endian | ( | const std::string & | in | ) |
Definition at line 281 of file unicode.cpp.
References is_little_endian_arch(), and utf8_to_utf16().
Referenced by string_constraint_generatort::add_axioms_for_constant(), delete_directory(), and get_or_create_string_literal_symbol().
std::wstring widen | ( | const char * | s | ) |
Definition at line 56 of file unicode.cpp.
References r.
Referenced by string_constraint_generatort::add_axioms_for_constant(), c_preprocess_none(), cbmc_parse_optionst::doit(), jbmc_parse_optionst::doit(), goto_instrument_parse_optionst::doit(), cbmc_solverst::get_smt2(), lazy_goto_modelt::initialize(), initialize_goto_model(), goto_instrument_parse_optionst::instrument_goto_program(), is_goto_binary(), language_uit::parse(), compilet::parse(), unwindsett::parse_unwindset_file(), console_message_handlert::print(), read_goto_binary(), and run().
std::wstring widen | ( | const std::string & | s | ) |
Definition at line 98 of file unicode.cpp.
References r.