123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296 |
- /*
- * CDE - Common Desktop Environment
- *
- * Copyright (c) 1993-2012, The Open Group. All rights reserved.
- *
- * These libraries and programs are free software; you can
- * redistribute them and/or modify them under the terms of the GNU
- * Lesser General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option)
- * any later version.
- *
- * These libraries and programs are distributed in the hope that
- * they will be useful, but WITHOUT ANY WARRANTY; without even the
- * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- * PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with these libraries and programs; if not, write
- * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
- * Floor, Boston, MA 02110-1301 USA
- */
- /* $XConsortium: StringFuncsI.h /main/5 1996/08/30 13:42:52 cde-hp $ */
- /************************************<+>*************************************
- ****************************************************************************
- **
- ** File: StringFuncsI.h
- **
- ** Project: Cde DtHelp
- **
- ** Description: Header file for StringFuncs.c
- **
- **
- ** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 Hewlett-Packard Company
- **
- ** (c) Copyright 1993, 1994 Hewlett-Packard Company
- ** (c) Copyright 1993, 1994 International Business Machines Corp.
- ** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
- ** (c) Copyright 1993, 1994 Novell, Inc.
- **
- **
- **
- ****************************************************************************
- ************************************<+>*************************************/
- #ifndef _DtHelpStringFuncsI_h
- #define _DtHelpStringFuncsI_h
- /* opaque handle of the iconv context */
- typedef struct _DtHelpCeIconvContextRec * _DtHelpCeIconvContext;
- /****************************************************************************
- * Semi Public Macros
- ****************************************************************************/
- #define _DtHelpCeToLower(c) \
- (('A' <= (c) && (c) <= 'Z') ? (c) + 'a' - 'A' : (c))
- /****************************************************************************
- * Semi Public Re-defines
- ****************************************************************************/
- #if !defined(_AIX)
- #define _DtHelpCeStrCaseCmp(s1,s2) strcasecmp(s1,s2)
- #endif /* _AIX */
- /****************************************************************************
- * Semi Public Routines
- ****************************************************************************/
- /******************************************************************************
- * Function: _DtHelpCeCountChars (char *s1, max_len, ret_len)
- *
- * Returns in 'ret_len' the number of characters (not bytes)
- * in string s1.
- *
- * Returns:
- * -1 If found an invalid character. 'ret_len' contains the
- * number of 'good' characters found.
- * 0 If successful.
- *****************************************************************************/
- /******************************************************************************
- * Function: _DtHelpCeStrcspn (const char *s1, const char *s2, max_len, &ret_len)
- *
- * Returns in 'ret_len' the length of the initial segment of string
- * s1 which consists entirely of characters not found in string s2.
- *
- * Returns:
- * -1 If found an invalid character.
- * 0 If found a character in string s2
- * 1 If found the null byte character.
- *****************************************************************************/
- /******************************************************************************
- * Function: _DtHelpCeStrspn (const char *s1, const char *s2, max_len, &ret_len)
- *
- * Returns in 'ret_len' the length of the initial segment of string
- * s1 which consists entirely of characters found in string s2.
- *
- * Returns:
- * -1 If found an invalid character.
- * 0 If found a character not in string s2
- * 1 If found the null byte character.
- *****************************************************************************/
- /******************************************************************************
- * Function: _DtHelpCeStrchr(const char *s1,const char *value, max_len, ret_ptr)
- *
- * Returns in 'ret_ptr' the address of the first occurence of 'value'
- * in string s1.
- *
- * Returns:
- * -1 If found an invalid character.
- * 0 If found value in string s2
- * 1 If found the null byte character without finding 'value'.
- * 'ret_ptr' will also be null in this case.
- *****************************************************************************/
- /******************************************************************************
- * Function: _DtHelpCeStrrchr(const char *s1,const char *value,max_len,ret_ptr)
- *
- * Returns in 'ret_ptr' the address of the last occurence of 'value'
- * in string s1.
- *
- * Returns:
- * -1 If found an invalid character.
- * 0 If found value in string s2
- * 1 If found the null byte character without finding 'value'.
- * 'ret_ptr' will also be null in this case.
- *****************************************************************************/
- /*****************************************************************************
- * Function: _DtHelpCeUpperCase
- *
- * Parameters: string Specifies the string to change into
- * upper case.
- *
- * Return Value: Nothing
- *
- * Purpose: To change all lower case characters into upper case.
- *
- *****************************************************************************/
- /************************************************************************
- * Function: _DtHelpCEStrHashToKey
- *
- * Parameters: C-format string to hash
- *
- * Purpose:
- * Does a very simple hash operation on the string and returns the value
- *
- * Returns: hash value
- *
- ************************************************************************/
- /******************************************************************************
- * Function: _DtHelpCEGetStrcollProc
- *
- * Parameters: none
- *
- * Returns: Ptr to the proper collation function to use
- * If the LANG="C", then it is strcasecmp().
- * If it's not, then it is strcoll().
- *
- * Purpose: When the LANG="C", strcoll() performs collation
- * identical to strcmp(), which is strictly bitwise.
- * To get case-insensitive collation, you need to use
- * strcasecmp() instead. If LANG != "C", then
- * strcoll() collates according to the language
- * setting.
- *
- *****************************************************************************/
- /*****************************************************************************
- * Function: String _DtHelpCeStripSpaces (string)
- *
- *
- * Parameters: String to process
- *
- * Return Value: Processed string
- *
- * Purpose: Strip all leading and trailing spaces.
- * Processing is in place
- *
- *****************************************************************************/
- /*****************************************************************************
- * Function: void _DtHelpCeCompressSpace (string)
- *
- * Parameters: string to process
- *
- * Return Value: processed string
- *
- * Purpose: This function strips all leading and trailing spaces
- * from the string; it also compresses any intervening
- * spaces into a single space. This is useful when
- * comparing name strings. For instance, the string:
- * " First Middle Last "
- *
- * would compress to:
- *
- * "First Middle Last"
- *
- * Processing is in place.
- *
- *****************************************************************************/
- /*****************************************************************************
- * Function: _DtHelpCeLowerCase - not_used, commented out
- *
- * Parameters: string Specifies the string to change into
- * lower case.
- *
- * Return Value: Nothing
- *
- * Purpose: To change all upper case characters into lower case.
- *
- *****************************************************************************/
- typedef int (*_CEStrcollProc)(const char *,const char *);
- extern void **_DtHelpCeAddPtrToArray (
- void **array,
- void *ptr );
- extern int _DtHelpCeCountChars (
- char *s1,
- int max_len,
- int *ret_len );
- extern int _DtHelpCeFreeStringArray ( char **array);
- #if defined(_AIX)
- extern int _DtHelpCeStrCaseCmp(
- const char *s1,
- const char *s2);
- #endif /* _AIX */
- extern int _DtHelpCeStrCaseCmpLatin1(
- const char *s1,
- const char *s2);
- extern int _DtHelpCeStrNCaseCmpLatin1(
- const char *s1,
- const char *s2,
- size_t n);
- extern int _DtHelpCeStrchr (
- const char *s1,
- const char *value,
- int max_len,
- char **ret_ptr);
- extern int _DtHelpCeStrrchr (
- const char *s1,
- const char *value,
- int max_len,
- char **ret_ptr);
- extern int _DtHelpCeStrcspn (
- const char *s1,
- const char *s2,
- int max_len,
- int *ret_len );
- extern int _DtHelpCeStrspn (
- char *s1,
- char *s2,
- int max_len,
- int *ret_len );
- extern void _DtHelpCeUpperCase (char *string);
- extern int _DtHelpCeStrHashToKey(
- const char * str);
- extern _CEStrcollProc _DtHelpCeGetStrcollProc(void);
- extern char * _DtHelpCeStripSpaces (
- char * string);
- extern void _DtHelpCeCompressSpace (
- char * string);
- extern int _DtHelpCeIconvStr1Step(
- const char * fromCode,
- const char * fromStr,
- const char * toCode,
- char * * ret_toStr,
- int dflt1,
- int dflt2);
- extern int _DtHelpCeIconvOpen(
- _DtHelpCeIconvContext * ret_iconvContext, /* iconv */
- const char * fromCode, /* codeset name */
- const char * toCode, /* codeset name */
- int dflt1, /* 1-byte default char */
- int dflt2); /* 2-byte default char */
- extern int _DtHelpCeIconvStr(
- _DtHelpCeIconvContext iconvContext, /* iconv */
- const char * fromStr, /* string to convert */
- char * * ret_toStr, /* converted str */
- size_t * ret_toStrLen, /* converted str */
- char * toStrBuf, /* can pass in a buf */
- size_t toStrBufLen); /* length of buf */
- extern void _DtHelpCeIconvClose(
- _DtHelpCeIconvContext * io_iconvContext);
- extern int _DtHelpCeIconvContextSuitable(
- _DtHelpCeIconvContext iconvContext,
- const char * fromCode,
- const char * toCode);
- #endif /* _DtHelpStringFuncsI_h */
|