1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- // © 2016 and later: Unicode, Inc. and others.
- // License & terms of use: http://www.unicode.org/copyright.html
- /*
- *******************************************************************************
- *
- * Copyright (C) 2004-2007, International Business Machines
- * Corporation and others. All Rights Reserved.
- *
- *******************************************************************************
- * file name: uset_imp.h
- * encoding: UTF-8
- * tab size: 8 (not used)
- * indentation:4
- *
- * created on: 2004sep07
- * created by: Markus W. Scherer
- *
- * Internal USet definitions.
- */
- #ifndef __USET_IMP_H__
- #define __USET_IMP_H__
- #include "unicode/utypes.h"
- #include "unicode/uset.h"
- U_CDECL_BEGIN
- typedef void U_CALLCONV
- USetAdd(USet *set, UChar32 c);
- typedef void U_CALLCONV
- USetAddRange(USet *set, UChar32 start, UChar32 end);
- typedef void U_CALLCONV
- USetAddString(USet *set, const UChar *str, int32_t length);
- typedef void U_CALLCONV
- USetRemove(USet *set, UChar32 c);
- typedef void U_CALLCONV
- USetRemoveRange(USet *set, UChar32 start, UChar32 end);
- /**
- * Interface for adding items to a USet, to keep low-level code from
- * statically depending on the USet implementation.
- * Calls will look like sa->add(sa->set, c);
- */
- struct USetAdder {
- USet *set;
- USetAdd *add;
- USetAddRange *addRange;
- USetAddString *addString;
- USetRemove *remove;
- USetRemoveRange *removeRange;
- };
- typedef struct USetAdder USetAdder;
- U_CDECL_END
- #ifdef __cplusplus
- namespace {
- constexpr int32_t USET_CASE_MASK = USET_CASE_INSENSITIVE | USET_ADD_CASE_MAPPINGS;
- } // namespace
- #endif // __cplusplus
- #endif
|