| Index: icu51/source/common/uinvchar.h
|
| ===================================================================
|
| --- icu51/source/common/uinvchar.h (revision 0)
|
| +++ icu51/source/common/uinvchar.h (revision 0)
|
| @@ -0,0 +1,125 @@
|
| +/*
|
| +*******************************************************************************
|
| +*
|
| +* Copyright (C) 1999-2010, International Business Machines
|
| +* Corporation and others. All Rights Reserved.
|
| +*
|
| +*******************************************************************************
|
| +* file name: uinvchar.h
|
| +* encoding: US-ASCII
|
| +* tab size: 8 (not used)
|
| +* indentation:2
|
| +*
|
| +* created on: 2004sep14
|
| +* created by: Markus W. Scherer
|
| +*
|
| +* Definitions for handling invariant characters, moved here from putil.c
|
| +* for better modularization.
|
| +*/
|
| +
|
| +#ifndef __UINVCHAR_H__
|
| +#define __UINVCHAR_H__
|
| +
|
| +#include "unicode/utypes.h"
|
| +
|
| +/**
|
| + * Check if a char string only contains invariant characters.
|
| + * See utypes.h for details.
|
| + *
|
| + * @param s Input string pointer.
|
| + * @param length Length of the string, can be -1 if NUL-terminated.
|
| + * @return TRUE if s contains only invariant characters.
|
| + *
|
| + * @internal (ICU 2.8)
|
| + */
|
| +U_INTERNAL UBool U_EXPORT2
|
| +uprv_isInvariantString(const char *s, int32_t length);
|
| +
|
| +/**
|
| + * Check if a Unicode string only contains invariant characters.
|
| + * See utypes.h for details.
|
| + *
|
| + * @param s Input string pointer.
|
| + * @param length Length of the string, can be -1 if NUL-terminated.
|
| + * @return TRUE if s contains only invariant characters.
|
| + *
|
| + * @internal (ICU 2.8)
|
| + */
|
| +U_INTERNAL UBool U_EXPORT2
|
| +uprv_isInvariantUString(const UChar *s, int32_t length);
|
| +
|
| +/**
|
| + * \def U_UPPER_ORDINAL
|
| + * Get the ordinal number of an uppercase invariant character
|
| + * @internal
|
| + */
|
| +#if U_CHARSET_FAMILY==U_ASCII_FAMILY
|
| +# define U_UPPER_ORDINAL(x) ((x)-'A')
|
| +#elif U_CHARSET_FAMILY==U_EBCDIC_FAMILY
|
| +# define U_UPPER_ORDINAL(x) (((x) < 'J') ? ((x)-'A') : \
|
| + (((x) < 'S') ? ((x)-'J'+9) : \
|
| + ((x)-'S'+18)))
|
| +#else
|
| +# error Unknown charset family!
|
| +#endif
|
| +
|
| +/**
|
| + * Compare two EBCDIC invariant-character strings in ASCII order.
|
| + * @internal
|
| + */
|
| +U_INTERNAL int32_t U_EXPORT2
|
| +uprv_compareInvEbcdicAsAscii(const char *s1, const char *s2);
|
| +
|
| +/**
|
| + * \def uprv_compareInvCharsAsAscii
|
| + * Compare two invariant-character strings in ASCII order.
|
| + * @internal
|
| + */
|
| +#if U_CHARSET_FAMILY==U_ASCII_FAMILY
|
| +# define uprv_compareInvCharsAsAscii(s1, s2) uprv_strcmp(s1, s2)
|
| +#elif U_CHARSET_FAMILY==U_EBCDIC_FAMILY
|
| +# define uprv_compareInvCharsAsAscii(s1, s2) uprv_compareInvEbcdicAsAscii(s1, s2)
|
| +#else
|
| +# error Unknown charset family!
|
| +#endif
|
| +
|
| +/**
|
| + * Converts an EBCDIC invariant character to lowercase ASCII.
|
| + * @internal
|
| + */
|
| +U_INTERNAL char U_EXPORT2
|
| +uprv_ebcdicToLowercaseAscii(char c);
|
| +
|
| +/**
|
| + * \def uprv_invCharToLowercaseAscii
|
| + * Converts an invariant character to lowercase ASCII.
|
| + * @internal
|
| + */
|
| +#if U_CHARSET_FAMILY==U_ASCII_FAMILY
|
| +# define uprv_invCharToLowercaseAscii uprv_asciitolower
|
| +#elif U_CHARSET_FAMILY==U_EBCDIC_FAMILY
|
| +# define uprv_invCharToLowercaseAscii uprv_ebcdicToLowercaseAscii
|
| +#else
|
| +# error Unknown charset family!
|
| +#endif
|
| +
|
| +/**
|
| + * Copy EBCDIC to ASCII
|
| + * @internal
|
| + * @see uprv_strncpy
|
| + */
|
| +U_INTERNAL uint8_t* U_EXPORT2
|
| +uprv_aestrncpy(uint8_t *dst, const uint8_t *src, int32_t n);
|
| +
|
| +
|
| +/**
|
| + * Copy ASCII to EBCDIC
|
| + * @internal
|
| + * @see uprv_strncpy
|
| + */
|
| +U_INTERNAL uint8_t* U_EXPORT2
|
| +uprv_eastrncpy(uint8_t *dst, const uint8_t *src, int32_t n);
|
| +
|
| +
|
| +
|
| +#endif
|
|
|
| Property changes on: icu51/source/common/uinvchar.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|