diff options
Diffstat (limited to 'trunk/include/ruby/re.h')
-rw-r--r-- | trunk/include/ruby/re.h | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/trunk/include/ruby/re.h b/trunk/include/ruby/re.h new file mode 100644 index 0000000000..cc7f6025a7 --- /dev/null +++ b/trunk/include/ruby/re.h @@ -0,0 +1,66 @@ +/********************************************************************** + + re.h - + + $Author$ + created at: Thu Sep 30 14:18:32 JST 1993 + + Copyright (C) 1993-2007 Yukihiro Matsumoto + +**********************************************************************/ + +#ifndef RUBY_RE_H +#define RUBY_RE_H 1 + +#if defined(__cplusplus) +extern "C" { +#if 0 +} /* satisfy cc-mode */ +#endif +#endif + +#include <sys/types.h> +#include <stdio.h> + +#include "ruby/regex.h" + +typedef struct re_pattern_buffer Regexp; + +struct rmatch_offset { + int beg; + int end; +}; + +struct rmatch { + struct re_registers regs; + + int char_offset_updated; + int char_offset_num_allocated; + struct rmatch_offset *char_offset; +}; + +struct RMatch { + struct RBasic basic; + VALUE str; + struct rmatch *rmatch; + VALUE regexp; /* RRegexp */ +}; + +#define RMATCH(obj) (R_CAST(RMatch)(obj)) +#define RMATCH_REGS(obj) (&(R_CAST(RMatch)(obj))->rmatch->regs) + +VALUE rb_reg_regcomp(VALUE); +int rb_reg_search(VALUE, VALUE, int, int); +VALUE rb_reg_regsub(VALUE, VALUE, struct re_registers *, VALUE); +int rb_reg_adjust_startpos(VALUE, VALUE, int, int); +void rb_match_busy(VALUE); +VALUE rb_reg_quote(VALUE); + +#if defined(__cplusplus) +#if 0 +{ /* satisfy cc-mode */ +#endif +} /* extern "C" { */ +#endif + +#endif /* RUBY_RE_H */ |