LCOV - code coverage report
Current view: top level - intl/icu/source/common - utypes.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 0 18 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 1 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : // © 2016 and later: Unicode, Inc. and others.
       2             : // License & terms of use: http://www.unicode.org/copyright.html
       3             : /*
       4             : ******************************************************************************
       5             : *
       6             : *   Copyright (C) 1997-2015, International Business Machines
       7             : *   Corporation and others.  All Rights Reserved.
       8             : *
       9             : ******************************************************************************
      10             : *
      11             : *  FILE NAME : utypes.c (previously putil.c)
      12             : *
      13             : *   Date        Name        Description
      14             : *   10/07/2004  grhoten     split from putil.c
      15             : ******************************************************************************
      16             : */
      17             : 
      18             : #include "unicode/utypes.h"
      19             : 
      20             : /* u_errorName() ------------------------------------------------------------ */
      21             : 
      22             : static const char * const
      23             : _uErrorInfoName[U_ERROR_WARNING_LIMIT-U_ERROR_WARNING_START]={
      24             :     "U_USING_FALLBACK_WARNING",
      25             :     "U_USING_DEFAULT_WARNING",
      26             :     "U_SAFECLONE_ALLOCATED_WARNING",
      27             :     "U_STATE_OLD_WARNING",
      28             :     "U_STRING_NOT_TERMINATED_WARNING",
      29             :     "U_SORT_KEY_TOO_SHORT_WARNING",
      30             :     "U_AMBIGUOUS_ALIAS_WARNING",
      31             :     "U_DIFFERENT_UCA_VERSION",
      32             :     "U_PLUGIN_CHANGED_LEVEL_WARNING",
      33             : };
      34             : 
      35             : static const char * const
      36             : _uTransErrorName[U_PARSE_ERROR_LIMIT - U_PARSE_ERROR_START]={
      37             :     "U_BAD_VARIABLE_DEFINITION",
      38             :     "U_MALFORMED_RULE",
      39             :     "U_MALFORMED_SET",
      40             :     "U_MALFORMED_SYMBOL_REFERENCE",
      41             :     "U_MALFORMED_UNICODE_ESCAPE",
      42             :     "U_MALFORMED_VARIABLE_DEFINITION",
      43             :     "U_MALFORMED_VARIABLE_REFERENCE",
      44             :     "U_MISMATCHED_SEGMENT_DELIMITERS",
      45             :     "U_MISPLACED_ANCHOR_START",
      46             :     "U_MISPLACED_CURSOR_OFFSET",
      47             :     "U_MISPLACED_QUANTIFIER",
      48             :     "U_MISSING_OPERATOR",
      49             :     "U_MISSING_SEGMENT_CLOSE",
      50             :     "U_MULTIPLE_ANTE_CONTEXTS",
      51             :     "U_MULTIPLE_CURSORS",
      52             :     "U_MULTIPLE_POST_CONTEXTS",
      53             :     "U_TRAILING_BACKSLASH",
      54             :     "U_UNDEFINED_SEGMENT_REFERENCE",
      55             :     "U_UNDEFINED_VARIABLE",
      56             :     "U_UNQUOTED_SPECIAL",
      57             :     "U_UNTERMINATED_QUOTE",
      58             :     "U_RULE_MASK_ERROR",
      59             :     "U_MISPLACED_COMPOUND_FILTER",
      60             :     "U_MULTIPLE_COMPOUND_FILTERS",
      61             :     "U_INVALID_RBT_SYNTAX",
      62             :     "U_INVALID_PROPERTY_PATTERN",
      63             :     "U_MALFORMED_PRAGMA",
      64             :     "U_UNCLOSED_SEGMENT",
      65             :     "U_ILLEGAL_CHAR_IN_SEGMENT",
      66             :     "U_VARIABLE_RANGE_EXHAUSTED",
      67             :     "U_VARIABLE_RANGE_OVERLAP",
      68             :     "U_ILLEGAL_CHARACTER",
      69             :     "U_INTERNAL_TRANSLITERATOR_ERROR",
      70             :     "U_INVALID_ID",
      71             :     "U_INVALID_FUNCTION"
      72             : };
      73             : 
      74             : static const char * const
      75             : _uErrorName[U_STANDARD_ERROR_LIMIT]={
      76             :     "U_ZERO_ERROR",
      77             : 
      78             :     "U_ILLEGAL_ARGUMENT_ERROR",
      79             :     "U_MISSING_RESOURCE_ERROR",
      80             :     "U_INVALID_FORMAT_ERROR",
      81             :     "U_FILE_ACCESS_ERROR",
      82             :     "U_INTERNAL_PROGRAM_ERROR",
      83             :     "U_MESSAGE_PARSE_ERROR",
      84             :     "U_MEMORY_ALLOCATION_ERROR",
      85             :     "U_INDEX_OUTOFBOUNDS_ERROR",
      86             :     "U_PARSE_ERROR",
      87             :     "U_INVALID_CHAR_FOUND",
      88             :     "U_TRUNCATED_CHAR_FOUND",
      89             :     "U_ILLEGAL_CHAR_FOUND",
      90             :     "U_INVALID_TABLE_FORMAT",
      91             :     "U_INVALID_TABLE_FILE",
      92             :     "U_BUFFER_OVERFLOW_ERROR",
      93             :     "U_UNSUPPORTED_ERROR",
      94             :     "U_RESOURCE_TYPE_MISMATCH",
      95             :     "U_ILLEGAL_ESCAPE_SEQUENCE",
      96             :     "U_UNSUPPORTED_ESCAPE_SEQUENCE",
      97             :     "U_NO_SPACE_AVAILABLE",
      98             :     "U_CE_NOT_FOUND_ERROR",
      99             :     "U_PRIMARY_TOO_LONG_ERROR",
     100             :     "U_STATE_TOO_OLD_ERROR",
     101             :     "U_TOO_MANY_ALIASES_ERROR",
     102             :     "U_ENUM_OUT_OF_SYNC_ERROR",
     103             :     "U_INVARIANT_CONVERSION_ERROR",
     104             :     "U_INVALID_STATE_ERROR",
     105             :     "U_COLLATOR_VERSION_MISMATCH",
     106             :     "U_USELESS_COLLATOR_ERROR",
     107             :     "U_NO_WRITE_PERMISSION"
     108             : };
     109             : static const char * const
     110             : _uFmtErrorName[U_FMT_PARSE_ERROR_LIMIT - U_FMT_PARSE_ERROR_START] = {
     111             :     "U_UNEXPECTED_TOKEN",
     112             :     "U_MULTIPLE_DECIMAL_SEPARATORS",
     113             :     "U_MULTIPLE_EXPONENTIAL_SYMBOLS",
     114             :     "U_MALFORMED_EXPONENTIAL_PATTERN",
     115             :     "U_MULTIPLE_PERCENT_SYMBOLS",
     116             :     "U_MULTIPLE_PERMILL_SYMBOLS",
     117             :     "U_MULTIPLE_PAD_SPECIFIERS",
     118             :     "U_PATTERN_SYNTAX_ERROR",
     119             :     "U_ILLEGAL_PAD_POSITION",
     120             :     "U_UNMATCHED_BRACES",
     121             :     "U_UNSUPPORTED_PROPERTY",
     122             :     "U_UNSUPPORTED_ATTRIBUTE",
     123             :     "U_ARGUMENT_TYPE_MISMATCH",
     124             :     "U_DUPLICATE_KEYWORD",
     125             :     "U_UNDEFINED_KEYWORD",
     126             :     "U_DEFAULT_KEYWORD_MISSING",
     127             :     "U_DECIMAL_NUMBER_SYNTAX_ERROR",
     128             :     "U_FORMAT_INEXACT_ERROR"
     129             : };
     130             : 
     131             : static const char * const
     132             : _uBrkErrorName[U_BRK_ERROR_LIMIT - U_BRK_ERROR_START] = {
     133             :     "U_BRK_INTERNAL_ERROR",
     134             :     "U_BRK_HEX_DIGITS_EXPECTED",
     135             :     "U_BRK_SEMICOLON_EXPECTED",
     136             :     "U_BRK_RULE_SYNTAX",
     137             :     "U_BRK_UNCLOSED_SET",
     138             :     "U_BRK_ASSIGN_ERROR",
     139             :     "U_BRK_VARIABLE_REDFINITION",
     140             :     "U_BRK_MISMATCHED_PAREN",
     141             :     "U_BRK_NEW_LINE_IN_QUOTED_STRING",
     142             :     "U_BRK_UNDEFINED_VARIABLE",
     143             :     "U_BRK_INIT_ERROR",
     144             :     "U_BRK_RULE_EMPTY_SET",
     145             :     "U_BRK_UNRECOGNIZED_OPTION",
     146             :     "U_BRK_MALFORMED_RULE_TAG"
     147             : };
     148             : 
     149             : static const char * const
     150             : _uRegexErrorName[U_REGEX_ERROR_LIMIT - U_REGEX_ERROR_START] = {
     151             :     "U_REGEX_INTERNAL_ERROR",
     152             :     "U_REGEX_RULE_SYNTAX",
     153             :     "U_REGEX_INVALID_STATE",
     154             :     "U_REGEX_BAD_ESCAPE_SEQUENCE",
     155             :     "U_REGEX_PROPERTY_SYNTAX",
     156             :     "U_REGEX_UNIMPLEMENTED",
     157             :     "U_REGEX_MISMATCHED_PAREN",
     158             :     "U_REGEX_NUMBER_TOO_BIG",
     159             :     "U_REGEX_BAD_INTERVAL",
     160             :     "U_REGEX_MAX_LT_MIN",
     161             :     "U_REGEX_INVALID_BACK_REF",
     162             :     "U_REGEX_INVALID_FLAG",
     163             :     "U_REGEX_LOOK_BEHIND_LIMIT",
     164             :     "U_REGEX_SET_CONTAINS_STRING",
     165             :     "U_REGEX_OCTAL_TOO_BIG",
     166             :     "U_REGEX_MISSING_CLOSE_BRACKET",
     167             :     "U_REGEX_INVALID_RANGE",
     168             :     "U_REGEX_STACK_OVERFLOW",
     169             :     "U_REGEX_TIME_OUT",
     170             :     "U_REGEX_STOPPED_BY_CALLER",
     171             :     "U_REGEX_PATTERN_TOO_BIG",
     172             :     "U_REGEX_INVALID_CAPTURE_GROUP_NAME"
     173             : };
     174             : 
     175             : static const char * const
     176             : _uIDNAErrorName[U_IDNA_ERROR_LIMIT - U_IDNA_ERROR_START] = {
     177             :      "U_STRINGPREP_PROHIBITED_ERROR",
     178             :      "U_STRINGPREP_UNASSIGNED_ERROR",
     179             :      "U_STRINGPREP_CHECK_BIDI_ERROR",
     180             :      "U_IDNA_STD3_ASCII_RULES_ERROR",
     181             :      "U_IDNA_ACE_PREFIX_ERROR",
     182             :      "U_IDNA_VERIFICATION_ERROR",
     183             :      "U_IDNA_LABEL_TOO_LONG_ERROR",
     184             :      "U_IDNA_ZERO_LENGTH_LABEL_ERROR",
     185             :      "U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR"
     186             : };
     187             : 
     188             : static const char * const
     189             : _uPluginErrorName[U_PLUGIN_ERROR_LIMIT - U_PLUGIN_ERROR_START] = {
     190             :      "U_PLUGIN_TOO_HIGH",
     191             :      "U_PLUGIN_DIDNT_SET_LEVEL",
     192             : };
     193             : 
     194             : U_CAPI const char * U_EXPORT2
     195           0 : u_errorName(UErrorCode code) {
     196           0 :     if(U_ZERO_ERROR <= code && code < U_STANDARD_ERROR_LIMIT) {
     197           0 :         return _uErrorName[code];
     198           0 :     } else if(U_ERROR_WARNING_START <= code && code < U_ERROR_WARNING_LIMIT) {
     199           0 :         return _uErrorInfoName[code - U_ERROR_WARNING_START];
     200           0 :     } else if(U_PARSE_ERROR_START <= code && code < U_PARSE_ERROR_LIMIT){
     201           0 :         return _uTransErrorName[code - U_PARSE_ERROR_START];
     202           0 :     } else if(U_FMT_PARSE_ERROR_START <= code && code < U_FMT_PARSE_ERROR_LIMIT){
     203           0 :         return _uFmtErrorName[code - U_FMT_PARSE_ERROR_START];
     204           0 :     } else if (U_BRK_ERROR_START <= code  && code < U_BRK_ERROR_LIMIT){
     205           0 :         return _uBrkErrorName[code - U_BRK_ERROR_START];
     206           0 :     } else if (U_REGEX_ERROR_START <= code && code < U_REGEX_ERROR_LIMIT) {
     207           0 :         return _uRegexErrorName[code - U_REGEX_ERROR_START];
     208           0 :     } else if(U_IDNA_ERROR_START <= code && code < U_IDNA_ERROR_LIMIT) {
     209           0 :         return _uIDNAErrorName[code - U_IDNA_ERROR_START];
     210           0 :     } else if(U_PLUGIN_ERROR_START <= code && code < U_PLUGIN_ERROR_LIMIT) {
     211           0 :         return _uPluginErrorName[code - U_PLUGIN_ERROR_START];
     212             :     } else {
     213           0 :         return "[BOGUS UErrorCode]";
     214             :     }
     215             : }
     216             : 
     217             : /*
     218             :  * Hey, Emacs, please set the following:
     219             :  *
     220             :  * Local Variables:
     221             :  * indent-tabs-mode: nil
     222             :  * End:
     223             :  *
     224             :  */

Generated by: LCOV version 1.13