mirror of
https://github.com/ruby/ruby.git
synced 2025-08-15 13:39:04 +02:00
Support OP_REPEAT and OP_REPEAT_INC
This commit is contained in:
parent
ea3d9893bf
commit
f25bb291b4
3 changed files with 196 additions and 43 deletions
19
regint.h
19
regint.h
|
@ -872,6 +872,14 @@ typedef struct _OnigStackType {
|
|||
} u;
|
||||
} OnigStackType;
|
||||
|
||||
#ifdef USE_CACHE_MATCH_OPT
|
||||
typedef struct {
|
||||
UChar *addr;
|
||||
int num;
|
||||
int outer_repeat;
|
||||
} OnigCacheIndex;
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
void* stack_p;
|
||||
size_t stack_n;
|
||||
|
@ -895,11 +903,12 @@ typedef struct {
|
|||
uint64_t end_time;
|
||||
#endif
|
||||
#ifdef USE_CACHE_MATCH_OPT
|
||||
int num_fail;
|
||||
int enable_cache_match_opt;
|
||||
int num_cache_opcode;
|
||||
UChar** cache_index_table; /* array of pointer to p (regex program) */
|
||||
uint8_t *match_cache;
|
||||
int num_fail;
|
||||
int enable_cache_match_opt;
|
||||
int num_cache_opcode;
|
||||
int num_cache_table;
|
||||
OnigCacheIndex *cache_index_table;
|
||||
uint8_t *match_cache;
|
||||
#endif
|
||||
} OnigMatchArg;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue