aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/poco/Foundation/include/Poco/StreamConverter.h
diff options
context:
space:
mode:
authororivej <orivej@yandex-team.ru>2022-02-10 16:44:49 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:44:49 +0300
commit718c552901d703c502ccbefdfc3c9028d608b947 (patch)
tree46534a98bbefcd7b1f3faa5b52c138ab27db75b7 /contrib/libs/poco/Foundation/include/Poco/StreamConverter.h
parente9656aae26e0358d5378e5b63dcac5c8dbe0e4d0 (diff)
downloadydb-718c552901d703c502ccbefdfc3c9028d608b947.tar.gz
Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/poco/Foundation/include/Poco/StreamConverter.h')
-rw-r--r--contrib/libs/poco/Foundation/include/Poco/StreamConverter.h256
1 files changed, 128 insertions, 128 deletions
diff --git a/contrib/libs/poco/Foundation/include/Poco/StreamConverter.h b/contrib/libs/poco/Foundation/include/Poco/StreamConverter.h
index c880e2632f..ecb345a271 100644
--- a/contrib/libs/poco/Foundation/include/Poco/StreamConverter.h
+++ b/contrib/libs/poco/Foundation/include/Poco/StreamConverter.h
@@ -1,128 +1,128 @@
-//
-// StreamConverter.h
-//
-// Library: Foundation
-// Package: Text
-// Module: StreamConverter
-//
-// Definition of the StreamConverter class.
-//
-// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// SPDX-License-Identifier: BSL-1.0
-//
-
-
-#ifndef Foundation_StreamConverter_INCLUDED
-#define Foundation_StreamConverter_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/TextEncoding.h"
-#include "Poco/UnbufferedStreamBuf.h"
-#include <istream>
-#include <ostream>
-
-
-namespace Poco {
-
-
-class Foundation_API StreamConverterBuf: public UnbufferedStreamBuf
- /// A StreamConverter converts streams from one encoding (inEncoding)
- /// into another (outEncoding).
- /// If a character cannot be represented in outEncoding, defaultChar
- /// is used instead.
- /// If a byte sequence is not valid in inEncoding, defaultChar is used
- /// instead and the encoding error count is incremented.
-{
-public:
- StreamConverterBuf(std::istream& istr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
- /// Creates the StreamConverterBuf and connects it
- /// to the given input stream.
-
- StreamConverterBuf(std::ostream& ostr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
- /// Creates the StreamConverterBuf and connects it
- /// to the given output stream.
-
- ~StreamConverterBuf();
- /// Destroys the StreamConverterBuf.
-
- int errors() const;
- /// Returns the number of encoding errors encountered.
-
-protected:
- int readFromDevice();
- int writeToDevice(char c);
-
-private:
- std::istream* _pIstr;
- std::ostream* _pOstr;
- const TextEncoding& _inEncoding;
- const TextEncoding& _outEncoding;
- int _defaultChar;
- unsigned char _buffer[TextEncoding::MAX_SEQUENCE_LENGTH];
- int _sequenceLength;
- int _pos;
- int _errors;
-};
-
-
-class Foundation_API StreamConverterIOS: public virtual std::ios
- /// The base class for InputStreamConverter and OutputStreamConverter.
- ///
- /// This class is needed to ensure the correct initialization
- /// order of the stream buffer and base classes.
-{
-public:
- StreamConverterIOS(std::istream& istr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
- StreamConverterIOS(std::ostream& ostr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
- ~StreamConverterIOS();
- StreamConverterBuf* rdbuf();
- int errors() const;
-
-protected:
- StreamConverterBuf _buf;
-};
-
-
-class Foundation_API InputStreamConverter: public StreamConverterIOS, public std::istream
- /// This stream converts all characters read from the
- /// underlying istream from one character encoding into another.
- /// If a character cannot be represented in outEncoding, defaultChar
- /// is used instead.
- /// If a byte sequence read from the underlying stream is not valid in inEncoding,
- /// defaultChar is used instead and the encoding error count is incremented.
-{
-public:
- InputStreamConverter(std::istream& istr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
- /// Creates the InputStreamConverter and connects it
- /// to the given input stream.
-
- ~InputStreamConverter();
- /// Destroys the stream.
-};
-
-
-class Foundation_API OutputStreamConverter: public StreamConverterIOS, public std::ostream
- /// This stream converts all characters written to the
- /// underlying ostream from one character encoding into another.
- /// If a character cannot be represented in outEncoding, defaultChar
- /// is used instead.
- /// If a byte sequence written to the stream is not valid in inEncoding,
- /// defaultChar is used instead and the encoding error count is incremented.
-{
-public:
- OutputStreamConverter(std::ostream& ostr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
- /// Creates the OutputStreamConverter and connects it
- /// to the given input stream.
-
- ~OutputStreamConverter();
- /// Destroys the CountingOutputStream.
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_StreamConverter_INCLUDED
+//
+// StreamConverter.h
+//
+// Library: Foundation
+// Package: Text
+// Module: StreamConverter
+//
+// Definition of the StreamConverter class.
+//
+// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
+// and Contributors.
+//
+// SPDX-License-Identifier: BSL-1.0
+//
+
+
+#ifndef Foundation_StreamConverter_INCLUDED
+#define Foundation_StreamConverter_INCLUDED
+
+
+#include "Poco/Foundation.h"
+#include "Poco/TextEncoding.h"
+#include "Poco/UnbufferedStreamBuf.h"
+#include <istream>
+#include <ostream>
+
+
+namespace Poco {
+
+
+class Foundation_API StreamConverterBuf: public UnbufferedStreamBuf
+ /// A StreamConverter converts streams from one encoding (inEncoding)
+ /// into another (outEncoding).
+ /// If a character cannot be represented in outEncoding, defaultChar
+ /// is used instead.
+ /// If a byte sequence is not valid in inEncoding, defaultChar is used
+ /// instead and the encoding error count is incremented.
+{
+public:
+ StreamConverterBuf(std::istream& istr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
+ /// Creates the StreamConverterBuf and connects it
+ /// to the given input stream.
+
+ StreamConverterBuf(std::ostream& ostr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
+ /// Creates the StreamConverterBuf and connects it
+ /// to the given output stream.
+
+ ~StreamConverterBuf();
+ /// Destroys the StreamConverterBuf.
+
+ int errors() const;
+ /// Returns the number of encoding errors encountered.
+
+protected:
+ int readFromDevice();
+ int writeToDevice(char c);
+
+private:
+ std::istream* _pIstr;
+ std::ostream* _pOstr;
+ const TextEncoding& _inEncoding;
+ const TextEncoding& _outEncoding;
+ int _defaultChar;
+ unsigned char _buffer[TextEncoding::MAX_SEQUENCE_LENGTH];
+ int _sequenceLength;
+ int _pos;
+ int _errors;
+};
+
+
+class Foundation_API StreamConverterIOS: public virtual std::ios
+ /// The base class for InputStreamConverter and OutputStreamConverter.
+ ///
+ /// This class is needed to ensure the correct initialization
+ /// order of the stream buffer and base classes.
+{
+public:
+ StreamConverterIOS(std::istream& istr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
+ StreamConverterIOS(std::ostream& ostr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
+ ~StreamConverterIOS();
+ StreamConverterBuf* rdbuf();
+ int errors() const;
+
+protected:
+ StreamConverterBuf _buf;
+};
+
+
+class Foundation_API InputStreamConverter: public StreamConverterIOS, public std::istream
+ /// This stream converts all characters read from the
+ /// underlying istream from one character encoding into another.
+ /// If a character cannot be represented in outEncoding, defaultChar
+ /// is used instead.
+ /// If a byte sequence read from the underlying stream is not valid in inEncoding,
+ /// defaultChar is used instead and the encoding error count is incremented.
+{
+public:
+ InputStreamConverter(std::istream& istr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
+ /// Creates the InputStreamConverter and connects it
+ /// to the given input stream.
+
+ ~InputStreamConverter();
+ /// Destroys the stream.
+};
+
+
+class Foundation_API OutputStreamConverter: public StreamConverterIOS, public std::ostream
+ /// This stream converts all characters written to the
+ /// underlying ostream from one character encoding into another.
+ /// If a character cannot be represented in outEncoding, defaultChar
+ /// is used instead.
+ /// If a byte sequence written to the stream is not valid in inEncoding,
+ /// defaultChar is used instead and the encoding error count is incremented.
+{
+public:
+ OutputStreamConverter(std::ostream& ostr, const TextEncoding& inEncoding, const TextEncoding& outEncoding, int defaultChar = '?');
+ /// Creates the OutputStreamConverter and connects it
+ /// to the given input stream.
+
+ ~OutputStreamConverter();
+ /// Destroys the CountingOutputStream.
+};
+
+
+} // namespace Poco
+
+
+#endif // Foundation_StreamConverter_INCLUDED