00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040 #ifndef APR_STRINGS_H
00041 #define APR_STRINGS_H
00042
00048 #include "apr.h"
00049 #include "apr_errno.h"
00050 #include "apr_pools.h"
00051 #define APR_WANT_IOVEC
00052 #include "apr_want.h"
00053
00054 #if APR_HAVE_STDARG_H
00055 #include <stdarg.h>
00056 #endif
00057
00058 #ifdef __cplusplus
00059 extern "C" {
00060 #endif
00061
00076 APR_DECLARE(int) apr_strnatcmp(char const *a, char const *b);
00077
00087 APR_DECLARE(int) apr_strnatcasecmp(char const *a, char const *b);
00088
00095 APR_DECLARE(char *) apr_pstrdup(apr_pool_t *p, const char *s);
00096
00109 APR_DECLARE(char *) apr_pstrmemdup(apr_pool_t *p, const char *s, apr_size_t n);
00110
00119 APR_DECLARE(char *) apr_pstrndup(apr_pool_t *p, const char *s, apr_size_t n);
00120
00129 APR_DECLARE(void *) apr_pmemdup(apr_pool_t *p, const void *m, apr_size_t n);
00130
00137 APR_DECLARE_NONSTD(char *) apr_pstrcat(apr_pool_t *p, ...);
00138
00147 APR_DECLARE(char *) apr_pstrcatv(apr_pool_t *p, const struct iovec *vec,
00148 apr_size_t nvec, apr_size_t *nbytes);
00149
00158 APR_DECLARE(char *) apr_pvsprintf(apr_pool_t *p, const char *fmt, va_list ap);
00159
00168 APR_DECLARE_NONSTD(char *) apr_psprintf(apr_pool_t *p, const char *fmt, ...)
00169 __attribute__((format(printf,2,3)));
00170
00193 APR_DECLARE(char *) apr_cpystrn(char *dst, const char *src,
00194 apr_size_t dst_size);
00195
00203 APR_DECLARE(char *) apr_collapse_spaces(char *dest, const char *src);
00204
00212 APR_DECLARE(apr_status_t) apr_tokenize_to_argv(const char *arg_str,
00213 char ***argv_out,
00214 apr_pool_t *token_context);
00215
00227 APR_DECLARE(char *) apr_strtok(char *str, const char *sep, char **last);
00228
00259 APR_DECLARE_NONSTD(int) apr_snprintf(char *buf, apr_size_t len,
00260 const char *format, ...)
00261 __attribute__((format(printf,3,4)));
00262
00271 APR_DECLARE(int) apr_vsnprintf(char *buf, apr_size_t len, const char *format,
00272 va_list ap);
00281 APR_DECLARE(char *) apr_itoa(apr_pool_t *p, int n);
00282
00289 APR_DECLARE(char *) apr_ltoa(apr_pool_t *p, long n);
00290
00297 APR_DECLARE(char *) apr_off_t_toa(apr_pool_t *p, apr_off_t n);
00298
00313 APR_DECLARE(apr_status_t) apr_strtoff(apr_off_t *offset, const char *buf,
00314 char **end, int base);
00315
00331 APR_DECLARE(apr_int64_t) apr_strtoi64(const char *buf, char **end, int base);
00332
00339 APR_DECLARE(apr_int64_t) apr_atoi64(const char *buf);
00340
00349 APR_DECLARE(char *) apr_strfsize(apr_off_t size, char *buf);
00350
00353 #ifdef __cplusplus
00354 }
00355 #endif
00356
00357 #endif