kernel/eka/euser/unicode/foldtable.inl
author John Imhofe
Mon, 19 Oct 2009 15:55:17 +0100
changeset 0 a41df078684a
permissions -rw-r--r--
Convert Kernelhwsrv package from SFL to EPL kernel\eka\compsupp is subject to the ARM EABI LICENSE userlibandfileserver\fatfilenameconversionplugins\unicodeTables is subject to the Unicode license kernel\eka\kernel\zlib is subject to the zlib license

// Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of the License "Eclipse Public License v1.0"
// which accompanies this distribution, and is available
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
//
// Initial Contributors:
// Nokia Corporation - initial contribution.
//
// Contributors:
//
// Description:
// e32\euser\unicode\foldtable.inl
// Use the bits from 12 up from your character to index CaseFoldTable0.
// Use the result of this plus bits 8-11 to index CaseFoldTable1.
// Use the result of this plus bits 4-7 to index CaseFoldTable2.
// Use the result of this plus bits 0-3 to index CaseFoldTable3.
// Add the result of this to your character to fold it.
// 
//

static const short CaseFoldTable3[] =
	{
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 32, 32, 32, 32, 32, 32, 32,
	32, 32, 32, 32, 32, 32, 32, 0,
	0, 0, 0, 0, -128, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 775, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 32,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 32, 0, 0, 0, 0, 0, 0,
	0, 32, 0, 0, 0, 0, 0, 32,
	0, 1, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 1, 0, 0, 0, 0, 0, 0,
	0, 0, 0, -200, 1, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 1, 0, 0, 0, 0, 0, 0,
	0, 0, 1, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 0, -268, 0, 210, 1, 0, 1,
	0, 206, 1, 0, 205, 205, 1, 0,
	0, 79, 202, 203, 1, 0, 205, 207,
	0, 211, 209, 1, 0, 0, 0, 211,
	213, 0, 214, 0, 0, 1, 0, 1,
	0, 218, 1, 0, 218, 0, 0, 1,
	0, 218, 0, 217, 217, 1, 0, 1,
	0, 219, 1, 0, 0, 0, 1, 0,
	0, 0, 0, 2, 1, 0, 2, 1,
	0, 2, 1, 0, 0, 0, 0, 2,
	1, 0, 0, 0, -97, -56, 0, 0,
	0, 0, 0, 0, 0, 0, 1, 0,
	1, 0, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 116, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 32,
	32, 0, 32, 32, 32, 32, 32, 32,
	32, 0, 0, 0, 0, 0, 0, -30,
	-25, 0, 0, 0, -15, -22, 0, 0,
	0, 1, 0, 1, 0, 1, 0, 1,
	0, 1, 0, 1, 0, 1, 0, 1,
	0, -54, -48, -47, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 80, 0, 80, 80, 80, 0, 80,
	80, 80, 80, 0, 0, 0, 80, 32,
	32, 32, 32, 32, 32, 32, 32, 32,
	0, 32, 32, 32, 32, 32, 32, 32,
	32, 32, 32, 32, 32, 32, 32, 32,
	32, 1, 0, 1, 0, 1, 0, 0,
	0, 1, 0, 1, 0, 1, 0, 1,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 1, 0, 1, 0, 0,
	0, 1, 0, 0, 0, 1, 0, 0,
	0, 1, 0, 0, 0, 0, 1, 0,
	0, 0, 1, 0, 0, 0, 0, 0,
	0, 0, 1, 0, 0, 0, 0, 0,
	0, 0, 48, 48, 48, 48, 48, 48,
	48, 48, 48, 48, 48, 48, 48, 48,
	48, 48, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	-7173, 0, 0, 0, 0, 0, 0, -7517,
	0, 0, 0, -8383, 0, 0, 0, 0,
	0, 16, 16, 16, 16, 16, 16, 16,
	16, 16, 16, 16, 16, 16, 16, 16,
	16, 0, 0, 0, 0, 0, 0, 26,
	26, 26, 26, 26, 26, 26, 26, 26,
	26, 26, 26, 26, 26, 26, 26
	};

static const unsigned short CaseFoldTable2[] =
	{
	0, 0, 0, 0, 15, 20, 0, 0,
	0, 0, 36, 47, 57, 73, 0, 0,
	89, 99, 114, 128, 136, 99, 139, 155,
	171, 187, 202, 215, 0, 134, 230, 0,
	93, 244, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 255,
	0, 0, 0, 0, 15, 271, 0, 136,
	287, 297, 313, 327, 343, 353, 0, 0,
	0, 297, 369, 383, 297, 297, 297, 398,
	410, 418, 0, 0, 0, 433, 434, 443,
	0, 0, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0,
	450, 0, 0, 0, 0, 465, 0, 0,
	0, 481, 0, 0, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 497, 503, 0,
	0, 0, 15, 20, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 0, 0
	};

static const unsigned char CaseFoldTable1[] =
	{
	0, 15, 31, 43, 59, 74, 80, 80,
	80, 80, 80, 80, 80, 80, 80, 80,
	80, 80, 80, 80, 80, 85, 80, 99,
	80, 80, 106, 80, 80, 80, 80, 80,
	80, 80, 80, 80, 80, 80, 80, 80,
	80, 80, 80, 120
	};

static const unsigned char CaseFoldTable0[] =
	{
	0, 6, 22, 27, 27, 27, 27, 27,
	27, 27, 27, 27, 27, 27, 27, 28
	};