4
4
/* tmbstr.h - Tidy string utility functions
6
(c) 1998-2004 (W3C) MIT, ERCIM, Keio University
6
(c) 1998-2006 (W3C) MIT, ERCIM, Keio University
7
7
See tidy.h for the copyright notice.
11
11
$Author: arnaud02 $
12
$Date: 2004/12/06 15:05:29 $
12
$Date: 2006/12/29 16:31:09 $
24
/* like strdup but using MemAlloc */
25
tmbstr tmbstrdup( ctmbstr str );
24
/* like strdup but using an allocator */
25
tmbstr TY_(tmbstrdup)( TidyAllocator *allocator, ctmbstr str );
27
/* like strndup but using MemAlloc */
28
tmbstr tmbstrndup( ctmbstr str, uint len);
27
/* like strndup but using an allocator */
28
tmbstr TY_(tmbstrndup)( TidyAllocator *allocator, ctmbstr str, uint len);
30
30
/* exactly same as strncpy */
31
uint tmbstrncpy( tmbstr s1, ctmbstr s2, uint size );
33
uint tmbstrcpy( tmbstr s1, ctmbstr s2 );
35
uint tmbstrcat( tmbstr s1, ctmbstr s2 );
31
uint TY_(tmbstrncpy)( tmbstr s1, ctmbstr s2, uint size );
33
uint TY_(tmbstrcpy)( tmbstr s1, ctmbstr s2 );
35
uint TY_(tmbstrcat)( tmbstr s1, ctmbstr s2 );
37
37
/* exactly same as strcmp */
38
int tmbstrcmp( ctmbstr s1, ctmbstr s2 );
38
int TY_(tmbstrcmp)( ctmbstr s1, ctmbstr s2 );
40
40
/* returns byte count, not char count */
41
uint tmbstrlen( ctmbstr str );
41
uint TY_(tmbstrlen)( ctmbstr str );
44
44
MS C 4.2 doesn't include strcasecmp.
51
51
we are always comparing to ascii element and
52
52
attribute names defined by HTML specs.
54
int tmbstrcasecmp( ctmbstr s1, ctmbstr s2 );
56
int tmbstrncmp( ctmbstr s1, ctmbstr s2, uint n );
58
int tmbstrncasecmp( ctmbstr s1, ctmbstr s2, uint n );
54
int TY_(tmbstrcasecmp)( ctmbstr s1, ctmbstr s2 );
56
int TY_(tmbstrncmp)( ctmbstr s1, ctmbstr s2, uint n );
58
int TY_(tmbstrncasecmp)( ctmbstr s1, ctmbstr s2, uint n );
60
60
/* return offset of cc from beginning of s1,
61
61
** -1 if not found.
63
int tmbstrnchr( ctmbstr s1, uint len1, tmbchar cc );
63
/* int TY_(tmbstrnchr)( ctmbstr s1, uint len1, tmbchar cc ); */
65
ctmbstr tmbsubstrn( ctmbstr s1, uint len1, ctmbstr s2 );
66
ctmbstr tmbsubstrncase( ctmbstr s1, uint len1, ctmbstr s2 );
67
ctmbstr tmbsubstr( ctmbstr s1, ctmbstr s2 );
65
ctmbstr TY_(tmbsubstrn)( ctmbstr s1, uint len1, ctmbstr s2 );
66
/* ctmbstr TY_(tmbsubstrncase)( ctmbstr s1, uint len1, ctmbstr s2 ); */
67
ctmbstr TY_(tmbsubstr)( ctmbstr s1, ctmbstr s2 );
69
69
/* transform string to lower case */
70
tmbstr tmbstrtolower( tmbstr s );
70
tmbstr TY_(tmbstrtolower)( tmbstr s );
72
72
/* Transform ASCII chars in string to upper case */
73
tmbstr tmbstrtoupper(tmbstr s);
75
Bool tmbsamefile( ctmbstr filename1, ctmbstr filename2 );
77
int tmbvsnprintf(tmbstr buffer, size_t count, ctmbstr format, va_list args)
73
tmbstr TY_(tmbstrtoupper)( tmbstr s );
75
/* Bool TY_(tmbsamefile)( ctmbstr filename1, ctmbstr filename2 ); */
77
int TY_(tmbvsnprintf)(tmbstr buffer, size_t count, ctmbstr format, va_list args)
79
79
__attribute__((format(printf, 3, 0)))
82
int tmbsnprintf(tmbstr buffer, size_t count, ctmbstr format, ...)
82
int TY_(tmbsnprintf)(tmbstr buffer, size_t count, ctmbstr format, ...)
84
84
__attribute__((format(printf, 3, 4)))