LCOV - code coverage report
Current view: top level - intl/icu/source/common - locbased.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 0 23 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 4 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             : * Copyright (c) 2004-2014, International Business Machines
       6             : * Corporation and others.  All Rights Reserved.
       7             : **********************************************************************
       8             : * Author: Alan Liu
       9             : * Created: January 16 2004
      10             : * Since: ICU 2.8
      11             : **********************************************************************
      12             : */
      13             : #include "locbased.h"
      14             : #include "cstring.h"
      15             : 
      16             : U_NAMESPACE_BEGIN
      17             : 
      18           0 : Locale LocaleBased::getLocale(ULocDataLocaleType type, UErrorCode& status) const {
      19           0 :     const char* id = getLocaleID(type, status);
      20           0 :     return Locale((id != 0) ? id : "");
      21             : }
      22             : 
      23           0 : const char* LocaleBased::getLocaleID(ULocDataLocaleType type, UErrorCode& status) const {
      24           0 :     if (U_FAILURE(status)) {
      25           0 :         return NULL;
      26             :     }
      27             : 
      28           0 :     switch(type) {
      29             :     case ULOC_VALID_LOCALE:
      30           0 :         return valid;
      31             :     case ULOC_ACTUAL_LOCALE:
      32           0 :         return actual;
      33             :     default:
      34           0 :         status = U_ILLEGAL_ARGUMENT_ERROR;
      35           0 :         return NULL;
      36             :     }
      37             : }
      38             : 
      39           0 : void LocaleBased::setLocaleIDs(const char* validID, const char* actualID) {
      40           0 :     if (validID != 0) {
      41           0 :       uprv_strncpy(valid, validID, ULOC_FULLNAME_CAPACITY);
      42           0 :       valid[ULOC_FULLNAME_CAPACITY-1] = 0; // always terminate
      43             :     }
      44           0 :     if (actualID != 0) {
      45           0 :       uprv_strncpy(actual, actualID, ULOC_FULLNAME_CAPACITY);
      46           0 :       actual[ULOC_FULLNAME_CAPACITY-1] = 0; // always terminate
      47             :     }
      48           0 : }
      49             : 
      50           0 : void LocaleBased::setLocaleIDs(const Locale& validID, const Locale& actualID) {
      51           0 :   uprv_strcpy(valid, validID.getName());
      52           0 :   uprv_strcpy(actual, actualID.getName());
      53           0 : }
      54             : 
      55             : U_NAMESPACE_END

Generated by: LCOV version 1.13