utilstr.h

00001 /******************************************************************************
00002  *  utilstr.h   - prototypes for string utility functions
00003  *
00004  * $Id: utilstr.h 2062 2007-07-19 17:27:31Z scribe $
00005  *
00006  * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
00007  *      CrossWire Bible Society
00008  *      P. O. Box 2528
00009  *      Tempe, AZ  85280-2528
00010  *
00011  * This program is free software; you can redistribute it and/or modify it
00012  * under the terms of the GNU General Public License as published by the
00013  * Free Software Foundation version 2.
00014  *
00015  * This program is distributed in the hope that it will be useful, but
00016  * WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018  * General Public License for more details.
00019  *
00020  */
00021 
00022 #ifndef UTILSTR_H
00023 #define UTILSTR_H
00024 
00025 #include <defs.h>
00026 
00027 SWORD_NAMESPACE_START
00028 
00031 char *stdstr (char **iistr, const char *istr, unsigned int memPadFactor = 1);
00032 char *strstrip (char *istr);
00033 const char *stristr (const char *s1, const char *s2);
00034 int strnicmp(const char *s1, const char *s2, int len);
00035 int stricmp(const char *s1, const char *s2);
00036 
00037 /******************************************************************************
00038  * SW_toupper - array of uppercase values for any given Latin-1 value
00039  *
00040  * use this instead of toupper() for fast lookups on accented characters
00041  */
00042 extern const unsigned char SW_toupper_array[256];
00043 #define SW_toupper(c) SW_toupper_array[(unsigned char)c]
00044 
00045 SWORD_NAMESPACE_END
00046 #endif