// © 2016 and later: Unicode, Inc. and others. // License & terms of use: http://www.unicode.org/copyright.html /* ******************************************************************************* * Copyright (C) 2013-2014, International Business Machines * Corporation and others. All Rights Reserved. ******************************************************************************* * collationsets.h * * created on: 2013feb09 * created by: Markus W. Scherer */ #ifndef __COLLATIONSETS_H__ #define __COLLATIONSETS_H__ #include "unicode/utypes.h" #if !UCONFIG_NO_COLLATION #include "unicode/uniset.h" #include "collation.h" U_NAMESPACE_BEGIN struct CollationData; /** * Finds the set of characters and strings that sort differently in the tailoring * from the base data. * * Every mapping in the tailoring needs to be compared to the base, * because some mappings are copied for optimization, and * all contractions for a character are copied if any contractions for that character * are added, modified or removed. * * It might be simpler to re-parse the rule string, but: * - That would require duplicating some of the from-rules builder code. * - That would make the runtime code depend on the builder. * - That would only work if we have the rule string, and we allow users to * omit the rule string from data files. */ class TailoredSet : public UMemory { … }; class ContractionsAndExpansions : public UMemory { … }; U_NAMESPACE_END #endif // !UCONFIG_NO_COLLATION #endif // __COLLATIONSETS_H__