Index: public/common/unicode/errorcode.h |
diff --git a/public/common/unicode/errorcode.h b/public/common/unicode/errorcode.h |
deleted file mode 100644 |
index 0d9d2bdc16095e0a5fcd635a144e1448b2ec680b..0000000000000000000000000000000000000000 |
--- a/public/common/unicode/errorcode.h |
+++ /dev/null |
@@ -1,137 +0,0 @@ |
-/* |
-******************************************************************************* |
-* |
-* Copyright (C) 2009-2010, International Business Machines |
-* Corporation and others. All Rights Reserved. |
-* |
-******************************************************************************* |
-* file name: errorcode.h |
-* encoding: US-ASCII |
-* tab size: 8 (not used) |
-* indentation:4 |
-* |
-* created on: 2009mar10 |
-* created by: Markus W. Scherer |
-*/ |
- |
-#ifndef __ERRORCODE_H__ |
-#define __ERRORCODE_H__ |
- |
-/** |
- * \file |
- * \brief C++ API: ErrorCode class intended to make it easier to use |
- * ICU C and C++ APIs from C++ user code. |
- */ |
- |
-#include "unicode/utypes.h" |
-#include "unicode/uobject.h" |
- |
-U_NAMESPACE_BEGIN |
- |
-/** |
- * Wrapper class for UErrorCode, with conversion operators for direct use |
- * in ICU C and C++ APIs. |
- * Intended to be used as a base class, where a subclass overrides |
- * the handleFailure() function so that it throws an exception, |
- * does an assert(), logs an error, etc. |
- * This is not an abstract base class. This class can be used and instantiated |
- * by itself, although it will be more useful when subclassed. |
- * |
- * Features: |
- * - The constructor initializes the internal UErrorCode to U_ZERO_ERROR, |
- * removing one common source of errors. |
- * - Same use in C APIs taking a UErrorCode * (pointer) |
- * and C++ taking UErrorCode & (reference) via conversion operators. |
- * - Possible automatic checking for success when it goes out of scope. |
- * |
- * Note: For automatic checking for success in the destructor, a subclass |
- * must implement such logic in its own destructor because the base class |
- * destructor cannot call a subclass function (like handleFailure()). |
- * The ErrorCode base class destructor does nothing. |
- * |
- * Note also: While it is possible for a destructor to throw an exception, |
- * it is generally unsafe to do so. This means that in a subclass the destructor |
- * and the handleFailure() function may need to take different actions. |
- * |
- * Sample code: |
- * \code |
- * class IcuErrorCode: public icu::ErrorCode { |
- * public: |
- * virtual ~IcuErrorCode() { |
- * // Safe because our handleFailure() does not throw exceptions. |
- * if(isFailure()) { handleFailure(); } |
- * } |
- * protected: |
- * virtual void handleFailure() const { |
- * log_failure(u_errorName(errorCode)); |
- * exit(errorCode); |
- * } |
- * }; |
- * IcuErrorCode error_code; |
- * UConverter *cnv = ucnv_open("Shift-JIS", error_code); |
- * length = ucnv_fromUChars(dest, capacity, src, length, error_code); |
- * ucnv_close(cnv); |
- * // IcuErrorCode destructor checks for success. |
- * \endcode |
- * |
- * @stable ICU 4.2 |
- */ |
-class U_COMMON_API ErrorCode: public UMemory { |
-public: |
- /** |
- * Default constructor. Initializes its UErrorCode to U_ZERO_ERROR. |
- * @stable ICU 4.2 |
- */ |
- ErrorCode() : errorCode(U_ZERO_ERROR) {} |
- /** Destructor, does nothing. See class documentation for details. @stable ICU 4.2 */ |
- virtual ~ErrorCode() {} |
- /** Conversion operator, returns a reference. @stable ICU 4.2 */ |
- operator UErrorCode & () { return errorCode; } |
- /** Conversion operator, returns a pointer. @stable ICU 4.2 */ |
- operator UErrorCode * () { return &errorCode; } |
- /** Tests for U_SUCCESS(). @stable ICU 4.2 */ |
- UBool isSuccess() const { return U_SUCCESS(errorCode); } |
- /** Tests for U_FAILURE(). @stable ICU 4.2 */ |
- UBool isFailure() const { return U_FAILURE(errorCode); } |
- /** Returns the UErrorCode value. @stable ICU 4.2 */ |
- UErrorCode get() const { return errorCode; } |
- /** Sets the UErrorCode value. @stable ICU 4.2 */ |
- void set(UErrorCode value) { errorCode=value; } |
- /** Returns the UErrorCode value and resets it to U_ZERO_ERROR. @stable ICU 4.2 */ |
- UErrorCode reset(); |
- /** |
- * Asserts isSuccess(). |
- * In other words, this method checks for a failure code, |
- * and the base class handles it like this: |
- * \code |
- * if(isFailure()) { handleFailure(); } |
- * \endcode |
- * @stable ICU 4.4 |
- */ |
- void assertSuccess() const; |
- /** |
- * Return a string for the UErrorCode value. |
- * The string will be the same as the name of the error code constant |
- * in the UErrorCode enum. |
- * @stable ICU 4.4 |
- */ |
- const char* errorName() const; |
- |
-protected: |
- /** |
- * Internal UErrorCode, accessible to subclasses. |
- * @stable ICU 4.2 |
- */ |
- UErrorCode errorCode; |
- /** |
- * Called by assertSuccess() if isFailure() is true. |
- * A subclass should override this function to deal with a failure code: |
- * Throw an exception, log an error, terminate the program, or similar. |
- * @stable ICU 4.2 |
- */ |
- virtual void handleFailure() const {} |
-}; |
- |
-U_NAMESPACE_END |
- |
-#endif // __ERRORCODE_H__ |