summaryrefslogtreecommitdiff
path: root/regex.h
diff options
context:
space:
mode:
Diffstat (limited to 'regex.h')
-rw-r--r--regex.h29
1 files changed, 21 insertions, 8 deletions
diff --git a/regex.h b/regex.h
index f61b980648..66ee23aa5a 100644
--- a/regex.h
+++ b/regex.h
@@ -17,11 +17,24 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
/* Multi-byte extension added May, 1993 by t^2 (Takahiro Tanimoto)
Last change: May 21, 1993 by t^2 */
-/* modifis for Ruby by matz@caelum.co.jp */
+/* modified for Ruby by matz@netlab.co.jp */
#ifndef __REGEXP_LIBRARY
#define __REGEXP_LIBRARY
+/* symbol mangling for ruby */
+#ifdef RUBY
+# define re_compile_fastmap ruby_re_compile_fastmap
+# define re_compile_pattern ruby_re_compile_pattern
+# define re_copy_registers ruby_re_copy_registers
+# define re_free_pattern ruby_re_free_pattern
+# define re_free_registers ruby_re_free_registers
+# define re_match ruby_re_match
+# define re_mbcinit ruby_re_mbcinit
+# define re_search ruby_re_search
+# define re_set_casetable ruby_re_set_casetable
+#endif
+
#include <stddef.h>
/* Define number of parens for which we record the beginnings and ends.
@@ -76,8 +89,8 @@ void re_mbcinit ();
struct re_pattern_buffer
{
char *buffer; /* Space holding the compiled pattern commands. */
- size_t allocated; /* Size of space that `buffer' points to. */
- size_t used; /* Length of portion of buffer actually occupied */
+ int allocated; /* Size of space that `buffer' points to. */
+ int used; /* Length of portion of buffer actually occupied */
char *fastmap; /* Pointer to fastmap, if any, or zero if none. */
/* re_search uses the fastmap, if there is one,
to skip over totally implausible characters. */
@@ -113,8 +126,8 @@ typedef struct re_pattern_buffer regex_t;
struct re_registers
{
- size_t allocated;
- size_t num_regs;
+ int allocated;
+ int num_regs;
int *beg;
int *end;
};
@@ -138,13 +151,13 @@ typedef struct
#ifdef __STDC__
-extern char *re_compile_pattern (char *, size_t, struct re_pattern_buffer *);
+extern char *re_compile_pattern (char *, int, struct re_pattern_buffer *);
void re_free_pattern (struct re_pattern_buffer *);
/* Is this really advertised? */
extern void re_compile_fastmap (struct re_pattern_buffer *);
-extern int re_search (struct re_pattern_buffer *, char*, size_t, size_t, size_t,
+extern int re_search (struct re_pattern_buffer *, char*, int, int, int,
struct re_registers *);
-extern int re_match (struct re_pattern_buffer *, char *, size_t, size_t,
+extern int re_match (struct re_pattern_buffer *, char *, int, int,
struct re_registers *);
extern void re_set_casetable (char *table);
extern void re_copy_registers (struct re_registers*, struct re_registers*);