1#ifndef _REGEX_H
2#include <posix/regex.h>
3
4#ifndef _ISOMAC
5/* Document internal interfaces. */
6extern reg_syntax_t __re_set_syntax (reg_syntax_t syntax);
7
8extern const char *__re_compile_pattern (const char *pattern, size_t length,
9 struct re_pattern_buffer *buffer);
10
11extern int __re_compile_fastmap (struct re_pattern_buffer *buffer)
12 attribute_hidden;
13
14extern regoff_t __re_search (struct re_pattern_buffer *buffer, const char *string,
15 regoff_t length, regoff_t start, regoff_t range,
16 struct re_registers *regs);
17
18extern regoff_t __re_search_2
19 (struct re_pattern_buffer *buffer, const char *string1,
20 regoff_t length1, const char *string2, regoff_t length2,
21 regoff_t start, regoff_t range, struct re_registers *regs, regoff_t stop);
22
23extern regoff_t __re_match
24 (struct re_pattern_buffer *buffer, const char *string,
25 regoff_t length, regoff_t start, struct re_registers *regs);
26
27extern regoff_t __re_match_2
28 (struct re_pattern_buffer *buffer, const char *string1,
29 regoff_t length1, const char *string2, regoff_t length2,
30 regoff_t start, struct re_registers *regs, regoff_t stop);
31
32extern void __re_set_registers
33 (struct re_pattern_buffer *buffer, struct re_registers *regs,
34 __re_size_t num_regs, regoff_t *starts, regoff_t *ends);
35
36extern int __regcomp (regex_t *__preg, const char *__pattern, int __cflags);
37libc_hidden_proto (__regcomp)
38
39extern int __regexec (const regex_t *__preg, const char *__string,
40 size_t __nmatch, regmatch_t __pmatch[__nmatch],
41 int __eflags);
42libc_hidden_proto (__regexec)
43
44extern size_t __regerror (int __errcode, const regex_t *__preg,
45 char *__errbuf, size_t __errbuf_size);
46
47extern void __regfree (regex_t *__preg);
48libc_hidden_proto (__regfree)
49#endif
50#endif
51