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