]> git.saurik.com Git - apple/icu.git/blame_incremental - icuSources/common/uset_imp.h
ICU-461.12.tar.gz
[apple/icu.git] / icuSources / common / uset_imp.h
... / ...
CommitLineData
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
39typedef void U_CALLCONV
40USetRemoveRange(USet *set, UChar32 start, UChar32 end);
41
42/**
43 * Interface for adding items to a USet, to keep low-level code from
44 * statically depending on the USet implementation.
45 * Calls will look like sa->add(sa->set, c);
46 */
47struct USetAdder {
48 USet *set;
49 USetAdd *add;
50 USetAddRange *addRange;
51 USetAddString *addString;
52 USetRemove *remove;
53 USetRemoveRange *removeRange;
54};
55typedef struct USetAdder USetAdder;
56
57U_CDECL_END
58
59#endif
60