2001-06-20 22:24:42 +00:00
|
|
|
/*
|
|
|
|
*******************************************************************************
|
|
|
|
*
|
2002-03-07 19:49:37 +00:00
|
|
|
* Copyright (C) 1999-2002, International Business Machines
|
2001-06-20 22:24:42 +00:00
|
|
|
* Corporation and others. All Rights Reserved.
|
|
|
|
*
|
|
|
|
*******************************************************************************
|
|
|
|
* file name: genprops.h
|
|
|
|
* encoding: US-ASCII
|
|
|
|
* tab size: 8 (not used)
|
|
|
|
* indentation:4
|
|
|
|
*
|
|
|
|
* created on: 1999dec13
|
|
|
|
* created by: Markus W. Scherer
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __GENPROPS_H__
|
|
|
|
#define __GENPROPS_H__
|
|
|
|
|
|
|
|
#include "unicode/utypes.h"
|
2002-03-09 06:00:42 +00:00
|
|
|
#include "uset.h"
|
2001-06-20 22:24:42 +00:00
|
|
|
|
|
|
|
/* file definitions */
|
|
|
|
#define DATA_NAME "unorm"
|
|
|
|
#define DATA_TYPE "dat"
|
|
|
|
|
|
|
|
/*
|
|
|
|
* data structure that holds the normalization properties for one or more
|
|
|
|
* code point(s) at build time
|
|
|
|
*/
|
|
|
|
typedef struct Norm {
|
|
|
|
uint8_t udataCC, lenNFD, lenNFKD;
|
|
|
|
uint8_t qcFlags, combiningFlags;
|
|
|
|
uint16_t canonBothCCs, compatBothCCs, combiningIndex, specialTag;
|
|
|
|
uint32_t *nfd, *nfkd;
|
2001-12-19 20:14:25 +00:00
|
|
|
uint32_t value32; /* temporary variable for generating runtime norm32 and fcd values */
|
2002-03-07 19:49:37 +00:00
|
|
|
int32_t fncIndex;
|
2002-03-09 06:00:42 +00:00
|
|
|
USet *canonStart;
|
|
|
|
UBool unsafeStart;
|
2001-06-20 22:24:42 +00:00
|
|
|
} Norm;
|
|
|
|
|
|
|
|
/* global flags */
|
|
|
|
extern UBool beVerbose, haveCopyright;
|
|
|
|
|
|
|
|
/* prototypes */
|
|
|
|
extern void
|
|
|
|
setUnicodeVersion(const char *v);
|
|
|
|
|
|
|
|
extern void
|
|
|
|
init(void);
|
|
|
|
|
|
|
|
extern void
|
|
|
|
storeNorm(uint32_t code, Norm *norm);
|
|
|
|
|
|
|
|
extern void
|
|
|
|
setQCFlags(uint32_t code, uint8_t qcFlags);
|
|
|
|
|
|
|
|
extern void
|
|
|
|
setCompositionExclusion(uint32_t code);
|
|
|
|
|
2002-03-07 19:49:37 +00:00
|
|
|
U_CFUNC void
|
|
|
|
setFNC(uint32_t c, UChar *s);
|
|
|
|
|
2001-06-20 22:24:42 +00:00
|
|
|
extern void
|
|
|
|
processData(void);
|
|
|
|
|
|
|
|
extern void
|
|
|
|
generateData(const char *dataDir);
|
|
|
|
|
2001-07-03 16:45:54 +00:00
|
|
|
extern void
|
|
|
|
cleanUpData(void);
|
|
|
|
|
2001-06-20 22:24:42 +00:00
|
|
|
#endif
|
|
|
|
|