]> mj.ucw.cz Git - libucw.git/blob - lib/string.h
ffcf8fb49d87c4924e005278c94a290ddbf0371e
[libucw.git] / lib / string.h
1 /*
2  *      UCW Library -- String Routines
3  *
4  *      (c) 2006 Pavel Charvat <pchar@ucw.cz>
5  *      (c) 2007--2008 Martin Mares <mj@ucw.cz>
6  *
7  *      This software may be freely distributed and used according to the terms
8  *      of the GNU Lesser General Public License.
9  */
10
11 #ifndef _UCW_STRING_H
12 #define _UCW_STRING_H
13
14 /* string.c */
15
16 char *str_format_flags(char *dest, const char *fmt, uns flags);
17
18 /* str-esc.c */
19
20 char *str_unesc(char *dest, const char *src);
21
22 /* str-split.c */
23
24 int str_sepsplit(char *str, uns sep, char **rec, uns max);
25 int str_wordsplit(char *str, char **rec, uns max);
26
27 /* str-(i)match.c: Matching of shell patterns */
28
29 int str_match_pattern(const char *patt, const char *str);
30 int str_match_pattern_nocase(const char *patt, const char *str);
31
32 /* str-hex.c */
33
34 void mem_to_hex(char *dest, const byte *src, uns bytes, uns flags);
35 const char *hex_to_mem(byte *dest, const char *src, uns max_bytes, uns flags);
36
37 // Bottom 8 bits of flags are an optional separator of bytes, the rest is:
38 #define MEM_TO_HEX_UPCASE 0x100
39
40 #endif