1/* 2******************************************************************************* 3* 4* Copyright (C) 2001-2010, International Business Machines 5* Corporation and others. All Rights Reserved. 6* 7******************************************************************************* 8* file name: ucol_tok.cpp 9* encoding: US-ASCII 10* tab size: 8 (not used) 11* indentation:4 12* 13* created 02/22/2001 14* created by: Vladimir Weinstein 15* 16* This module builds a collator based on the rule set. 17* 18*/ 19 20#ifndef UCOL_BLD_H 21#define UCOL_BLD_H 22 23#ifdef UCOL_DEBUG 24#include <stdio.h> 25#include <stdlib.h> 26#endif 27 28#include "unicode/utypes.h" 29 30#if !UCONFIG_NO_COLLATION 31/*#if !UCONFIG_NO_COLLATION_BUILDER*/ 32 33#include "ucol_imp.h" 34#include "ucol_tok.h" 35#include "ucol_wgt.h" 36 37U_CFUNC 38UCATableHeader *ucol_assembleTailoringTable(UColTokenParser *src, UErrorCode *status); 39 40typedef struct { 41 WeightRange ranges[7]; 42 int32_t noOfRanges; 43 uint32_t byteSize; uint32_t start; uint32_t limit; 44 int32_t maxCount; 45 int32_t count; 46 uint32_t current; 47 uint32_t fLow; /*forbidden Low */ 48 uint32_t fHigh; /*forbidden High */ 49} ucolCEGenerator; 50 51U_CFUNC uint32_t U_EXPORT2 ucol_getCEStrengthDifference(uint32_t CE, uint32_t contCE, 52 uint32_t prevCE, uint32_t prevContCE); 53 54U_INTERNAL int32_t U_EXPORT2 ucol_findReorderingEntry(const char* name); 55 56/*#endif*/ /* #if !UCONFIG_NO_COLLATION_BUILDER */ 57#endif /* #if !UCONFIG_NO_COLLATION */ 58 59#endif 60