1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/yarr/YarrCanonicalizeUCS2.cpp Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,464 @@ 1.4 +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- 1.5 + * vim: set ts=8 sts=4 et sw=4 tw=99: 1.6 + * 1.7 + * Copyright (C) 2012 Apple Inc. All rights reserved. 1.8 + * 1.9 + * Redistribution and use in source and binary forms, with or without 1.10 + * modification, are permitted provided that the following conditions 1.11 + * are met: 1.12 + * 1. Redistributions of source code must retain the above copyright 1.13 + * notice, this list of conditions and the following disclaimer. 1.14 + * 2. Redistributions in binary form must reproduce the above copyright 1.15 + * notice, this list of conditions and the following disclaimer in the 1.16 + * documentation and/or other materials provided with the distribution. 1.17 + * 1.18 + * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY 1.19 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1.20 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1.21 + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR 1.22 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 1.23 + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 1.24 + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 1.25 + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 1.26 + * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 1.27 + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 1.28 + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1.29 + */ 1.30 + 1.31 +// DO NOT EDIT! - this file autogenerated by YarrCanonicalizeUCS2.js 1.32 + 1.33 +#include "yarr/YarrCanonicalizeUCS2.h" 1.34 + 1.35 +#include <stddef.h> 1.36 + 1.37 +namespace JSC { namespace Yarr { 1.38 + 1.39 +const uint16_t ucs2CharacterSet0[] = { 0x01c4u, 0x01c5u, 0x01c6u, 0 }; 1.40 +const uint16_t ucs2CharacterSet1[] = { 0x01c7u, 0x01c8u, 0x01c9u, 0 }; 1.41 +const uint16_t ucs2CharacterSet2[] = { 0x01cau, 0x01cbu, 0x01ccu, 0 }; 1.42 +const uint16_t ucs2CharacterSet3[] = { 0x01f1u, 0x01f2u, 0x01f3u, 0 }; 1.43 +const uint16_t ucs2CharacterSet4[] = { 0x0392u, 0x03b2u, 0x03d0u, 0 }; 1.44 +const uint16_t ucs2CharacterSet5[] = { 0x0395u, 0x03b5u, 0x03f5u, 0 }; 1.45 +const uint16_t ucs2CharacterSet6[] = { 0x0398u, 0x03b8u, 0x03d1u, 0 }; 1.46 +const uint16_t ucs2CharacterSet7[] = { 0x0345u, 0x0399u, 0x03b9u, 0x1fbeu, 0 }; 1.47 +const uint16_t ucs2CharacterSet8[] = { 0x039au, 0x03bau, 0x03f0u, 0 }; 1.48 +const uint16_t ucs2CharacterSet9[] = { 0x00b5u, 0x039cu, 0x03bcu, 0 }; 1.49 +const uint16_t ucs2CharacterSet10[] = { 0x03a0u, 0x03c0u, 0x03d6u, 0 }; 1.50 +const uint16_t ucs2CharacterSet11[] = { 0x03a1u, 0x03c1u, 0x03f1u, 0 }; 1.51 +const uint16_t ucs2CharacterSet12[] = { 0x03a3u, 0x03c2u, 0x03c3u, 0 }; 1.52 +const uint16_t ucs2CharacterSet13[] = { 0x03a6u, 0x03c6u, 0x03d5u, 0 }; 1.53 +const uint16_t ucs2CharacterSet14[] = { 0x1e60u, 0x1e61u, 0x1e9bu, 0 }; 1.54 + 1.55 +static const size_t UCS2_CANONICALIZATION_SETS = 15; 1.56 +const uint16_t* const characterSetInfo[UCS2_CANONICALIZATION_SETS] = { 1.57 + ucs2CharacterSet0, 1.58 + ucs2CharacterSet1, 1.59 + ucs2CharacterSet2, 1.60 + ucs2CharacterSet3, 1.61 + ucs2CharacterSet4, 1.62 + ucs2CharacterSet5, 1.63 + ucs2CharacterSet6, 1.64 + ucs2CharacterSet7, 1.65 + ucs2CharacterSet8, 1.66 + ucs2CharacterSet9, 1.67 + ucs2CharacterSet10, 1.68 + ucs2CharacterSet11, 1.69 + ucs2CharacterSet12, 1.70 + ucs2CharacterSet13, 1.71 + ucs2CharacterSet14, 1.72 +}; 1.73 + 1.74 +const size_t UCS2_CANONICALIZATION_RANGES = 364; 1.75 +const UCS2CanonicalizationRange rangeInfo[UCS2_CANONICALIZATION_RANGES] = { 1.76 + { 0x0000u, 0x0040u, 0x0000u, CanonicalizeUnique }, 1.77 + { 0x0041u, 0x005au, 0x0020u, CanonicalizeRangeLo }, 1.78 + { 0x005bu, 0x0060u, 0x0000u, CanonicalizeUnique }, 1.79 + { 0x0061u, 0x007au, 0x0020u, CanonicalizeRangeHi }, 1.80 + { 0x007bu, 0x00b4u, 0x0000u, CanonicalizeUnique }, 1.81 + { 0x00b5u, 0x00b5u, 0x0009u, CanonicalizeSet }, 1.82 + { 0x00b6u, 0x00bfu, 0x0000u, CanonicalizeUnique }, 1.83 + { 0x00c0u, 0x00d6u, 0x0020u, CanonicalizeRangeLo }, 1.84 + { 0x00d7u, 0x00d7u, 0x0000u, CanonicalizeUnique }, 1.85 + { 0x00d8u, 0x00deu, 0x0020u, CanonicalizeRangeLo }, 1.86 + { 0x00dfu, 0x00dfu, 0x0000u, CanonicalizeUnique }, 1.87 + { 0x00e0u, 0x00f6u, 0x0020u, CanonicalizeRangeHi }, 1.88 + { 0x00f7u, 0x00f7u, 0x0000u, CanonicalizeUnique }, 1.89 + { 0x00f8u, 0x00feu, 0x0020u, CanonicalizeRangeHi }, 1.90 + { 0x00ffu, 0x00ffu, 0x0079u, CanonicalizeRangeLo }, 1.91 + { 0x0100u, 0x012fu, 0x0000u, CanonicalizeAlternatingAligned }, 1.92 + { 0x0130u, 0x0131u, 0x0000u, CanonicalizeUnique }, 1.93 + { 0x0132u, 0x0137u, 0x0000u, CanonicalizeAlternatingAligned }, 1.94 + { 0x0138u, 0x0138u, 0x0000u, CanonicalizeUnique }, 1.95 + { 0x0139u, 0x0148u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.96 + { 0x0149u, 0x0149u, 0x0000u, CanonicalizeUnique }, 1.97 + { 0x014au, 0x0177u, 0x0000u, CanonicalizeAlternatingAligned }, 1.98 + { 0x0178u, 0x0178u, 0x0079u, CanonicalizeRangeHi }, 1.99 + { 0x0179u, 0x017eu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.100 + { 0x017fu, 0x017fu, 0x0000u, CanonicalizeUnique }, 1.101 + { 0x0180u, 0x0180u, 0x00c3u, CanonicalizeRangeLo }, 1.102 + { 0x0181u, 0x0181u, 0x00d2u, CanonicalizeRangeLo }, 1.103 + { 0x0182u, 0x0185u, 0x0000u, CanonicalizeAlternatingAligned }, 1.104 + { 0x0186u, 0x0186u, 0x00ceu, CanonicalizeRangeLo }, 1.105 + { 0x0187u, 0x0188u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.106 + { 0x0189u, 0x018au, 0x00cdu, CanonicalizeRangeLo }, 1.107 + { 0x018bu, 0x018cu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.108 + { 0x018du, 0x018du, 0x0000u, CanonicalizeUnique }, 1.109 + { 0x018eu, 0x018eu, 0x004fu, CanonicalizeRangeLo }, 1.110 + { 0x018fu, 0x018fu, 0x00cau, CanonicalizeRangeLo }, 1.111 + { 0x0190u, 0x0190u, 0x00cbu, CanonicalizeRangeLo }, 1.112 + { 0x0191u, 0x0192u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.113 + { 0x0193u, 0x0193u, 0x00cdu, CanonicalizeRangeLo }, 1.114 + { 0x0194u, 0x0194u, 0x00cfu, CanonicalizeRangeLo }, 1.115 + { 0x0195u, 0x0195u, 0x0061u, CanonicalizeRangeLo }, 1.116 + { 0x0196u, 0x0196u, 0x00d3u, CanonicalizeRangeLo }, 1.117 + { 0x0197u, 0x0197u, 0x00d1u, CanonicalizeRangeLo }, 1.118 + { 0x0198u, 0x0199u, 0x0000u, CanonicalizeAlternatingAligned }, 1.119 + { 0x019au, 0x019au, 0x00a3u, CanonicalizeRangeLo }, 1.120 + { 0x019bu, 0x019bu, 0x0000u, CanonicalizeUnique }, 1.121 + { 0x019cu, 0x019cu, 0x00d3u, CanonicalizeRangeLo }, 1.122 + { 0x019du, 0x019du, 0x00d5u, CanonicalizeRangeLo }, 1.123 + { 0x019eu, 0x019eu, 0x0082u, CanonicalizeRangeLo }, 1.124 + { 0x019fu, 0x019fu, 0x00d6u, CanonicalizeRangeLo }, 1.125 + { 0x01a0u, 0x01a5u, 0x0000u, CanonicalizeAlternatingAligned }, 1.126 + { 0x01a6u, 0x01a6u, 0x00dau, CanonicalizeRangeLo }, 1.127 + { 0x01a7u, 0x01a8u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.128 + { 0x01a9u, 0x01a9u, 0x00dau, CanonicalizeRangeLo }, 1.129 + { 0x01aau, 0x01abu, 0x0000u, CanonicalizeUnique }, 1.130 + { 0x01acu, 0x01adu, 0x0000u, CanonicalizeAlternatingAligned }, 1.131 + { 0x01aeu, 0x01aeu, 0x00dau, CanonicalizeRangeLo }, 1.132 + { 0x01afu, 0x01b0u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.133 + { 0x01b1u, 0x01b2u, 0x00d9u, CanonicalizeRangeLo }, 1.134 + { 0x01b3u, 0x01b6u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.135 + { 0x01b7u, 0x01b7u, 0x00dbu, CanonicalizeRangeLo }, 1.136 + { 0x01b8u, 0x01b9u, 0x0000u, CanonicalizeAlternatingAligned }, 1.137 + { 0x01bau, 0x01bbu, 0x0000u, CanonicalizeUnique }, 1.138 + { 0x01bcu, 0x01bdu, 0x0000u, CanonicalizeAlternatingAligned }, 1.139 + { 0x01beu, 0x01beu, 0x0000u, CanonicalizeUnique }, 1.140 + { 0x01bfu, 0x01bfu, 0x0038u, CanonicalizeRangeLo }, 1.141 + { 0x01c0u, 0x01c3u, 0x0000u, CanonicalizeUnique }, 1.142 + { 0x01c4u, 0x01c6u, 0x0000u, CanonicalizeSet }, 1.143 + { 0x01c7u, 0x01c9u, 0x0001u, CanonicalizeSet }, 1.144 + { 0x01cau, 0x01ccu, 0x0002u, CanonicalizeSet }, 1.145 + { 0x01cdu, 0x01dcu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.146 + { 0x01ddu, 0x01ddu, 0x004fu, CanonicalizeRangeHi }, 1.147 + { 0x01deu, 0x01efu, 0x0000u, CanonicalizeAlternatingAligned }, 1.148 + { 0x01f0u, 0x01f0u, 0x0000u, CanonicalizeUnique }, 1.149 + { 0x01f1u, 0x01f3u, 0x0003u, CanonicalizeSet }, 1.150 + { 0x01f4u, 0x01f5u, 0x0000u, CanonicalizeAlternatingAligned }, 1.151 + { 0x01f6u, 0x01f6u, 0x0061u, CanonicalizeRangeHi }, 1.152 + { 0x01f7u, 0x01f7u, 0x0038u, CanonicalizeRangeHi }, 1.153 + { 0x01f8u, 0x021fu, 0x0000u, CanonicalizeAlternatingAligned }, 1.154 + { 0x0220u, 0x0220u, 0x0082u, CanonicalizeRangeHi }, 1.155 + { 0x0221u, 0x0221u, 0x0000u, CanonicalizeUnique }, 1.156 + { 0x0222u, 0x0233u, 0x0000u, CanonicalizeAlternatingAligned }, 1.157 + { 0x0234u, 0x0239u, 0x0000u, CanonicalizeUnique }, 1.158 + { 0x023au, 0x023au, 0x2a2bu, CanonicalizeRangeLo }, 1.159 + { 0x023bu, 0x023cu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.160 + { 0x023du, 0x023du, 0x00a3u, CanonicalizeRangeHi }, 1.161 + { 0x023eu, 0x023eu, 0x2a28u, CanonicalizeRangeLo }, 1.162 + { 0x023fu, 0x0240u, 0x2a3fu, CanonicalizeRangeLo }, 1.163 + { 0x0241u, 0x0242u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.164 + { 0x0243u, 0x0243u, 0x00c3u, CanonicalizeRangeHi }, 1.165 + { 0x0244u, 0x0244u, 0x0045u, CanonicalizeRangeLo }, 1.166 + { 0x0245u, 0x0245u, 0x0047u, CanonicalizeRangeLo }, 1.167 + { 0x0246u, 0x024fu, 0x0000u, CanonicalizeAlternatingAligned }, 1.168 + { 0x0250u, 0x0250u, 0x2a1fu, CanonicalizeRangeLo }, 1.169 + { 0x0251u, 0x0251u, 0x2a1cu, CanonicalizeRangeLo }, 1.170 + { 0x0252u, 0x0252u, 0x2a1eu, CanonicalizeRangeLo }, 1.171 + { 0x0253u, 0x0253u, 0x00d2u, CanonicalizeRangeHi }, 1.172 + { 0x0254u, 0x0254u, 0x00ceu, CanonicalizeRangeHi }, 1.173 + { 0x0255u, 0x0255u, 0x0000u, CanonicalizeUnique }, 1.174 + { 0x0256u, 0x0257u, 0x00cdu, CanonicalizeRangeHi }, 1.175 + { 0x0258u, 0x0258u, 0x0000u, CanonicalizeUnique }, 1.176 + { 0x0259u, 0x0259u, 0x00cau, CanonicalizeRangeHi }, 1.177 + { 0x025au, 0x025au, 0x0000u, CanonicalizeUnique }, 1.178 + { 0x025bu, 0x025bu, 0x00cbu, CanonicalizeRangeHi }, 1.179 + { 0x025cu, 0x025fu, 0x0000u, CanonicalizeUnique }, 1.180 + { 0x0260u, 0x0260u, 0x00cdu, CanonicalizeRangeHi }, 1.181 + { 0x0261u, 0x0262u, 0x0000u, CanonicalizeUnique }, 1.182 + { 0x0263u, 0x0263u, 0x00cfu, CanonicalizeRangeHi }, 1.183 + { 0x0264u, 0x0264u, 0x0000u, CanonicalizeUnique }, 1.184 + { 0x0265u, 0x0265u, 0xa528u, CanonicalizeRangeLo }, 1.185 + { 0x0266u, 0x0267u, 0x0000u, CanonicalizeUnique }, 1.186 + { 0x0268u, 0x0268u, 0x00d1u, CanonicalizeRangeHi }, 1.187 + { 0x0269u, 0x0269u, 0x00d3u, CanonicalizeRangeHi }, 1.188 + { 0x026au, 0x026au, 0x0000u, CanonicalizeUnique }, 1.189 + { 0x026bu, 0x026bu, 0x29f7u, CanonicalizeRangeLo }, 1.190 + { 0x026cu, 0x026eu, 0x0000u, CanonicalizeUnique }, 1.191 + { 0x026fu, 0x026fu, 0x00d3u, CanonicalizeRangeHi }, 1.192 + { 0x0270u, 0x0270u, 0x0000u, CanonicalizeUnique }, 1.193 + { 0x0271u, 0x0271u, 0x29fdu, CanonicalizeRangeLo }, 1.194 + { 0x0272u, 0x0272u, 0x00d5u, CanonicalizeRangeHi }, 1.195 + { 0x0273u, 0x0274u, 0x0000u, CanonicalizeUnique }, 1.196 + { 0x0275u, 0x0275u, 0x00d6u, CanonicalizeRangeHi }, 1.197 + { 0x0276u, 0x027cu, 0x0000u, CanonicalizeUnique }, 1.198 + { 0x027du, 0x027du, 0x29e7u, CanonicalizeRangeLo }, 1.199 + { 0x027eu, 0x027fu, 0x0000u, CanonicalizeUnique }, 1.200 + { 0x0280u, 0x0280u, 0x00dau, CanonicalizeRangeHi }, 1.201 + { 0x0281u, 0x0282u, 0x0000u, CanonicalizeUnique }, 1.202 + { 0x0283u, 0x0283u, 0x00dau, CanonicalizeRangeHi }, 1.203 + { 0x0284u, 0x0287u, 0x0000u, CanonicalizeUnique }, 1.204 + { 0x0288u, 0x0288u, 0x00dau, CanonicalizeRangeHi }, 1.205 + { 0x0289u, 0x0289u, 0x0045u, CanonicalizeRangeHi }, 1.206 + { 0x028au, 0x028bu, 0x00d9u, CanonicalizeRangeHi }, 1.207 + { 0x028cu, 0x028cu, 0x0047u, CanonicalizeRangeHi }, 1.208 + { 0x028du, 0x0291u, 0x0000u, CanonicalizeUnique }, 1.209 + { 0x0292u, 0x0292u, 0x00dbu, CanonicalizeRangeHi }, 1.210 + { 0x0293u, 0x0344u, 0x0000u, CanonicalizeUnique }, 1.211 + { 0x0345u, 0x0345u, 0x0007u, CanonicalizeSet }, 1.212 + { 0x0346u, 0x036fu, 0x0000u, CanonicalizeUnique }, 1.213 + { 0x0370u, 0x0373u, 0x0000u, CanonicalizeAlternatingAligned }, 1.214 + { 0x0374u, 0x0375u, 0x0000u, CanonicalizeUnique }, 1.215 + { 0x0376u, 0x0377u, 0x0000u, CanonicalizeAlternatingAligned }, 1.216 + { 0x0378u, 0x037au, 0x0000u, CanonicalizeUnique }, 1.217 + { 0x037bu, 0x037du, 0x0082u, CanonicalizeRangeLo }, 1.218 + { 0x037eu, 0x0385u, 0x0000u, CanonicalizeUnique }, 1.219 + { 0x0386u, 0x0386u, 0x0026u, CanonicalizeRangeLo }, 1.220 + { 0x0387u, 0x0387u, 0x0000u, CanonicalizeUnique }, 1.221 + { 0x0388u, 0x038au, 0x0025u, CanonicalizeRangeLo }, 1.222 + { 0x038bu, 0x038bu, 0x0000u, CanonicalizeUnique }, 1.223 + { 0x038cu, 0x038cu, 0x0040u, CanonicalizeRangeLo }, 1.224 + { 0x038du, 0x038du, 0x0000u, CanonicalizeUnique }, 1.225 + { 0x038eu, 0x038fu, 0x003fu, CanonicalizeRangeLo }, 1.226 + { 0x0390u, 0x0390u, 0x0000u, CanonicalizeUnique }, 1.227 + { 0x0391u, 0x0391u, 0x0020u, CanonicalizeRangeLo }, 1.228 + { 0x0392u, 0x0392u, 0x0004u, CanonicalizeSet }, 1.229 + { 0x0393u, 0x0394u, 0x0020u, CanonicalizeRangeLo }, 1.230 + { 0x0395u, 0x0395u, 0x0005u, CanonicalizeSet }, 1.231 + { 0x0396u, 0x0397u, 0x0020u, CanonicalizeRangeLo }, 1.232 + { 0x0398u, 0x0398u, 0x0006u, CanonicalizeSet }, 1.233 + { 0x0399u, 0x0399u, 0x0007u, CanonicalizeSet }, 1.234 + { 0x039au, 0x039au, 0x0008u, CanonicalizeSet }, 1.235 + { 0x039bu, 0x039bu, 0x0020u, CanonicalizeRangeLo }, 1.236 + { 0x039cu, 0x039cu, 0x0009u, CanonicalizeSet }, 1.237 + { 0x039du, 0x039fu, 0x0020u, CanonicalizeRangeLo }, 1.238 + { 0x03a0u, 0x03a0u, 0x000au, CanonicalizeSet }, 1.239 + { 0x03a1u, 0x03a1u, 0x000bu, CanonicalizeSet }, 1.240 + { 0x03a2u, 0x03a2u, 0x0000u, CanonicalizeUnique }, 1.241 + { 0x03a3u, 0x03a3u, 0x000cu, CanonicalizeSet }, 1.242 + { 0x03a4u, 0x03a5u, 0x0020u, CanonicalizeRangeLo }, 1.243 + { 0x03a6u, 0x03a6u, 0x000du, CanonicalizeSet }, 1.244 + { 0x03a7u, 0x03abu, 0x0020u, CanonicalizeRangeLo }, 1.245 + { 0x03acu, 0x03acu, 0x0026u, CanonicalizeRangeHi }, 1.246 + { 0x03adu, 0x03afu, 0x0025u, CanonicalizeRangeHi }, 1.247 + { 0x03b0u, 0x03b0u, 0x0000u, CanonicalizeUnique }, 1.248 + { 0x03b1u, 0x03b1u, 0x0020u, CanonicalizeRangeHi }, 1.249 + { 0x03b2u, 0x03b2u, 0x0004u, CanonicalizeSet }, 1.250 + { 0x03b3u, 0x03b4u, 0x0020u, CanonicalizeRangeHi }, 1.251 + { 0x03b5u, 0x03b5u, 0x0005u, CanonicalizeSet }, 1.252 + { 0x03b6u, 0x03b7u, 0x0020u, CanonicalizeRangeHi }, 1.253 + { 0x03b8u, 0x03b8u, 0x0006u, CanonicalizeSet }, 1.254 + { 0x03b9u, 0x03b9u, 0x0007u, CanonicalizeSet }, 1.255 + { 0x03bau, 0x03bau, 0x0008u, CanonicalizeSet }, 1.256 + { 0x03bbu, 0x03bbu, 0x0020u, CanonicalizeRangeHi }, 1.257 + { 0x03bcu, 0x03bcu, 0x0009u, CanonicalizeSet }, 1.258 + { 0x03bdu, 0x03bfu, 0x0020u, CanonicalizeRangeHi }, 1.259 + { 0x03c0u, 0x03c0u, 0x000au, CanonicalizeSet }, 1.260 + { 0x03c1u, 0x03c1u, 0x000bu, CanonicalizeSet }, 1.261 + { 0x03c2u, 0x03c3u, 0x000cu, CanonicalizeSet }, 1.262 + { 0x03c4u, 0x03c5u, 0x0020u, CanonicalizeRangeHi }, 1.263 + { 0x03c6u, 0x03c6u, 0x000du, CanonicalizeSet }, 1.264 + { 0x03c7u, 0x03cbu, 0x0020u, CanonicalizeRangeHi }, 1.265 + { 0x03ccu, 0x03ccu, 0x0040u, CanonicalizeRangeHi }, 1.266 + { 0x03cdu, 0x03ceu, 0x003fu, CanonicalizeRangeHi }, 1.267 + { 0x03cfu, 0x03cfu, 0x0008u, CanonicalizeRangeLo }, 1.268 + { 0x03d0u, 0x03d0u, 0x0004u, CanonicalizeSet }, 1.269 + { 0x03d1u, 0x03d1u, 0x0006u, CanonicalizeSet }, 1.270 + { 0x03d2u, 0x03d4u, 0x0000u, CanonicalizeUnique }, 1.271 + { 0x03d5u, 0x03d5u, 0x000du, CanonicalizeSet }, 1.272 + { 0x03d6u, 0x03d6u, 0x000au, CanonicalizeSet }, 1.273 + { 0x03d7u, 0x03d7u, 0x0008u, CanonicalizeRangeHi }, 1.274 + { 0x03d8u, 0x03efu, 0x0000u, CanonicalizeAlternatingAligned }, 1.275 + { 0x03f0u, 0x03f0u, 0x0008u, CanonicalizeSet }, 1.276 + { 0x03f1u, 0x03f1u, 0x000bu, CanonicalizeSet }, 1.277 + { 0x03f2u, 0x03f2u, 0x0007u, CanonicalizeRangeLo }, 1.278 + { 0x03f3u, 0x03f4u, 0x0000u, CanonicalizeUnique }, 1.279 + { 0x03f5u, 0x03f5u, 0x0005u, CanonicalizeSet }, 1.280 + { 0x03f6u, 0x03f6u, 0x0000u, CanonicalizeUnique }, 1.281 + { 0x03f7u, 0x03f8u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.282 + { 0x03f9u, 0x03f9u, 0x0007u, CanonicalizeRangeHi }, 1.283 + { 0x03fau, 0x03fbu, 0x0000u, CanonicalizeAlternatingAligned }, 1.284 + { 0x03fcu, 0x03fcu, 0x0000u, CanonicalizeUnique }, 1.285 + { 0x03fdu, 0x03ffu, 0x0082u, CanonicalizeRangeHi }, 1.286 + { 0x0400u, 0x040fu, 0x0050u, CanonicalizeRangeLo }, 1.287 + { 0x0410u, 0x042fu, 0x0020u, CanonicalizeRangeLo }, 1.288 + { 0x0430u, 0x044fu, 0x0020u, CanonicalizeRangeHi }, 1.289 + { 0x0450u, 0x045fu, 0x0050u, CanonicalizeRangeHi }, 1.290 + { 0x0460u, 0x0481u, 0x0000u, CanonicalizeAlternatingAligned }, 1.291 + { 0x0482u, 0x0489u, 0x0000u, CanonicalizeUnique }, 1.292 + { 0x048au, 0x04bfu, 0x0000u, CanonicalizeAlternatingAligned }, 1.293 + { 0x04c0u, 0x04c0u, 0x000fu, CanonicalizeRangeLo }, 1.294 + { 0x04c1u, 0x04ceu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.295 + { 0x04cfu, 0x04cfu, 0x000fu, CanonicalizeRangeHi }, 1.296 + { 0x04d0u, 0x0527u, 0x0000u, CanonicalizeAlternatingAligned }, 1.297 + { 0x0528u, 0x0530u, 0x0000u, CanonicalizeUnique }, 1.298 + { 0x0531u, 0x0556u, 0x0030u, CanonicalizeRangeLo }, 1.299 + { 0x0557u, 0x0560u, 0x0000u, CanonicalizeUnique }, 1.300 + { 0x0561u, 0x0586u, 0x0030u, CanonicalizeRangeHi }, 1.301 + { 0x0587u, 0x109fu, 0x0000u, CanonicalizeUnique }, 1.302 + { 0x10a0u, 0x10c5u, 0x1c60u, CanonicalizeRangeLo }, 1.303 + { 0x10c6u, 0x1d78u, 0x0000u, CanonicalizeUnique }, 1.304 + { 0x1d79u, 0x1d79u, 0x8a04u, CanonicalizeRangeLo }, 1.305 + { 0x1d7au, 0x1d7cu, 0x0000u, CanonicalizeUnique }, 1.306 + { 0x1d7du, 0x1d7du, 0x0ee6u, CanonicalizeRangeLo }, 1.307 + { 0x1d7eu, 0x1dffu, 0x0000u, CanonicalizeUnique }, 1.308 + { 0x1e00u, 0x1e5fu, 0x0000u, CanonicalizeAlternatingAligned }, 1.309 + { 0x1e60u, 0x1e61u, 0x000eu, CanonicalizeSet }, 1.310 + { 0x1e62u, 0x1e95u, 0x0000u, CanonicalizeAlternatingAligned }, 1.311 + { 0x1e96u, 0x1e9au, 0x0000u, CanonicalizeUnique }, 1.312 + { 0x1e9bu, 0x1e9bu, 0x000eu, CanonicalizeSet }, 1.313 + { 0x1e9cu, 0x1e9fu, 0x0000u, CanonicalizeUnique }, 1.314 + { 0x1ea0u, 0x1effu, 0x0000u, CanonicalizeAlternatingAligned }, 1.315 + { 0x1f00u, 0x1f07u, 0x0008u, CanonicalizeRangeLo }, 1.316 + { 0x1f08u, 0x1f0fu, 0x0008u, CanonicalizeRangeHi }, 1.317 + { 0x1f10u, 0x1f15u, 0x0008u, CanonicalizeRangeLo }, 1.318 + { 0x1f16u, 0x1f17u, 0x0000u, CanonicalizeUnique }, 1.319 + { 0x1f18u, 0x1f1du, 0x0008u, CanonicalizeRangeHi }, 1.320 + { 0x1f1eu, 0x1f1fu, 0x0000u, CanonicalizeUnique }, 1.321 + { 0x1f20u, 0x1f27u, 0x0008u, CanonicalizeRangeLo }, 1.322 + { 0x1f28u, 0x1f2fu, 0x0008u, CanonicalizeRangeHi }, 1.323 + { 0x1f30u, 0x1f37u, 0x0008u, CanonicalizeRangeLo }, 1.324 + { 0x1f38u, 0x1f3fu, 0x0008u, CanonicalizeRangeHi }, 1.325 + { 0x1f40u, 0x1f45u, 0x0008u, CanonicalizeRangeLo }, 1.326 + { 0x1f46u, 0x1f47u, 0x0000u, CanonicalizeUnique }, 1.327 + { 0x1f48u, 0x1f4du, 0x0008u, CanonicalizeRangeHi }, 1.328 + { 0x1f4eu, 0x1f50u, 0x0000u, CanonicalizeUnique }, 1.329 + { 0x1f51u, 0x1f51u, 0x0008u, CanonicalizeRangeLo }, 1.330 + { 0x1f52u, 0x1f52u, 0x0000u, CanonicalizeUnique }, 1.331 + { 0x1f53u, 0x1f53u, 0x0008u, CanonicalizeRangeLo }, 1.332 + { 0x1f54u, 0x1f54u, 0x0000u, CanonicalizeUnique }, 1.333 + { 0x1f55u, 0x1f55u, 0x0008u, CanonicalizeRangeLo }, 1.334 + { 0x1f56u, 0x1f56u, 0x0000u, CanonicalizeUnique }, 1.335 + { 0x1f57u, 0x1f57u, 0x0008u, CanonicalizeRangeLo }, 1.336 + { 0x1f58u, 0x1f58u, 0x0000u, CanonicalizeUnique }, 1.337 + { 0x1f59u, 0x1f59u, 0x0008u, CanonicalizeRangeHi }, 1.338 + { 0x1f5au, 0x1f5au, 0x0000u, CanonicalizeUnique }, 1.339 + { 0x1f5bu, 0x1f5bu, 0x0008u, CanonicalizeRangeHi }, 1.340 + { 0x1f5cu, 0x1f5cu, 0x0000u, CanonicalizeUnique }, 1.341 + { 0x1f5du, 0x1f5du, 0x0008u, CanonicalizeRangeHi }, 1.342 + { 0x1f5eu, 0x1f5eu, 0x0000u, CanonicalizeUnique }, 1.343 + { 0x1f5fu, 0x1f5fu, 0x0008u, CanonicalizeRangeHi }, 1.344 + { 0x1f60u, 0x1f67u, 0x0008u, CanonicalizeRangeLo }, 1.345 + { 0x1f68u, 0x1f6fu, 0x0008u, CanonicalizeRangeHi }, 1.346 + { 0x1f70u, 0x1f71u, 0x004au, CanonicalizeRangeLo }, 1.347 + { 0x1f72u, 0x1f75u, 0x0056u, CanonicalizeRangeLo }, 1.348 + { 0x1f76u, 0x1f77u, 0x0064u, CanonicalizeRangeLo }, 1.349 + { 0x1f78u, 0x1f79u, 0x0080u, CanonicalizeRangeLo }, 1.350 + { 0x1f7au, 0x1f7bu, 0x0070u, CanonicalizeRangeLo }, 1.351 + { 0x1f7cu, 0x1f7du, 0x007eu, CanonicalizeRangeLo }, 1.352 + { 0x1f7eu, 0x1fafu, 0x0000u, CanonicalizeUnique }, 1.353 + { 0x1fb0u, 0x1fb1u, 0x0008u, CanonicalizeRangeLo }, 1.354 + { 0x1fb2u, 0x1fb7u, 0x0000u, CanonicalizeUnique }, 1.355 + { 0x1fb8u, 0x1fb9u, 0x0008u, CanonicalizeRangeHi }, 1.356 + { 0x1fbau, 0x1fbbu, 0x004au, CanonicalizeRangeHi }, 1.357 + { 0x1fbcu, 0x1fbdu, 0x0000u, CanonicalizeUnique }, 1.358 + { 0x1fbeu, 0x1fbeu, 0x0007u, CanonicalizeSet }, 1.359 + { 0x1fbfu, 0x1fc7u, 0x0000u, CanonicalizeUnique }, 1.360 + { 0x1fc8u, 0x1fcbu, 0x0056u, CanonicalizeRangeHi }, 1.361 + { 0x1fccu, 0x1fcfu, 0x0000u, CanonicalizeUnique }, 1.362 + { 0x1fd0u, 0x1fd1u, 0x0008u, CanonicalizeRangeLo }, 1.363 + { 0x1fd2u, 0x1fd7u, 0x0000u, CanonicalizeUnique }, 1.364 + { 0x1fd8u, 0x1fd9u, 0x0008u, CanonicalizeRangeHi }, 1.365 + { 0x1fdau, 0x1fdbu, 0x0064u, CanonicalizeRangeHi }, 1.366 + { 0x1fdcu, 0x1fdfu, 0x0000u, CanonicalizeUnique }, 1.367 + { 0x1fe0u, 0x1fe1u, 0x0008u, CanonicalizeRangeLo }, 1.368 + { 0x1fe2u, 0x1fe4u, 0x0000u, CanonicalizeUnique }, 1.369 + { 0x1fe5u, 0x1fe5u, 0x0007u, CanonicalizeRangeLo }, 1.370 + { 0x1fe6u, 0x1fe7u, 0x0000u, CanonicalizeUnique }, 1.371 + { 0x1fe8u, 0x1fe9u, 0x0008u, CanonicalizeRangeHi }, 1.372 + { 0x1feau, 0x1febu, 0x0070u, CanonicalizeRangeHi }, 1.373 + { 0x1fecu, 0x1fecu, 0x0007u, CanonicalizeRangeHi }, 1.374 + { 0x1fedu, 0x1ff7u, 0x0000u, CanonicalizeUnique }, 1.375 + { 0x1ff8u, 0x1ff9u, 0x0080u, CanonicalizeRangeHi }, 1.376 + { 0x1ffau, 0x1ffbu, 0x007eu, CanonicalizeRangeHi }, 1.377 + { 0x1ffcu, 0x2131u, 0x0000u, CanonicalizeUnique }, 1.378 + { 0x2132u, 0x2132u, 0x001cu, CanonicalizeRangeLo }, 1.379 + { 0x2133u, 0x214du, 0x0000u, CanonicalizeUnique }, 1.380 + { 0x214eu, 0x214eu, 0x001cu, CanonicalizeRangeHi }, 1.381 + { 0x214fu, 0x215fu, 0x0000u, CanonicalizeUnique }, 1.382 + { 0x2160u, 0x216fu, 0x0010u, CanonicalizeRangeLo }, 1.383 + { 0x2170u, 0x217fu, 0x0010u, CanonicalizeRangeHi }, 1.384 + { 0x2180u, 0x2182u, 0x0000u, CanonicalizeUnique }, 1.385 + { 0x2183u, 0x2184u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.386 + { 0x2185u, 0x24b5u, 0x0000u, CanonicalizeUnique }, 1.387 + { 0x24b6u, 0x24cfu, 0x001au, CanonicalizeRangeLo }, 1.388 + { 0x24d0u, 0x24e9u, 0x001au, CanonicalizeRangeHi }, 1.389 + { 0x24eau, 0x2bffu, 0x0000u, CanonicalizeUnique }, 1.390 + { 0x2c00u, 0x2c2eu, 0x0030u, CanonicalizeRangeLo }, 1.391 + { 0x2c2fu, 0x2c2fu, 0x0000u, CanonicalizeUnique }, 1.392 + { 0x2c30u, 0x2c5eu, 0x0030u, CanonicalizeRangeHi }, 1.393 + { 0x2c5fu, 0x2c5fu, 0x0000u, CanonicalizeUnique }, 1.394 + { 0x2c60u, 0x2c61u, 0x0000u, CanonicalizeAlternatingAligned }, 1.395 + { 0x2c62u, 0x2c62u, 0x29f7u, CanonicalizeRangeHi }, 1.396 + { 0x2c63u, 0x2c63u, 0x0ee6u, CanonicalizeRangeHi }, 1.397 + { 0x2c64u, 0x2c64u, 0x29e7u, CanonicalizeRangeHi }, 1.398 + { 0x2c65u, 0x2c65u, 0x2a2bu, CanonicalizeRangeHi }, 1.399 + { 0x2c66u, 0x2c66u, 0x2a28u, CanonicalizeRangeHi }, 1.400 + { 0x2c67u, 0x2c6cu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.401 + { 0x2c6du, 0x2c6du, 0x2a1cu, CanonicalizeRangeHi }, 1.402 + { 0x2c6eu, 0x2c6eu, 0x29fdu, CanonicalizeRangeHi }, 1.403 + { 0x2c6fu, 0x2c6fu, 0x2a1fu, CanonicalizeRangeHi }, 1.404 + { 0x2c70u, 0x2c70u, 0x2a1eu, CanonicalizeRangeHi }, 1.405 + { 0x2c71u, 0x2c71u, 0x0000u, CanonicalizeUnique }, 1.406 + { 0x2c72u, 0x2c73u, 0x0000u, CanonicalizeAlternatingAligned }, 1.407 + { 0x2c74u, 0x2c74u, 0x0000u, CanonicalizeUnique }, 1.408 + { 0x2c75u, 0x2c76u, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.409 + { 0x2c77u, 0x2c7du, 0x0000u, CanonicalizeUnique }, 1.410 + { 0x2c7eu, 0x2c7fu, 0x2a3fu, CanonicalizeRangeHi }, 1.411 + { 0x2c80u, 0x2ce3u, 0x0000u, CanonicalizeAlternatingAligned }, 1.412 + { 0x2ce4u, 0x2ceau, 0x0000u, CanonicalizeUnique }, 1.413 + { 0x2cebu, 0x2ceeu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.414 + { 0x2cefu, 0x2cffu, 0x0000u, CanonicalizeUnique }, 1.415 + { 0x2d00u, 0x2d25u, 0x1c60u, CanonicalizeRangeHi }, 1.416 + { 0x2d26u, 0xa63fu, 0x0000u, CanonicalizeUnique }, 1.417 + { 0xa640u, 0xa66du, 0x0000u, CanonicalizeAlternatingAligned }, 1.418 + { 0xa66eu, 0xa67fu, 0x0000u, CanonicalizeUnique }, 1.419 + { 0xa680u, 0xa697u, 0x0000u, CanonicalizeAlternatingAligned }, 1.420 + { 0xa698u, 0xa721u, 0x0000u, CanonicalizeUnique }, 1.421 + { 0xa722u, 0xa72fu, 0x0000u, CanonicalizeAlternatingAligned }, 1.422 + { 0xa730u, 0xa731u, 0x0000u, CanonicalizeUnique }, 1.423 + { 0xa732u, 0xa76fu, 0x0000u, CanonicalizeAlternatingAligned }, 1.424 + { 0xa770u, 0xa778u, 0x0000u, CanonicalizeUnique }, 1.425 + { 0xa779u, 0xa77cu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.426 + { 0xa77du, 0xa77du, 0x8a04u, CanonicalizeRangeHi }, 1.427 + { 0xa77eu, 0xa787u, 0x0000u, CanonicalizeAlternatingAligned }, 1.428 + { 0xa788u, 0xa78au, 0x0000u, CanonicalizeUnique }, 1.429 + { 0xa78bu, 0xa78cu, 0x0000u, CanonicalizeAlternatingUnaligned }, 1.430 + { 0xa78du, 0xa78du, 0xa528u, CanonicalizeRangeHi }, 1.431 + { 0xa78eu, 0xa78fu, 0x0000u, CanonicalizeUnique }, 1.432 + { 0xa790u, 0xa791u, 0x0000u, CanonicalizeAlternatingAligned }, 1.433 + { 0xa792u, 0xa79fu, 0x0000u, CanonicalizeUnique }, 1.434 + { 0xa7a0u, 0xa7a9u, 0x0000u, CanonicalizeAlternatingAligned }, 1.435 + { 0xa7aau, 0xff20u, 0x0000u, CanonicalizeUnique }, 1.436 + { 0xff21u, 0xff3au, 0x0020u, CanonicalizeRangeLo }, 1.437 + { 0xff3bu, 0xff40u, 0x0000u, CanonicalizeUnique }, 1.438 + { 0xff41u, 0xff5au, 0x0020u, CanonicalizeRangeHi }, 1.439 + { 0xff5bu, 0xffffu, 0x0000u, CanonicalizeUnique }, 1.440 +}; 1.441 + 1.442 +const size_t LATIN_CANONICALIZATION_RANGES = 20; 1.443 +const LatinCanonicalizationRange latinRangeInfo[LATIN_CANONICALIZATION_RANGES] = { 1.444 + { 0x0000u, 0x0040u, 0x0000u, CanonicalizeLatinSelf }, 1.445 + { 0x0041u, 0x005au, 0x0000u, CanonicalizeLatinMask0x20 }, 1.446 + { 0x005bu, 0x0060u, 0x0000u, CanonicalizeLatinSelf }, 1.447 + { 0x0061u, 0x007au, 0x0000u, CanonicalizeLatinMask0x20 }, 1.448 + { 0x007bu, 0x00bfu, 0x0000u, CanonicalizeLatinSelf }, 1.449 + { 0x00c0u, 0x00d6u, 0x0000u, CanonicalizeLatinMask0x20 }, 1.450 + { 0x00d7u, 0x00d7u, 0x0000u, CanonicalizeLatinSelf }, 1.451 + { 0x00d8u, 0x00deu, 0x0000u, CanonicalizeLatinMask0x20 }, 1.452 + { 0x00dfu, 0x00dfu, 0x0000u, CanonicalizeLatinSelf }, 1.453 + { 0x00e0u, 0x00f6u, 0x0000u, CanonicalizeLatinMask0x20 }, 1.454 + { 0x00f7u, 0x00f7u, 0x0000u, CanonicalizeLatinSelf }, 1.455 + { 0x00f8u, 0x00feu, 0x0000u, CanonicalizeLatinMask0x20 }, 1.456 + { 0x00ffu, 0x00ffu, 0x0000u, CanonicalizeLatinSelf }, 1.457 + { 0x0100u, 0x0177u, 0x0000u, CanonicalizeLatinInvalid }, 1.458 + { 0x0178u, 0x0178u, 0x00ffu, CanonicalizeLatinOther }, 1.459 + { 0x0179u, 0x039bu, 0x0000u, CanonicalizeLatinInvalid }, 1.460 + { 0x039cu, 0x039cu, 0x00b5u, CanonicalizeLatinOther }, 1.461 + { 0x039du, 0x03bbu, 0x0000u, CanonicalizeLatinInvalid }, 1.462 + { 0x03bcu, 0x03bcu, 0x00b5u, CanonicalizeLatinOther }, 1.463 + { 0x03bdu, 0xffffu, 0x0000u, CanonicalizeLatinInvalid }, 1.464 +}; 1.465 + 1.466 +} } // JSC::Yarr 1.467 +