1f2dcc4fb2
X-SVN-Rev: 25540
60 lines
2.1 KiB
C
60 lines
2.1 KiB
C
/*
|
|
**********************************************************************
|
|
* Copyright (c) 2002-2009, International Business Machines
|
|
* Corporation and others. All Rights Reserved.
|
|
**********************************************************************
|
|
*/
|
|
|
|
#ifndef _UCURR_IMP_H_
|
|
#define _UCURR_IMP_H_
|
|
|
|
#include "unicode/utypes.h"
|
|
#include "unicode/unistr.h"
|
|
#include "unicode/parsepos.h"
|
|
|
|
/**
|
|
* Internal method. Given a currency ISO code and a locale, return
|
|
* the "static" currency name. This is usually the same as the
|
|
* UCURR_SYMBOL_NAME, but if the latter is a choice format, then the
|
|
* format is applied to the number 2.0 (to yield the more common
|
|
* plural) to return a static name.
|
|
*
|
|
* This is used for backward compatibility with old currency logic in
|
|
* DecimalFormat and DecimalFormatSymbols.
|
|
*/
|
|
U_CFUNC void
|
|
uprv_getStaticCurrencyName(const UChar* iso, const char* loc,
|
|
U_NAMESPACE_QUALIFIER UnicodeString& result, UErrorCode& ec);
|
|
|
|
/**
|
|
* Attempt to parse the given string as a currency, either as a
|
|
* display name in the given locale, or as a 3-letter ISO 4217
|
|
* code. If multiple display names match, then the longest one is
|
|
* selected. If both a display name and a 3-letter ISO code
|
|
* match, then the display name is preferred, unless it's length
|
|
* is less than 3.
|
|
*
|
|
* @param locale the locale of the display names to match
|
|
* @param text the text to parse
|
|
* @param pos input-output position; on input, the position within
|
|
* text to match; must have 0 <= pos.getIndex() < text.length();
|
|
* on output, the position after the last matched character. If
|
|
* the parse fails, the position in unchanged upon output.
|
|
* @param type currency type to parse against, LONG_NAME only or not
|
|
* @return the ISO 4217 code, as a string, of the best match, or
|
|
* null if there is no match
|
|
*
|
|
* @internal
|
|
*/
|
|
U_CFUNC void
|
|
uprv_parseCurrency(const char* locale,
|
|
const U_NAMESPACE_QUALIFIER UnicodeString& text,
|
|
U_NAMESPACE_QUALIFIER ParsePosition& pos,
|
|
int8_t type,
|
|
UChar* result,
|
|
UErrorCode& ec);
|
|
|
|
#endif /* #ifndef _UCURR_IMP_H_ */
|
|
|
|
//eof
|