SphinxBase  5prealpha
case.h File Reference

Locale-independent implementation of case swapping operation. More...

#include <string.h>
#include <sphinxbase/prim_type.h>
#include <sphinxbase/sphinxbase_export.h>

Go to the source code of this file.

Macros

#define UPPER_CASE(c)   ((((c) >= 'a') && ((c) <= 'z')) ? (c-32) : c)
 Return upper case form for c.
 
#define LOWER_CASE(c)   ((((c) >= 'A') && ((c) <= 'Z')) ? (c+32) : c)
 Return lower case form for c.
 

Functions

SPHINXBASE_EXPORT void ucase (char *str)
 Convert str to all upper case. More...
 
SPHINXBASE_EXPORT void lcase (char *str)
 Convert str to all lower case. More...
 
SPHINXBASE_EXPORT int32 strcmp_nocase (const char *str1, const char *str2)
 (FIXME! The implementation is incorrect!) Case insensitive string compare. More...
 
SPHINXBASE_EXPORT int32 strncmp_nocase (const char *str1, const char *str2, size_t len)
 Like strcmp_nocase() but with a maximum length.
 

Detailed Description

Locale-independent implementation of case swapping operation.

This function implements ASCII-only case switching and comparison related operations, which do not depend on the locale and are guaranteed to exist on all versions of Windows.

Definition in file case.h.

Function Documentation

SPHINXBASE_EXPORT void lcase ( char *  str)

Convert str to all lower case.

Parameters
stris a string.

Referenced by ngram_model_casefold().

SPHINXBASE_EXPORT int32 strcmp_nocase ( const char *  str1,
const char *  str2 
)

(FIXME! The implementation is incorrect!) Case insensitive string compare.

Return the usual -1, 0, +1, depending on str1 <, =, > str2 (case insensitive, of course).

Parameters
str1is the first string.
str2is the second string.

Definition at line 94 of file case.c.

References UPPER_CASE.

Referenced by ngram_file_name_to_type(), and ngram_str_to_type().

SPHINXBASE_EXPORT void ucase ( char *  str)

Convert str to all upper case.

Parameters
stris a string.

Referenced by ngram_model_casefold().