chromium/third_party/icu/source/common/characterproperties.cpp

// © 2018 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html

// characterproperties.cpp
// created: 2018sep03 Markus W. Scherer

#include "unicode/utypes.h"
#include "unicode/localpointer.h"
#include "unicode/uchar.h"
#include "unicode/ucpmap.h"
#include "unicode/ucptrie.h"
#include "unicode/umutablecptrie.h"
#include "unicode/uniset.h"
#include "unicode/uscript.h"
#include "unicode/uset.h"
#include "cmemory.h"
#include "emojiprops.h"
#include "mutex.h"
#include "normalizer2impl.h"
#include "uassert.h"
#include "ubidi_props.h"
#include "ucase.h"
#include "ucln_cmn.h"
#include "umutex.h"
#include "uprops.h"

LocalPointer;
#if !UCONFIG_NO_NORMALIZATION
Normalizer2Factory;
Normalizer2Impl;
#endif
UInitOnce;
UnicodeSet;

namespace {

UBool U_CALLCONV characterproperties_cleanup();

constexpr int32_t NUM_INCLUSIONS =;

struct Inclusion {};
Inclusion gInclusions[NUM_INCLUSIONS]; // cached getInclusions()

UnicodeSet *sets[UCHAR_BINARY_LIMIT] =;

UCPMap *maps[UCHAR_INT_LIMIT - UCHAR_INT_START] =;

icu::UMutex cpMutex;

//----------------------------------------------------------------
// Inclusions list
//----------------------------------------------------------------

// USetAdder implementation
// Does not use uset.h to reduce code dependencies
void U_CALLCONV
_set_add(USet *set, UChar32 c) {}

void U_CALLCONV
_set_addRange(USet *set, UChar32 start, UChar32 end) {}

void U_CALLCONV
_set_addString(USet *set, const char16_t *str, int32_t length) {}

UBool U_CALLCONV characterproperties_cleanup() {}

void U_CALLCONV initInclusion(UPropertySource src, UErrorCode &errorCode) {}

const UnicodeSet *getInclusionsForSource(UPropertySource src, UErrorCode &errorCode) {}

void U_CALLCONV initIntPropInclusion(UProperty prop, UErrorCode &errorCode) {}

}  // namespace

U_NAMESPACE_BEGIN

const UnicodeSet *CharacterProperties::getInclusionsForProperty(
        UProperty prop, UErrorCode &errorCode) {}

U_NAMESPACE_END

namespace {

UnicodeSet *makeSet(UProperty property, UErrorCode &errorCode) {}

UCPMap *makeMap(UProperty property, UErrorCode &errorCode) {}

}  // namespace

U_NAMESPACE_BEGIN

const UnicodeSet *CharacterProperties::getBinaryPropertySet(UProperty property, UErrorCode &errorCode) {}

U_NAMESPACE_END

U_NAMESPACE_USE

U_CAPI const USet * U_EXPORT2
u_getBinaryPropertySet(UProperty property, UErrorCode *pErrorCode) {}

U_CAPI const UCPMap * U_EXPORT2
u_getIntPropertyMap(UProperty property, UErrorCode *pErrorCode) {}