00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
#ifndef APR_STRMATCH_H
00017
#define APR_STRMATCH_H
00018
00023
#include "apu.h"
00024
#include "apr_pools.h"
00025
00026
#ifdef __cplusplus
00027
extern "C" {
00028
#endif
00029
00037 typedef struct apr_strmatch_pattern apr_strmatch_pattern;
00038
00042 struct apr_strmatch_pattern {
00044
const char *(*compare)(
const apr_strmatch_pattern *this_pattern,
00045
const char *s, apr_size_t slen);
00046 const char *
pattern;
00047 apr_size_t
length;
00048 void *
context;
00049 };
00050
00051
#if defined(DOXYGEN)
00052
00060
APU_DECLARE(
const char *) apr_strmatch(const apr_strmatch_pattern *pattern,
00061 const
char *s, apr_size_t slen);
00062 #else
00063 #define apr_strmatch(pattern, s, slen) (*((pattern)->compare))((pattern), (s), (slen))
00064 #endif
00065
00073 APU_DECLARE(const apr_strmatch_pattern *) apr_strmatch_precompile(apr_pool_t *p, const
char *s,
int case_sensitive);
00074
00076 #ifdef __cplusplus
00077 }
00078 #endif
00079
00080 #endif