#include "unicode/utypes.h"
#if !UCONFIG_NO_COLLATION
#include "unicode/normalizer2.h"
#include "unicode/parseerr.h"
#include "unicode/uchar.h"
#include "unicode/ucol.h"
#include "unicode/uloc.h"
#include "unicode/unistr.h"
#include "unicode/utf16.h"
#include "bytesinkutil.h"
#include "charstr.h"
#include "cmemory.h"
#include "collation.h"
#include "collationdata.h"
#include "collationruleparser.h"
#include "collationsettings.h"
#include "collationtailoring.h"
#include "cstring.h"
#include "patternprops.h"
#include "uassert.h"
#include "ulocimp.h"
#include "uvectr32.h"
U_NAMESPACE_BEGIN
namespace {
static const char16_t BEFORE[] = …;
const int32_t BEFORE_LENGTH = …;
}
CollationRuleParser::Sink::~Sink() { … }
void
CollationRuleParser::Sink::suppressContractions(const UnicodeSet &, const char *&, UErrorCode &) { … }
void
CollationRuleParser::Sink::optimize(const UnicodeSet &, const char *&, UErrorCode &) { … }
CollationRuleParser::Importer::~Importer() { … }
CollationRuleParser::CollationRuleParser(const CollationData *base, UErrorCode &errorCode)
: … { … }
CollationRuleParser::~CollationRuleParser() { … }
void
CollationRuleParser::parse(const UnicodeString &ruleString,
CollationSettings &outSettings,
UParseError *outParseError,
UErrorCode &errorCode) { … }
void
CollationRuleParser::parse(const UnicodeString &ruleString, UErrorCode &errorCode) { … }
void
CollationRuleParser::parseRuleChain(UErrorCode &errorCode) { … }
int32_t
CollationRuleParser::parseResetAndPosition(UErrorCode &errorCode) { … }
int32_t
CollationRuleParser::parseRelationOperator(UErrorCode &errorCode) { … }
void
CollationRuleParser::parseRelationStrings(int32_t strength, int32_t i, UErrorCode &errorCode) { … }
void
CollationRuleParser::parseStarredCharacters(int32_t strength, int32_t i, UErrorCode &errorCode) { … }
int32_t
CollationRuleParser::parseTailoringString(int32_t i, UnicodeString &raw, UErrorCode &errorCode) { … }
int32_t
CollationRuleParser::parseString(int32_t i, UnicodeString &raw, UErrorCode &errorCode) { … }
namespace {
static const char *const positions[] = …;
}
int32_t
CollationRuleParser::parseSpecialPosition(int32_t i, UnicodeString &str, UErrorCode &errorCode) { … }
void
CollationRuleParser::parseSetting(UErrorCode &errorCode) { … }
void
CollationRuleParser::parseReordering(const UnicodeString &raw, UErrorCode &errorCode) { … }
static const char *const gSpecialReorderCodes[] = …;
int32_t
CollationRuleParser::getReorderCode(const char *word) { … }
UColAttributeValue
CollationRuleParser::getOnOffValue(const UnicodeString &s) { … }
int32_t
CollationRuleParser::parseUnicodeSet(int32_t i, UnicodeSet &set, UErrorCode &errorCode) { … }
int32_t
CollationRuleParser::readWords(int32_t i, UnicodeString &raw) const { … }
int32_t
CollationRuleParser::skipComment(int32_t i) const { … }
void
CollationRuleParser::setParseError(const char *reason, UErrorCode &errorCode) { … }
void
CollationRuleParser::setErrorContext() { … }
UBool
CollationRuleParser::isSyntaxChar(UChar32 c) { … }
int32_t
CollationRuleParser::skipWhiteSpace(int32_t i) const { … }
U_NAMESPACE_END
#endif