scuffed-code/icu4c/source/i18n/uregexc.cpp
2017-01-20 00:20:31 +00:00

43 lines
1.5 KiB
C++

// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
/*
*******************************************************************************
* Copyright (C) 2003-2006, International Business Machines
* Corporation and others. All Rights Reserved.
*******************************************************************************
* file name: regexc.cpp
* description: The purpose of this function is to separate the codepage
* conversion from the rest of the uregex_ API. This can removes any
* dependency on codepage conversion, which reduces the overhead of
*/
#include "unicode/uregex.h"
#include "unicode/unistr.h"
U_NAMESPACE_USE
//----------------------------------------------------------------------------------------
//
// uregex_openC
//
//----------------------------------------------------------------------------------------
#if !UCONFIG_NO_CONVERSION && !UCONFIG_NO_REGULAR_EXPRESSIONS
U_CAPI URegularExpression * U_EXPORT2
uregex_openC( const char *pattern,
uint32_t flags,
UParseError *pe,
UErrorCode *status) {
if (U_FAILURE(*status)) {
return NULL;
}
if (pattern == NULL) {
*status = U_ILLEGAL_ARGUMENT_ERROR;
return NULL;
}
UnicodeString patString(pattern);
return uregex_open(patString.getBuffer(), patString.length(), flags, pe, status);
}
#endif