summaryrefslogtreecommitdiff
path: root/libc/misc/regex/_regex.h
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2005-11-28 16:53:28 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2005-11-28 16:53:28 +0000
commit86ee08b08e6fa344bc22b28a7fe1cb0f810d7fec (patch)
treee0faf5b8137ee877f98b7288227bdaf9b2c2ff9d /libc/misc/regex/_regex.h
parentc4869de2c791985539b642ec22606a3cebc03778 (diff)
Add new regex code from glibc, this is almost double size of the earlier one, but passes sed tests (and thus allows making sed shrink from 91k to 42k
Diffstat (limited to 'libc/misc/regex/_regex.h')
-rw-r--r--libc/misc/regex/_regex.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/libc/misc/regex/_regex.h b/libc/misc/regex/_regex.h
new file mode 100644
index 000000000..cf3a5a2c1
--- /dev/null
+++ b/libc/misc/regex/_regex.h
@@ -0,0 +1,45 @@
+/* this file is copied from libc/include/regex.h */
+
+#ifndef _REGEX_H
+#include <regex.h>
+
+/* Document internal interfaces. */
+extern reg_syntax_t __re_set_syntax (reg_syntax_t syntax);
+
+extern const char *__re_compile_pattern (const char *pattern, size_t length,
+ struct re_pattern_buffer *buffer);
+
+extern int __re_compile_fastmap (struct re_pattern_buffer *buffer);
+
+extern int __re_search (struct re_pattern_buffer *buffer, const char *string,
+ int length, int start, int range,
+ struct re_registers *regs);
+
+extern int __re_search_2
+ (struct re_pattern_buffer *buffer, const char *string1,
+ int length1, const char *string2, int length2,
+ int start, int range, struct re_registers *regs, int stop);
+
+extern int __re_match
+ (struct re_pattern_buffer *buffer, const char *string,
+ int length, int start, struct re_registers *regs);
+
+extern int __re_match_2
+ (struct re_pattern_buffer *buffer, const char *string1,
+ int length1, const char *string2, int length2,
+ int start, struct re_registers *regs, int stop);
+
+extern void __re_set_registers
+ (struct re_pattern_buffer *buffer, struct re_registers *regs,
+ unsigned num_regs, regoff_t *starts, regoff_t *ends);
+
+extern int __regcomp (regex_t *__preg, const char *__pattern, int __cflags);
+
+extern int __regexec (const regex_t *__preg, const char *__string,
+ size_t __nmatch, regmatch_t __pmatch[], int __eflags);
+
+extern size_t __regerror (int __errcode, const regex_t *__preg,
+ char *__errbuf, size_t __errbuf_size);
+
+extern void __regfree (regex_t *__preg);
+#endif