Mercurial > repos > rliterman > csp2
comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/unicode/nounit.h @ 69:33d812a61356
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 17:55:14 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
67:0e9998148a16 | 69:33d812a61356 |
---|---|
1 // © 2017 and later: Unicode, Inc. and others. | |
2 // License & terms of use: http://www.unicode.org/copyright.html | |
3 /* | |
4 ******************************************************************************* | |
5 * Copyright (C) 2009-2017, International Business Machines Corporation, * | |
6 * Google, and others. All Rights Reserved. * | |
7 ******************************************************************************* | |
8 */ | |
9 | |
10 #ifndef __NOUNIT_H__ | |
11 #define __NOUNIT_H__ | |
12 | |
13 #include "unicode/utypes.h" | |
14 | |
15 #if U_SHOW_CPLUSPLUS_API | |
16 | |
17 #if !UCONFIG_NO_FORMATTING | |
18 | |
19 #include "unicode/measunit.h" | |
20 | |
21 #ifndef U_HIDE_DRAFT_API | |
22 | |
23 /** | |
24 * \file | |
25 * \brief C++ API: units for percent and permille | |
26 */ | |
27 | |
28 U_NAMESPACE_BEGIN | |
29 | |
30 /** | |
31 * Dimensionless unit for percent and permille. | |
32 * @see NumberFormatter | |
33 * @draft ICU 60 | |
34 */ | |
35 class U_I18N_API NoUnit: public MeasureUnit { | |
36 public: | |
37 /** | |
38 * Returns an instance for the base unit (dimensionless and no scaling). | |
39 * | |
40 * @return a NoUnit instance | |
41 * @draft ICU 60 | |
42 */ | |
43 static NoUnit U_EXPORT2 base(); | |
44 | |
45 /** | |
46 * Returns an instance for percent, or 1/100 of a base unit. | |
47 * | |
48 * @return a NoUnit instance | |
49 * @draft ICU 60 | |
50 */ | |
51 static NoUnit U_EXPORT2 percent(); | |
52 | |
53 /** | |
54 * Returns an instance for permille, or 1/1000 of a base unit. | |
55 * | |
56 * @return a NoUnit instance | |
57 * @draft ICU 60 | |
58 */ | |
59 static NoUnit U_EXPORT2 permille(); | |
60 | |
61 /** | |
62 * Copy operator. | |
63 * @draft ICU 60 | |
64 */ | |
65 NoUnit(const NoUnit& other); | |
66 | |
67 /** | |
68 * Destructor. | |
69 * @draft ICU 60 | |
70 */ | |
71 virtual ~NoUnit(); | |
72 | |
73 /** | |
74 * Return a polymorphic clone of this object. The result will | |
75 * have the same class as returned by getDynamicClassID(). | |
76 * @draft ICU 60 | |
77 */ | |
78 virtual NoUnit* clone() const; | |
79 | |
80 /** | |
81 * Returns a unique class ID for this object POLYMORPHICALLY. | |
82 * This method implements a simple form of RTTI used by ICU. | |
83 * @return The class ID for this object. All objects of a given | |
84 * class have the same class ID. Objects of other classes have | |
85 * different class IDs. | |
86 * @draft ICU 60 | |
87 */ | |
88 virtual UClassID getDynamicClassID() const; | |
89 | |
90 /** | |
91 * Returns the class ID for this class. This is used to compare to | |
92 * the return value of getDynamicClassID(). | |
93 * @return The class ID for all objects of this class. | |
94 * @draft ICU 60 | |
95 */ | |
96 static UClassID U_EXPORT2 getStaticClassID(); | |
97 | |
98 private: | |
99 /** | |
100 * Constructor | |
101 * @internal (private) | |
102 */ | |
103 NoUnit(const char* subtype); | |
104 | |
105 }; | |
106 | |
107 U_NAMESPACE_END | |
108 | |
109 #endif /* U_HIDE_DRAFT_API */ | |
110 #endif /* #if !UCONFIG_NO_FORMATTING */ | |
111 | |
112 #endif /* U_SHOW_CPLUSPLUS_API */ | |
113 | |
114 #endif // __NOUNIT_H__ | |
115 //eof | |
116 // |