uset_imp.h revision 51cfa1a9a96cad34675a6415fe86dfdf3f525bb6
1/* 2******************************************************************************* 3* 4* Copyright (C) 2004-2007, International Business Machines 5* Corporation and others. All Rights Reserved. 6* 7******************************************************************************* 8* file name: uset_imp.h 9* encoding: US-ASCII 10* tab size: 8 (not used) 11* indentation:4 12* 13* created on: 2004sep07 14* created by: Markus W. Scherer 15* 16* Internal USet definitions. 17*/ 18 19#ifndef __USET_IMP_H__ 20#define __USET_IMP_H__ 21 22#include "unicode/utypes.h" 23#include "unicode/uset.h" 24 25U_CDECL_BEGIN 26 27typedef void U_CALLCONV 28USetAdd(USet *set, UChar32 c); 29 30typedef void U_CALLCONV 31USetAddRange(USet *set, UChar32 start, UChar32 end); 32 33typedef void U_CALLCONV 34USetAddString(USet *set, const UChar *str, int32_t length); 35 36typedef void U_CALLCONV 37USetRemove(USet *set, UChar32 c); 38 39/** 40 * Interface for adding items to a USet, to keep low-level code from 41 * statically depending on the USet implementation. 42 * Calls will look like sa->add(sa->set, c); 43 */ 44struct USetAdder { 45 USet *set; 46 USetAdd *add; 47 USetAddRange *addRange; 48 USetAddString *addString; 49 USetRemove *remove; 50}; 51typedef struct USetAdder USetAdder; 52 53U_CDECL_END 54 55#endif 56 57