diff options
Diffstat (limited to 'include/ruby/re.h')
-rw-r--r-- | include/ruby/re.h | 45 |
1 files changed, 5 insertions, 40 deletions
diff --git a/include/ruby/re.h b/include/ruby/re.h index 7102c7ace4..67dbe7778b 100644 --- a/include/ruby/re.h +++ b/include/ruby/re.h @@ -12,43 +12,15 @@ #ifndef RUBY_RE_H #define RUBY_RE_H 1 -#if defined(__cplusplus) -extern "C" { -#if 0 -} /* satisfy cc-mode */ -#endif -#endif - +#include "ruby/3/config.h" #include <sys/types.h> #include <stdio.h> #include "ruby/regex.h" +#include "ruby/3/core/rmatch.h" +#include "ruby/3/dllexport.h" -RUBY_SYMBOL_EXPORT_BEGIN - -typedef struct re_pattern_buffer Regexp; - -struct rmatch_offset { - long beg; - long end; -}; - -struct rmatch { - struct re_registers regs; - - struct rmatch_offset *char_offset; - int char_offset_num_allocated; -}; - -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) +RUBY3_SYMBOL_EXPORT_BEGIN() VALUE rb_reg_regcomp(VALUE); long rb_reg_search(VALUE, VALUE, long, int); @@ -59,13 +31,6 @@ VALUE rb_reg_quote(VALUE); regex_t *rb_reg_prepare_re(VALUE re, VALUE str); int rb_reg_region_copy(struct re_registers *, const struct re_registers *); -RUBY_SYMBOL_EXPORT_END - -#if defined(__cplusplus) -#if 0 -{ /* satisfy cc-mode */ -#endif -} /* extern "C" { */ -#endif +RUBY3_SYMBOL_EXPORT_END() #endif /* RUBY_RE_H */ |