164339d36f8bd4db5025fe2988eda22b491a9219cFredrik Roubert// Copyright (C) 2016 and later: Unicode, Inc. and others.
264339d36f8bd4db5025fe2988eda22b491a9219cFredrik Roubert// License & terms of use: http://www.unicode.org/copyright.html
3b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru/*
4b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*******************************************************************************
5b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*
683a171d1a62abf406f7f44ae671823d5ec20db7dCraig Cornelius*   Copyright (C) 2009-2011, International Business Machines
7b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   Corporation and others.  All Rights Reserved.
8b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*
9b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*******************************************************************************
10b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   file name:  errorcode.cpp
11b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   encoding:   US-ASCII
12b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   tab size:   8 (not used)
13b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   indentation:4
14b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*
15b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   created on: 2009mar10
16b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*   created by: Markus W. Scherer
17b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru*/
18b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru
19b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru#include "unicode/utypes.h"
20b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru#include "unicode/errorcode.h"
21b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru
22b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste QueruU_NAMESPACE_BEGIN
23b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru
2483a171d1a62abf406f7f44ae671823d5ec20db7dCraig CorneliusErrorCode::~ErrorCode() {}
2583a171d1a62abf406f7f44ae671823d5ec20db7dCraig Cornelius
26b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste QueruUErrorCode ErrorCode::reset() {
27b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru    UErrorCode code = errorCode;
28b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru    errorCode = U_ZERO_ERROR;
29b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru    return code;
30b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru}
31b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru
3250294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehovoid ErrorCode::assertSuccess() const {
33b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru    if(isFailure()) {
34b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru        handleFailure();
35b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru    }
36b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru}
37b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru
3850294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoconst char* ErrorCode::errorName() const {
3950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho  return u_errorName(errorCode);
4050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho}
4150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho
42b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste QueruU_NAMESPACE_END
43