]>
Commit | Line | Data |
---|---|---|
46f4442e | 1 | /* |
f3c0d7a5 A |
2 | ************************************************************************* |
3 | * © 2016 and later: Unicode, Inc. and others. | |
4 | * License & terms of use: http://www.unicode.org/copyright.html#License | |
5 | ************************************************************************* | |
6 | ************************************************************************* | |
46f4442e A |
7 | * Copyright (C) 2007, International Business Machines |
8 | * Corporation and others. All Rights Reserved. | |
f3c0d7a5 | 9 | ************************************************************************* |
46f4442e | 10 | * file name: unicont.h |
f3c0d7a5 | 11 | * encoding: UTF-8 |
46f4442e A |
12 | * tab size: 8 (not used) |
13 | * indentation:4 | |
14 | * | |
15 | * created on: 2007jan15 | |
16 | * created by: Markus Scherer | |
17 | * | |
18 | * Idea for new common interface underneath the normal UnicodeSet | |
19 | * and other classes, such as "compiled", fast, read-only (immutable) | |
20 | * versions of UnicodeSet. | |
21 | */ | |
22 | ||
23 | class UnicodeContainable { | |
24 | public: | |
25 | virtual ~UnicodeContainable() {} | |
26 | ||
27 | virtual UBool contains(UChar32 c) const = 0; | |
28 | ||
29 | virtual int32_t span(const UChar *s, int32_t length); | |
30 | ||
31 | virtual int32_t spanNot(const UChar *s, int32_t length); | |
32 | ||
33 | virtual int32_t spanUTF8(const UChar *s, int32_t length); | |
34 | ||
35 | virtual int32_t spanNotUTF8(const UChar *s, int32_t length); | |
36 | ||
37 | virtual UClassID getDynamicClassID(void) const; | |
38 | }; |