| Index: source/i18n/utrans.cpp
|
| diff --git a/source/i18n/utrans.cpp b/source/i18n/utrans.cpp
|
| index 16a09bdcb6a9e225b93cf9db6e5da3e8c8e29193..f4f86d521c05f4f6d1d0499b23982bfa19e2cbcb 100644
|
| --- a/source/i18n/utrans.cpp
|
| +++ b/source/i18n/utrans.cpp
|
| @@ -1,6 +1,6 @@
|
| /*
|
| *******************************************************************************
|
| - * Copyright (C) 1997-2009, International Business Machines
|
| + * Copyright (C) 1997-2009,2014 International Business Machines
|
| * Corporation and others. All Rights Reserved.
|
| *******************************************************************************
|
| * Date Name Description
|
| @@ -20,6 +20,7 @@
|
| #include "unicode/uniset.h"
|
| #include "unicode/ustring.h"
|
| #include "unicode/uenum.h"
|
| +#include "unicode/uset.h"
|
| #include "uenumimp.h"
|
| #include "cpputils.h"
|
| #include "rbt.h"
|
| @@ -492,4 +493,39 @@ utrans_transIncrementalUChars(const UTransliterator* trans,
|
| }
|
| }
|
|
|
| +U_CAPI int32_t U_EXPORT2
|
| +utrans_toRules( const UTransliterator* trans,
|
| + UBool escapeUnprintable,
|
| + UChar* result, int32_t resultLength,
|
| + UErrorCode* status) {
|
| + utrans_ENTRY(status) 0;
|
| + if ( (result==NULL)? resultLength!=0: resultLength<0 ) {
|
| + *status = U_ILLEGAL_ARGUMENT_ERROR;
|
| + return 0;
|
| + }
|
| +
|
| + UnicodeString res;
|
| + res.setTo(result, 0, resultLength);
|
| + ((Transliterator*) trans)->toRules(res, escapeUnprintable);
|
| + return res.extract(result, resultLength, *status);
|
| +}
|
| +
|
| +U_CAPI USet* U_EXPORT2
|
| +utrans_getSourceSet(const UTransliterator* trans,
|
| + UBool ignoreFilter,
|
| + USet* fillIn,
|
| + UErrorCode* status) {
|
| + utrans_ENTRY(status) fillIn;
|
| +
|
| + if (fillIn == NULL) {
|
| + fillIn = uset_openEmpty();
|
| + }
|
| + if (ignoreFilter) {
|
| + ((Transliterator*) trans)->handleGetSourceSet(*((UnicodeSet*)fillIn));
|
| + } else {
|
| + ((Transliterator*) trans)->getSourceSet(*((UnicodeSet*)fillIn));
|
| + }
|
| + return fillIn;
|
| +}
|
| +
|
| #endif /* #if !UCONFIG_NO_TRANSLITERATION */
|
|
|