]> git.saurik.com Git - apple/icu.git/blob - icuSources/test/perf/unisetperf/draft/unicont.h
ICU-66108.tar.gz
[apple/icu.git] / icuSources / test / perf / unisetperf / draft / unicont.h
1 /*
2 *************************************************************************
3 * © 2016 and later: Unicode, Inc. and others.
4 * License & terms of use: http://www.unicode.org/copyright.html#License
5 *************************************************************************
6 *************************************************************************
7 * Copyright (C) 2007, International Business Machines
8 * Corporation and others. All Rights Reserved.
9 *************************************************************************
10 * file name: unicont.h
11 * encoding: UTF-8
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 };