00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef RE_H
00014 #define RE_H
00015
00016 #include <sys/types.h>
00017 #include <stdio.h>
00018
00019 #include "regex.h"
00020
00021 typedef struct re_pattern_buffer Regexp;
00022
00023 struct RMatch {
00024 struct RBasic basic;
00025 VALUE str;
00026 struct re_registers *regs;
00027 };
00028
00029 #define RMATCH(obj) (R_CAST(RMatch)(obj))
00030
00031 VALUE rb_reg_regcomp (VALUE);
00032 long rb_reg_search (VALUE, VALUE, long, long);
00033 VALUE rb_reg_regsub (VALUE, VALUE, struct re_registers *);
00034 long rb_reg_adjust_startpos (VALUE, VALUE, long, long);
00035 void rb_match_busy (VALUE);
00036 VALUE rb_reg_quote (VALUE);
00037
00038 RUBY_EXTERN int ruby_ignorecase;
00039
00040 int rb_reg_mbclen2 (unsigned int, VALUE);
00041 #define mbclen2(c,re) rb_reg_mbclen2((c),(re))
00042 #endif
00043