| Open CASCADE Technology
    7.8.0.dev
    | 
Template class for Unicode strings support. More...
#include <NCollection_UtfIterator.hxx>
| Public Member Functions | |
| NCollection_UtfIterator (const Type *theString) | |
| Constructor.  More... | |
| void | Init (const Type *theString) | 
| Initialize iterator within specified NULL-terminated string.  More... | |
| NCollection_UtfIterator & | operator++ () | 
| Pre-increment operator. Reads the next unicode symbol. Notice - no protection against overrun!  More... | |
| NCollection_UtfIterator | operator++ (int) | 
| Post-increment operator. Notice - no protection against overrun!  More... | |
| bool | operator== (const NCollection_UtfIterator &theRight) const | 
| Equality operator.  More... | |
| bool | IsValid () const | 
| Return true if Unicode symbol is within valid range.  More... | |
| Standard_Utf32Char | operator* () const | 
| Dereference operator.  More... | |
| const Type * | BufferHere () const | 
| Buffer-fetching getter.  More... | |
| Type * | ChangeBufferHere () | 
| Buffer-fetching getter. Dangerous! Iterator should be reinitialized on buffer change.  More... | |
| const Type * | BufferNext () const | 
| Buffer-fetching getter.  More... | |
| Standard_Integer | Index () const | 
| Standard_Integer | AdvanceBytesUtf8 () const | 
| Standard_Integer | AdvanceBytesUtf16 () const | 
| Standard_Integer | AdvanceCodeUnitsUtf16 () const | 
| Standard_Integer | AdvanceBytesUtf32 () const | 
| Standard_Utf8Char * | GetUtf8 (Standard_Utf8Char *theBuffer) const | 
| Fill the UTF-8 buffer within current Unicode symbol. Use method AdvanceUtf8() to allocate buffer with enough size.  More... | |
| Standard_Utf8UChar * | GetUtf8 (Standard_Utf8UChar *theBuffer) const | 
| Standard_Utf16Char * | GetUtf16 (Standard_Utf16Char *theBuffer) const | 
| Fill the UTF-16 buffer within current Unicode symbol. Use method AdvanceUtf16() to allocate buffer with enough size.  More... | |
| Standard_Utf32Char * | GetUtf32 (Standard_Utf32Char *theBuffer) const | 
| Fill the UTF-32 buffer within current Unicode symbol. Use method AdvanceUtf32() to allocate buffer with enough size.  More... | |
| template<typename TypeWrite > | |
| Standard_Integer | AdvanceBytesUtf () const | 
| template<typename TypeWrite > | |
| TypeWrite * | GetUtf (TypeWrite *theBuffer) const | 
| Fill the UTF-** buffer within current Unicode symbol. Use method AdvanceUtf**() to allocate buffer with enough size.  More... | |
Template class for Unicode strings support.
It defines an iterator and provide correct way to read multi-byte text (UTF-8 and UTF-16) and convert it from one to another. The current value of iterator is returned as UTF-32 Unicode symbol.
Here and below term "Unicode symbol" is used as synonym of "Unicode code point".
| 
 | inline | 
Constructor.
| theString | buffer to iterate | 
| 
 | inline | 
| Standard_Integer NCollection_UtfIterator< Type >::AdvanceBytesUtf16 | ( | ) | const | 
| 
 | inline | 
| Standard_Integer NCollection_UtfIterator< Type >::AdvanceBytesUtf8 | ( | ) | const | 
| Standard_Integer NCollection_UtfIterator< Type >::AdvanceCodeUnitsUtf16 | ( | ) | const | 
| 
 | inline | 
Buffer-fetching getter.
| 
 | inline | 
Buffer-fetching getter.
| 
 | inline | 
Buffer-fetching getter. Dangerous! Iterator should be reinitialized on buffer change.
| 
 | inline | 
Fill the UTF-** buffer within current Unicode symbol. Use method AdvanceUtf**() to allocate buffer with enough size.
| theBuffer | buffer to fill | 
| Standard_Utf16Char* NCollection_UtfIterator< Type >::GetUtf16 | ( | Standard_Utf16Char * | theBuffer | ) | const | 
Fill the UTF-16 buffer within current Unicode symbol. Use method AdvanceUtf16() to allocate buffer with enough size.
| theBuffer | buffer to fill | 
| Standard_Utf32Char* NCollection_UtfIterator< Type >::GetUtf32 | ( | Standard_Utf32Char * | theBuffer | ) | const | 
Fill the UTF-32 buffer within current Unicode symbol. Use method AdvanceUtf32() to allocate buffer with enough size.
| theBuffer | buffer to fill | 
| Standard_Utf8Char* NCollection_UtfIterator< Type >::GetUtf8 | ( | Standard_Utf8Char * | theBuffer | ) | const | 
Fill the UTF-8 buffer within current Unicode symbol. Use method AdvanceUtf8() to allocate buffer with enough size.
| theBuffer | buffer to fill | 
| Standard_Utf8UChar* NCollection_UtfIterator< Type >::GetUtf8 | ( | Standard_Utf8UChar * | theBuffer | ) | const | 
| 
 | inline | 
| 
 | inline | 
Initialize iterator within specified NULL-terminated string.
| 
 | inline | 
Return true if Unicode symbol is within valid range.
| 
 | inline | 
Dereference operator.
| 
 | inline | 
Pre-increment operator. Reads the next unicode symbol. Notice - no protection against overrun!
| 
 | inline | 
Post-increment operator. Notice - no protection against overrun!
| 
 | inline | 
Equality operator.
 1.8.13
 1.8.13