diff options
author | orivej <orivej@yandex-team.ru> | 2022-02-10 16:45:01 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:45:01 +0300 |
commit | 2d37894b1b037cf24231090eda8589bbb44fb6fc (patch) | |
tree | be835aa92c6248212e705f25388ebafcf84bc7a1 /contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h | |
parent | 718c552901d703c502ccbefdfc3c9028d608b947 (diff) | |
download | ydb-2d37894b1b037cf24231090eda8589bbb44fb6fc.tar.gz |
Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h')
-rw-r--r-- | contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h | 122 |
1 files changed, 61 insertions, 61 deletions
diff --git a/contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h b/contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h index 3f37ab6805..66e29d2d00 100644 --- a/contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h +++ b/contrib/libs/poco/Foundation/include/Poco/UTF8Encoding.h @@ -1,61 +1,61 @@ -// -// UTF8Encoding.h -// -// Library: Foundation -// Package: Text -// Module: UTF8Encoding -// -// Definition of the UTF8Encoding class. -// -// Copyright (c) 2004-2007, Applied Informatics Software Engineering GmbH. -// and Contributors. -// -// SPDX-License-Identifier: BSL-1.0 -// - - -#ifndef Foundation_UTF8Encoding_INCLUDED -#define Foundation_UTF8Encoding_INCLUDED - - -#include "Poco/Foundation.h" -#include "Poco/TextEncoding.h" - - -namespace Poco { - - -class Foundation_API UTF8Encoding: public TextEncoding - /// UTF-8 text encoding, as defined in RFC 2279. -{ -public: - UTF8Encoding(); - ~UTF8Encoding(); - const char* canonicalName() const; - bool isA(const std::string& encodingName) const; - const CharacterMap& characterMap() const; - int convert(const unsigned char* bytes) const; - int convert(int ch, unsigned char* bytes, int length) const; - int queryConvert(const unsigned char* bytes, int length) const; - int sequenceLength(const unsigned char* bytes, int length) const; - - static bool isLegal(const unsigned char *bytes, int length); - /// Utility routine to tell whether a sequence of bytes is legal UTF-8. - /// This must be called with the length pre-determined by the first byte. - /// The sequence is illegal right away if there aren't enough bytes - /// available. If presented with a length > 4, this function returns false. - /// The Unicode definition of UTF-8 goes up to 4-byte sequences. - /// - /// Adapted from ftp://ftp.unicode.org/Public/PROGRAMS/CVTUTF/ConvertUTF.c - /// Copyright 2001-2004 Unicode, Inc. - -private: - static const char* _names[]; - static const CharacterMap _charMap; -}; - - -} // namespace Poco - - -#endif // Foundation_UTF8Encoding_INCLUDED +// +// UTF8Encoding.h +// +// Library: Foundation +// Package: Text +// Module: UTF8Encoding +// +// Definition of the UTF8Encoding class. +// +// Copyright (c) 2004-2007, Applied Informatics Software Engineering GmbH. +// and Contributors. +// +// SPDX-License-Identifier: BSL-1.0 +// + + +#ifndef Foundation_UTF8Encoding_INCLUDED +#define Foundation_UTF8Encoding_INCLUDED + + +#include "Poco/Foundation.h" +#include "Poco/TextEncoding.h" + + +namespace Poco { + + +class Foundation_API UTF8Encoding: public TextEncoding + /// UTF-8 text encoding, as defined in RFC 2279. +{ +public: + UTF8Encoding(); + ~UTF8Encoding(); + const char* canonicalName() const; + bool isA(const std::string& encodingName) const; + const CharacterMap& characterMap() const; + int convert(const unsigned char* bytes) const; + int convert(int ch, unsigned char* bytes, int length) const; + int queryConvert(const unsigned char* bytes, int length) const; + int sequenceLength(const unsigned char* bytes, int length) const; + + static bool isLegal(const unsigned char *bytes, int length); + /// Utility routine to tell whether a sequence of bytes is legal UTF-8. + /// This must be called with the length pre-determined by the first byte. + /// The sequence is illegal right away if there aren't enough bytes + /// available. If presented with a length > 4, this function returns false. + /// The Unicode definition of UTF-8 goes up to 4-byte sequences. + /// + /// Adapted from ftp://ftp.unicode.org/Public/PROGRAMS/CVTUTF/ConvertUTF.c + /// Copyright 2001-2004 Unicode, Inc. + +private: + static const char* _names[]; + static const CharacterMap _charMap; +}; + + +} // namespace Poco + + +#endif // Foundation_UTF8Encoding_INCLUDED |