/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef utfstrings_h__
#define utfstrings_h__
struct UTFStringsStringPair {
char16_t m16[
16 ];
char m8[
16 ];
};
static const UTFStringsStringPair ValidStrings[] = {
{{
'a' ,
'b' ,
'c' ,
'd' }, {
'a' ,
'b' ,
'c' ,
'd' }},
{{
'1' ,
'2' ,
'3' ,
'4' }, {
'1' ,
'2' ,
'3' ,
'4' }},
{{
0 x7F,
'A' ,
0 x80,
'B' ,
0 x101,
0 x200},
{
0 x7F,
'A' ,
char (
0 xC2),
char (
0 x80),
'B' ,
char (
0 xC4),
char (
0 x81),
char (
0 xC8),
char (
0 x80)}},
{{
0 x7FF,
0 x800,
0 x1000},
{
char (
0 xDF),
char (
0 xBF),
char (
0 xE0),
char (
0 xA0),
char (
0 x80),
char (
0 xE1),
char (
0 x80),
char (
0 x80)}},
{{
0 xD7FF,
0 xE000,
0 xF00F,
'A' ,
0 xFFF0},
{
char (
0 xED),
char (
0 x9F),
char (
0 xBF),
char (
0 xEE),
char (
0 x80),
char (
0 x80),
char (
0 xEF),
char (
0 x80),
char (
0 x8F),
'A' ,
char (
0 xEF),
char (
0 xBF),
char (
0 xB0)}},
{{
0 xFFF7,
0 xFFFC,
0 xFFFD,
0 xFFFD},
{
char (
0 xEF),
char (
0 xBF),
char (
0 xB7),
char (
0 xEF),
char (
0 xBF),
char (
0 xBC),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xD800,
0 xDC00,
0 xD800,
0 xDCFF},
{
char (
0 xF0),
char (
0 x90),
char (
0 x80),
char (
0 x80),
char (
0 xF0),
char (
0 x90),
char (
0 x83),
char (
0 xBF)}},
{{
0 xDBFF,
0 xDFFF,
0 xDBB7,
0 xDCBA},
{
char (
0 xF4),
char (
0 x8F),
char (
0 xBF),
char (
0 xBF),
char (
0 xF3),
char (
0 xBD),
char (
0 xB2),
char (
0 xBA)}},
{{
0 xFFFD,
0 xFFFF},
{
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBF)}},
{{
0 xFFFD,
0 xFFFE,
0 xFFFF},
{
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBE),
char (
0 xEF),
char (
0 xBF),
char (
0 xBF)}},
};
static const UTFStringsStringPair Invalid16Strings[] = {
{{
'a' ,
'b' ,
0 xD800}, {
'a' ,
'b' ,
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xD8FF,
'b' }, {
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
'b' }},
{{
0 xD821}, {
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xDC21}, {
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xDC00,
0 xD800,
'b' },
{
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
'b' }},
{{
'b' ,
0 xDC00,
0 xD800},
{
'b' ,
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xDC00,
0 xD800},
{
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xDC00,
0 xD800,
0 xDC00,
0 xD800},
{
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xF0),
char (
0 x90),
char (
0 x80),
char (
0 x80),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD)}},
{{
0 xDC00,
0 xD800,
0 xD800,
0 xDC00},
{
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xEF),
char (
0 xBF),
char (
0 xBD),
char (
0 xF0),
char (
0 x90),
char (
0 x80),
char (
0 x80)}},
};
static const UTFStringsStringPair Invalid8Strings[] = {
{{
'a' ,
0 xFFFD,
0 xFFFD,
'b' }, {
'a' ,
char (
0 xC0),
char (
0 x80),
'b' }},
{{
0 xFFFD,
0 xFFFD,
0 x80}, {
char (
0 xC1),
char (
0 xBF),
char (
0 xC2),
char (
0 x80)}},
{{
0 xFFFD,
0 xFFFD}, {
char (
0 xC1),
char (
0 xBF)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
'x' ,
0 x0800},
{
char (
0 xE0),
char (
0 x80),
char (
0 x80),
'x' ,
char (
0 xE0),
char (
0 xA0),
char (
0 x80)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
'x' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
char (
0 xF0),
char (
0 x80),
char (
0 x80),
char (
0 x80),
'x' ,
char (
0 xF0),
char (
0 x80),
char (
0 x8F),
char (
0 x80)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
char (
0 xF4),
char (
0 x90),
char (
0 x80),
char (
0 x80),
char (
0 xF7),
char (
0 xBF),
char (
0 xBF),
char (
0 xBF)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
'x' ,
0 xD800,
0 xDC00,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
char (
0 xF0),
char (
0 x8F),
char (
0 xBF),
char (
0 xBF),
'x' ,
char (
0 xF0),
char (
0 x90),
char (
0 x80),
char (
0 x80),
char (
0 xF0),
char (
0 x8F),
char (
0 xBF),
char (
0 xBF)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
'x' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
char (
0 xF8),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
'x' ,
char (
0 xF8),
char (
0 x88),
char (
0 x80),
char (
0 x80),
char (
0 x80)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
char (
0 xFB),
char (
0 xBF),
char (
0 xBF),
char (
0 xBF),
char (
0 xBF),
char (
0 xFC),
char (
0 xA0),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80)}},
{{
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
char (
0 xFC),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 xFD),
char (
0 xBF),
char (
0 xBF),
char (
0 xBF),
char (
0 xBF),
char (
0 xBF)}},
};
static const UTFStringsStringPair Malformed8Strings[] = {
{{
0 xFFFD}, {
char (
0 x80)}},
{{
'a' ,
0 xFFFD,
'c' }, {
'a' ,
char (
0 xC8),
'c' }},
{{
'a' ,
0 xFFFD}, {
'a' ,
char (
0 xC8)}},
{{
'a' ,
0 xFFFD,
'c' }, {
'a' ,
char (
0 xE8),
'c' }},
{{
'a' ,
0 xFFFD,
'c' }, {
'a' ,
char (
0 xE8),
char (
0 x80),
'c' }},
{{
'a' ,
0 xFFFD}, {
'a' ,
char (
0 xE8),
char (
0 x80)}},
{{
0 xFFFD,
0 x7F,
0 xFFFD}, {
char (
0 xE8),
0 x7F,
char (
0 x80)}},
{{
'a' ,
0 xFFFD,
0 xFFFD}, {
'a' ,
char (
0 xE8),
char (
0 xE8),
char (
0 x80)}},
{{
'a' ,
0 xFFFD}, {
'a' ,
char (
0 xF4)}},
{{
'a' ,
0 xFFFD,
'c' ,
'c' },
{
'a' ,
char (
0 xF4),
char (
0 x80),
char (
0 x80),
'c' ,
'c' }},
{{
'a' ,
0 xFFFD,
'x' ,
0 xFFFD},
{
'a' ,
char (
0 xF4),
char (
0 x80),
'x' ,
char (
0 x80)}},
{{
0 xDBC0,
0 xDC00,
0 xFFFD},
{
char (
0 xF4),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80)}},
{{
'a' ,
0 xFFFD,
'c' }, {
'a' ,
char (
0 xFA),
'c' }},
{{
'a' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 x7F,
0 xFFFD,
'c' },
{
'a' ,
char (
0 xFA),
char (
0 x80),
char (
0 x80),
0 x7F,
char (
0 x80),
'c' }},
{{
'a' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
'c' },
{
'a' ,
char (
0 xFA),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
'c' }},
{{
'a' ,
0 xFFFD}, {
'a' ,
char (
0 xFD)}},
{{
'a' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
'c' },
{
'a' ,
char (
0 xFD),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
'c' }},
{{
'a' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 xFFFD},
{
'a' ,
char (
0 xFD),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80),
char (
0 x80)}},
{{
'a' ,
0 xFFFD,
0 xFFFD,
0 xFFFD,
0 x40,
0 xFFFD,
0 xFFFD,
'c' },
{
'a' ,
char (
0 xFD),
char (
0 x80),
char (
0 x80),
0 x40,
char (
0 x80),
char (
0 x80),
'c' }},
};
#endif
Messung V0.5 in Prozent C=91 H=95 G=92
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-06-04)
¤
*© Formatika GbR, Deutschland