tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

collationroot.h (1461B)


      1 // © 2016 and later: Unicode, Inc. and others.
      2 // License & terms of use: http://www.unicode.org/copyright.html
      3 /*
      4 *******************************************************************************
      5 * Copyright (C) 2012-2014, International Business Machines
      6 * Corporation and others.  All Rights Reserved.
      7 *******************************************************************************
      8 * collationroot.h
      9 *
     10 * created on: 2012dec17
     11 * created by: Markus W. Scherer
     12 */
     13 
     14 #ifndef __COLLATIONROOT_H__
     15 #define __COLLATIONROOT_H__
     16 
     17 #include "unicode/utypes.h"
     18 #include "unicode/udata.h"
     19 
     20 #if !UCONFIG_NO_COLLATION
     21 
     22 U_NAMESPACE_BEGIN
     23 
     24 struct CollationCacheEntry;
     25 struct CollationData;
     26 struct CollationSettings;
     27 struct CollationTailoring;
     28 
     29 /**
     30 * Collation root provider.
     31 */
     32 class U_I18N_API CollationRoot {  // purely static
     33 public:
     34    static const CollationCacheEntry *getRootCacheEntry(UErrorCode &errorCode);
     35    static const CollationTailoring *getRoot(UErrorCode &errorCode);
     36    static const CollationData *getData(UErrorCode &errorCode);
     37    static const CollationSettings *getSettings(UErrorCode &errorCode);
     38    static void U_EXPORT2 forceLoadFromFile(const char* ucadataPath, UErrorCode &errorCode);
     39 
     40 private:
     41    static void U_CALLCONV load(const char* ucadataPath, UErrorCode &errorCode);
     42    static UDataMemory* loadFromFile(const char* ucadataPath, UErrorCode &errorCode);
     43 };
     44 
     45 U_NAMESPACE_END
     46 
     47 #endif  // !UCONFIG_NO_COLLATION
     48 #endif  // __COLLATIONROOT_H__