Ruby  3.4.0dev (2024-12-06 revision 892c46283a5ea4179500d951c9d4866c0051f27b)
re.h
Go to the documentation of this file.
1 #ifndef RUBY_RE_H /*-*-C++-*-vi:se ft=cpp:*/
2 #define RUBY_RE_H 1
13 #include "ruby/internal/config.h"
14 
15 #ifdef HAVE_SYS_TYPES_H
16 # include <sys/types.h>
17 #endif
18 
19 #include <stdio.h>
20 
21 #include "ruby/onigmo.h"
22 #include "ruby/regex.h"
25 
26 struct re_registers; /* Defined in onigmo.h */
27 
29 
30 
38 
62 long rb_reg_search(VALUE re, VALUE str, long pos, int dir);
63 
82 VALUE rb_reg_regsub(VALUE repl, VALUE src, struct re_registers *regs, VALUE rexp);
83 
97 long rb_reg_adjust_startpos(VALUE re, VALUE str, long pos, int dir);
98 
107 
128 
149 OnigPosition rb_reg_onig_match(VALUE re, VALUE str,
150  OnigPosition (*match)(regex_t *reg, VALUE str, struct re_registers *regs, void *args),
151  void *args, struct re_registers *regs);
152 
168 int rb_reg_region_copy(struct re_registers *dst, const struct re_registers *src);
169 
171 
172 #endif /* RUBY_RE_H */
Tweaking visibility of C variables/functions.
#define RBIMPL_SYMBOL_EXPORT_END()
Counterpart of RBIMPL_SYMBOL_EXPORT_BEGIN.
Definition: dllexport.h:74
#define RBIMPL_SYMBOL_EXPORT_BEGIN()
Shortcut macro equivalent to RUBY_SYMBOL_EXPORT_BEGIN extern "C" {.
Definition: dllexport.h:65
regex_t * rb_reg_prepare_re(VALUE re, VALUE str)
Exercises various checks and preprocesses so that the given regular expression can be applied to the ...
Definition: re.c:1635
long rb_reg_search(VALUE re, VALUE str, long pos, int dir)
Runs the passed regular expression over the passed string.
Definition: re.c:1844
long rb_reg_adjust_startpos(VALUE re, VALUE str, long pos, int dir)
Tell us if this is a wrong idea, but it seems this function has no usage at all.
Definition: re.c:1739
OnigPosition rb_reg_onig_match(VALUE re, VALUE str, OnigPosition(*match)(regex_t *reg, VALUE str, struct re_registers *regs, void *args), void *args, struct re_registers *regs)
Runs a regular expression match using function match.
Definition: re.c:1703
VALUE rb_reg_regcomp(VALUE str)
Creates a new instance of rb_cRegexp.
Definition: re.c:3479
VALUE rb_reg_quote(VALUE str)
Escapes any characters that would have special meaning in a regular expression.
Definition: re.c:4078
VALUE rb_reg_regsub(VALUE repl, VALUE src, struct re_registers *regs, VALUE rexp)
Substitution.
Definition: re.c:4442
int rb_reg_region_copy(struct re_registers *dst, const struct re_registers *src)
Duplicates a match data.
Definition: re.c:984
Defines struct RMatch.
uintptr_t VALUE
Type that represents a Ruby object.
Definition: value.h:40