diff options
Diffstat (limited to 'deps/icu-small/source/common/cstr.cpp')
-rw-r--r-- | deps/icu-small/source/common/cstr.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/deps/icu-small/source/common/cstr.cpp b/deps/icu-small/source/common/cstr.cpp new file mode 100644 index 0000000000..c30719361e --- /dev/null +++ b/deps/icu-small/source/common/cstr.cpp @@ -0,0 +1,34 @@ +/* +******************************************************************************* +* Copyright (C) 2015-2016, International Business Machines +* Corporation and others. All Rights Reserved. +******************************************************************************* +* file name: charstr.cpp +*/ +#include "unicode/utypes.h" +#include "unicode/unistr.h" + +#include "charstr.h" +#include "cstr.h" + +U_NAMESPACE_BEGIN + +CStr::CStr(const UnicodeString &in) { + UErrorCode status = U_ZERO_ERROR; + int32_t length = in.extract(0, in.length(), NULL, (uint32_t)0); + int32_t resultCapacity = 0; + char *buf = s.getAppendBuffer(length, length, resultCapacity, status); + if (U_SUCCESS(status)) { + in.extract(0, in.length(), buf, resultCapacity); + s.append(buf, length, status); + } +} + +CStr::~CStr() { +} + +const char * CStr::operator ()() const { + return s.data(); +} + +U_NAMESPACE_END |