Ruby  2.5.0dev(2017-10-22revision60238)
Data Structures | Macros | Typedefs | Enumerations | Functions
regint.h File Reference
#include "ruby/ruby.h"
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <stddef.h>
#include "regenc.h"
#include "ruby/st.h"
#include "config.h"
#include "st.h"

Go to the source code of this file.

Data Structures

struct  _BBuf
 
struct  NodeBase
 
struct  CClassNode
 
struct  _OnigStackType
 
struct  OnigMatchArg
 
struct  OnigEndCallListItem
 

Macros

#define UNALIGNED_WORD_ACCESS   0
 
#define USE_NAMED_GROUP
 
#define USE_SUBEXP_CALL
 
#define USE_PERL_SUBEXP_CALL
 
#define USE_CAPITAL_P_NAMED_GROUP
 
#define USE_BACKREF_WITH_LEVEL   /* \k<name+n>, \k<name-n> */
 
#define USE_MONOMANIAC_CHECK_CAPTURES_IN_ENDLESS_REPEAT   /* /(?:()|())*\2/ */
 
#define USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE   /* /\n$/ =~ "\n" */
 
#define USE_WARNING_REDUNDANT_NESTED_REPEAT_OPERATOR
 
#define USE_NO_INVALID_QUANTIFIER
 
#define USE_QTFR_PEEK_NEXT
 
#define USE_ST_LIBRARY
 
#define USE_SUNDAY_QUICK_SEARCH
 
#define INIT_MATCH_STACK_SIZE   160
 
#define DEFAULT_MATCH_STACK_LIMIT_SIZE   0 /* unlimited */
 
#define DEFAULT_PARSE_DEPTH_LIMIT   4096
 
#define OPT_EXACT_MAXLEN   24
 
#define ARG_UNUSED
 
#define USE_WORD_BEGIN_END   /* "<": word-begin, ">": word-end */
 
#define USE_CAPTURE_HISTORY
 
#define USE_VARIABLE_META_CHARS
 
#define USE_FIND_LONGEST_SEARCH_ALL_OF_RANGE
 
#define xmalloc   malloc
 
#define xrealloc   realloc
 
#define xcalloc   calloc
 
#define xfree   free
 
#define CHECK_INTERRUPT_IN_MATCH_AT
 
#define st_init_table   onig_st_init_table
 
#define st_init_table_with_size   onig_st_init_table_with_size
 
#define st_init_numtable   onig_st_init_numtable
 
#define st_init_numtable_with_size   onig_st_init_numtable_with_size
 
#define st_init_strtable   onig_st_init_strtable
 
#define st_init_strtable_with_size   onig_st_init_strtable_with_size
 
#define st_delete   onig_st_delete
 
#define st_delete_safe   onig_st_delete_safe
 
#define st_insert   onig_st_insert
 
#define st_lookup   onig_st_lookup
 
#define st_foreach   onig_st_foreach
 
#define st_add_direct   onig_st_add_direct
 
#define st_free_table   onig_st_free_table
 
#define st_cleanup_safe   onig_st_cleanup_safe
 
#define st_copy   onig_st_copy
 
#define st_nothing_key_clone   onig_st_nothing_key_clone
 
#define st_nothing_key_free   onig_st_nothing_key_free
 
#define onig_st_is_member   st_is_member
 
#define STATE_CHECK_STRING_THRESHOLD_LEN   7
 
#define STATE_CHECK_BUFF_MAX_SIZE   0x4000
 
#define xmemset   memset
 
#define xmemcpy   memcpy
 
#define xmemmove   memmove
 
#define xalloca   alloca
 
#define xvsnprintf   vsnprintf
 
#define xsnprintf   snprintf
 
#define xstrcat(dest, src, size)   strcat(dest,src)
 
#define PRIdPTR   "ld"
 
#define PRIuPTR   "lu"
 
#define PRIxPTR   "lx"
 
#define PRIdPTRDIFF   PRIdPTR
 
#define MIN(a, b)   (((a)>(b))?(b):(a))
 
#define MAX(a, b)   (((a)<(b))?(b):(a))
 
#define IS_NULL(p)   (((void*)(p)) == (void*)0)
 
#define IS_NOT_NULL(p)   (((void*)(p)) != (void*)0)
 
#define CHECK_NULL_RETURN(p)   if (IS_NULL(p)) return NULL
 
#define CHECK_NULL_RETURN_MEMERR(p)   if (IS_NULL(p)) return ONIGERR_MEMORY
 
#define NULL_UCHARP   ((UChar* )0)
 
#define ONIG_LAST_CODE_POINT   (~((OnigCodePoint )0))
 
#define PLATFORM_GET_INC(val, p, type)
 
#define WORD_ALIGNMENT_SIZE   SIZEOF_LONG
 
#define GET_ALIGNMENT_PAD_SIZE(addr, pad_size)
 
#define ALIGNMENT_RIGHT(addr)
 
#define STACK_POP_LEVEL_FREE   0
 
#define STACK_POP_LEVEL_MEM_START   1
 
#define STACK_POP_LEVEL_ALL   2
 
#define ONIG_OPTIMIZE_NONE   0
 
#define ONIG_OPTIMIZE_EXACT   1 /* Slow Search */
 
#define ONIG_OPTIMIZE_EXACT_BM   2 /* Boyer Moore Search */
 
#define ONIG_OPTIMIZE_EXACT_BM_NOT_REV   3 /* BM (applied to a multibyte string) */
 
#define ONIG_OPTIMIZE_EXACT_IC   4 /* Slow Search (ignore case) */
 
#define ONIG_OPTIMIZE_MAP   5 /* char map */
 
#define ONIG_OPTIMIZE_EXACT_BM_IC   6 /* BM (ignore case) */
 
#define ONIG_OPTIMIZE_EXACT_BM_NOT_REV_IC   7 /* BM (applied to a multibyte string) (ignore case) */
 
#define BIT_STATUS_BITS_NUM   (sizeof(BitStatusType) * 8)
 
#define BIT_STATUS_CLEAR(stats)   (stats) = 0
 
#define BIT_STATUS_ON_ALL(stats)   (stats) = ~((BitStatusType )0)
 
#define BIT_STATUS_AT(stats, n)   ((n) < (int )BIT_STATUS_BITS_NUM ? ((stats) & ((BitStatusType )1 << n)) : ((stats) & 1))
 
#define BIT_STATUS_ON_AT(stats, n)
 
#define BIT_STATUS_ON_AT_SIMPLE(stats, n)
 
#define INT_MAX_LIMIT   ((1UL << (SIZEOF_INT * 8 - 1)) - 1)
 
#define DIGITVAL(code)   ((code) - '0')
 
#define ODIGITVAL(code)   DIGITVAL(code)
 
#define XDIGITVAL(enc, code)
 
#define IS_SINGLELINE(option)   ((option) & ONIG_OPTION_SINGLELINE)
 
#define IS_MULTILINE(option)   ((option) & ONIG_OPTION_MULTILINE)
 
#define IS_IGNORECASE(option)   ((option) & ONIG_OPTION_IGNORECASE)
 
#define IS_EXTEND(option)   ((option) & ONIG_OPTION_EXTEND)
 
#define IS_FIND_LONGEST(option)   ((option) & ONIG_OPTION_FIND_LONGEST)
 
#define IS_FIND_NOT_EMPTY(option)   ((option) & ONIG_OPTION_FIND_NOT_EMPTY)
 
#define IS_FIND_CONDITION(option)
 
#define IS_NOTBOL(option)   ((option) & ONIG_OPTION_NOTBOL)
 
#define IS_NOTEOL(option)   ((option) & ONIG_OPTION_NOTEOL)
 
#define IS_NOTBOS(option)   ((option) & ONIG_OPTION_NOTBOS)
 
#define IS_NOTEOS(option)   ((option) & ONIG_OPTION_NOTEOS)
 
#define IS_ASCII_RANGE(option)   ((option) & ONIG_OPTION_ASCII_RANGE)
 
#define IS_POSIX_BRACKET_ALL_RANGE(option)   ((option) & ONIG_OPTION_POSIX_BRACKET_ALL_RANGE)
 
#define IS_WORD_BOUND_ALL_RANGE(option)   ((option) & ONIG_OPTION_WORD_BOUND_ALL_RANGE)
 
#define IS_NEWLINE_CRLF(option)   ((option) & ONIG_OPTION_NEWLINE_CRLF)
 
#define IS_DYNAMIC_OPTION(option)   0
 
#define DISABLE_CASE_FOLD_MULTI_CHAR(case_fold_flag)   ((case_fold_flag) & ~INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR)
 
#define REPEAT_INFINITE   -1
 
#define IS_REPEAT_INFINITE(n)   ((n) == REPEAT_INFINITE)
 
#define BITS_PER_BYTE   8
 
#define SINGLE_BYTE_SIZE   (1 << BITS_PER_BYTE)
 
#define BITS_IN_ROOM   ((int )sizeof(Bits) * BITS_PER_BYTE)
 
#define BITSET_SIZE   (SINGLE_BYTE_SIZE / BITS_IN_ROOM)
 
#define SIZE_BITSET   (int )sizeof(BitSet)
 
#define BITSET_CLEAR(bs)
 
#define BS_ROOM(bs, pos)   (bs)[(int )(pos) / BITS_IN_ROOM]
 
#define BS_BIT(pos)   (1U << ((int )(pos) % BITS_IN_ROOM))
 
#define BITSET_AT(bs, pos)   (BS_ROOM(bs,pos) & BS_BIT(pos))
 
#define BITSET_SET_BIT(bs, pos)   BS_ROOM(bs,pos) |= BS_BIT(pos)
 
#define BITSET_CLEAR_BIT(bs, pos)   BS_ROOM(bs,pos) &= ~(BS_BIT(pos))
 
#define BITSET_INVERT_BIT(bs, pos)   BS_ROOM(bs,pos) ^= BS_BIT(pos)
 
#define BBUF_INIT(buf, size)   onig_bbuf_init((BBuf* )(buf), (size))
 
#define BBUF_SIZE_INC(buf, inc)
 
#define BBUF_EXPAND(buf, low)
 
#define BBUF_ENSURE_SIZE(buf, size)
 
#define BBUF_WRITE(buf, pos, bytes, n)
 
#define BBUF_WRITE1(buf, pos, byte)
 
#define BBUF_ADD(buf, bytes, n)   BBUF_WRITE((buf),(buf)->used,(bytes),(n))
 
#define BBUF_ADD1(buf, byte)   BBUF_WRITE1((buf),(buf)->used,(byte))
 
#define BBUF_GET_ADD_ADDRESS(buf)   ((buf)->p + (buf)->used)
 
#define BBUF_GET_OFFSET_POS(buf)   ((buf)->used)
 
#define BBUF_MOVE_RIGHT(buf, from, to, n)
 
#define BBUF_MOVE_LEFT(buf, from, to, n)
 
#define BBUF_MOVE_LEFT_REDUCE(buf, from, to)
 
#define BBUF_INSERT(buf, pos, bytes, n)
 
#define BBUF_GET_BYTE(buf, pos)   (buf)->p[(pos)]
 
#define ANCHOR_BEGIN_BUF   (1<<0)
 
#define ANCHOR_BEGIN_LINE   (1<<1)
 
#define ANCHOR_BEGIN_POSITION   (1<<2)
 
#define ANCHOR_END_BUF   (1<<3)
 
#define ANCHOR_SEMI_END_BUF   (1<<4)
 
#define ANCHOR_END_LINE   (1<<5)
 
#define ANCHOR_WORD_BOUND   (1<<6)
 
#define ANCHOR_NOT_WORD_BOUND   (1<<7)
 
#define ANCHOR_WORD_BEGIN   (1<<8)
 
#define ANCHOR_WORD_END   (1<<9)
 
#define ANCHOR_PREC_READ   (1<<10)
 
#define ANCHOR_PREC_READ_NOT   (1<<11)
 
#define ANCHOR_LOOK_BEHIND   (1<<12)
 
#define ANCHOR_LOOK_BEHIND_NOT   (1<<13)
 
#define ANCHOR_ANYCHAR_STAR   (1<<14) /* ".*" optimize info */
 
#define ANCHOR_ANYCHAR_STAR_ML   (1<<15) /* ".*" optimize info (multi-line) */
 
#define ANCHOR_KEEP   (1<<16)
 
#define SIZE_OPCODE   1
 
#define SIZE_RELADDR   (int )sizeof(RelAddrType)
 
#define SIZE_ABSADDR   (int )sizeof(AbsAddrType)
 
#define SIZE_LENGTH   (int )sizeof(LengthType)
 
#define SIZE_MEMNUM   (int )sizeof(MemNumType)
 
#define SIZE_STATE_CHECK_NUM   (int )sizeof(StateCheckNumType)
 
#define SIZE_REPEATNUM   (int )sizeof(RepeatNumType)
 
#define SIZE_OPTION   (int )sizeof(OnigOptionType)
 
#define SIZE_CODE_POINT   (int )sizeof(OnigCodePoint)
 
#define SIZE_POINTER   (int )sizeof(PointerType)
 
#define GET_RELADDR_INC(addr, p)   PLATFORM_GET_INC(addr, p, RelAddrType)
 
#define GET_ABSADDR_INC(addr, p)   PLATFORM_GET_INC(addr, p, AbsAddrType)
 
#define GET_LENGTH_INC(len, p)   PLATFORM_GET_INC(len, p, LengthType)
 
#define GET_MEMNUM_INC(num, p)   PLATFORM_GET_INC(num, p, MemNumType)
 
#define GET_REPEATNUM_INC(num, p)   PLATFORM_GET_INC(num, p, RepeatNumType)
 
#define GET_OPTION_INC(option, p)   PLATFORM_GET_INC(option, p, OnigOptionType)
 
#define GET_POINTER_INC(ptr, p)   PLATFORM_GET_INC(ptr, p, PointerType)
 
#define GET_STATE_CHECK_NUM_INC(num, p)   PLATFORM_GET_INC(num, p, StateCheckNumType)
 
#define GET_CODE_POINT(code, p)   code = *((OnigCodePoint* )(p))
 
#define GET_BYTE_INC(byte, p)
 
#define SIZE_OP_ANYCHAR_STAR   SIZE_OPCODE
 
#define SIZE_OP_ANYCHAR_STAR_PEEK_NEXT   (SIZE_OPCODE + 1)
 
#define SIZE_OP_JUMP   (SIZE_OPCODE + SIZE_RELADDR)
 
#define SIZE_OP_PUSH   (SIZE_OPCODE + SIZE_RELADDR)
 
#define SIZE_OP_POP   SIZE_OPCODE
 
#define SIZE_OP_PUSH_OR_JUMP_EXACT1   (SIZE_OPCODE + SIZE_RELADDR + 1)
 
#define SIZE_OP_PUSH_IF_PEEK_NEXT   (SIZE_OPCODE + SIZE_RELADDR + 1)
 
#define SIZE_OP_REPEAT_INC   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_REPEAT_INC_NG   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_PUSH_POS   SIZE_OPCODE
 
#define SIZE_OP_PUSH_POS_NOT   (SIZE_OPCODE + SIZE_RELADDR)
 
#define SIZE_OP_POP_POS   SIZE_OPCODE
 
#define SIZE_OP_FAIL_POS   SIZE_OPCODE
 
#define SIZE_OP_SET_OPTION   (SIZE_OPCODE + SIZE_OPTION)
 
#define SIZE_OP_SET_OPTION_PUSH   (SIZE_OPCODE + SIZE_OPTION)
 
#define SIZE_OP_FAIL   SIZE_OPCODE
 
#define SIZE_OP_MEMORY_START   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_MEMORY_START_PUSH   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_MEMORY_END_PUSH   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_MEMORY_END_PUSH_REC   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_MEMORY_END   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_MEMORY_END_REC   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_PUSH_STOP_BT   SIZE_OPCODE
 
#define SIZE_OP_POP_STOP_BT   SIZE_OPCODE
 
#define SIZE_OP_NULL_CHECK_START   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_NULL_CHECK_END   (SIZE_OPCODE + SIZE_MEMNUM)
 
#define SIZE_OP_LOOK_BEHIND   (SIZE_OPCODE + SIZE_LENGTH)
 
#define SIZE_OP_PUSH_LOOK_BEHIND_NOT   (SIZE_OPCODE + SIZE_RELADDR + SIZE_LENGTH)
 
#define SIZE_OP_FAIL_LOOK_BEHIND_NOT   SIZE_OPCODE
 
#define SIZE_OP_CALL   (SIZE_OPCODE + SIZE_ABSADDR)
 
#define SIZE_OP_RETURN   SIZE_OPCODE
 
#define SIZE_OP_CONDITION   (SIZE_OPCODE + SIZE_MEMNUM + SIZE_RELADDR)
 
#define SIZE_OP_PUSH_ABSENT_POS   SIZE_OPCODE
 
#define SIZE_OP_ABSENT   (SIZE_OPCODE + SIZE_RELADDR)
 
#define SIZE_OP_ABSENT_END   SIZE_OPCODE
 
#define MC_ESC(syn)   (syn)->meta_char_table.esc
 
#define MC_ANYCHAR(syn)   (syn)->meta_char_table.anychar
 
#define MC_ANYTIME(syn)   (syn)->meta_char_table.anytime
 
#define MC_ZERO_OR_ONE_TIME(syn)   (syn)->meta_char_table.zero_or_one_time
 
#define MC_ONE_OR_MORE_TIME(syn)   (syn)->meta_char_table.one_or_more_time
 
#define MC_ANYCHAR_ANYTIME(syn)   (syn)->meta_char_table.anychar_anytime
 
#define IS_MC_ESC_CODE(code, syn)
 
#define SYN_POSIX_COMMON_OP
 
#define SYN_GNU_REGEX_OP
 
#define SYN_GNU_REGEX_BV
 
#define NCCLASS_FLAGS(cc)   ((cc)->flags)
 
#define NCCLASS_FLAG_SET(cc, flag)   (NCCLASS_FLAGS(cc) |= (flag))
 
#define NCCLASS_FLAG_CLEAR(cc, flag)   (NCCLASS_FLAGS(cc) &= ~(flag))
 
#define IS_NCCLASS_FLAG_ON(cc, flag)   ((NCCLASS_FLAGS(cc) & (flag)) != 0)
 
#define FLAG_NCCLASS_NOT   (1<<0)
 
#define NCCLASS_SET_NOT(nd)   NCCLASS_FLAG_SET(nd, FLAG_NCCLASS_NOT)
 
#define NCCLASS_CLEAR_NOT(nd)   NCCLASS_FLAG_CLEAR(nd, FLAG_NCCLASS_NOT)
 
#define IS_NCCLASS_NOT(nd)   IS_NCCLASS_FLAG_ON(nd, FLAG_NCCLASS_NOT)
 
#define IS_CODE_SB_WORD(enc, code)   (ONIGENC_IS_CODE_ASCII(code) && ONIGENC_IS_CODE_WORD(enc,code))
 

Typedefs

typedef unsigned int BitStatusType
 
typedef unsigned char Bits
 
typedef Bits BitSet[BITSET_SIZE]
 
typedef BitsBitSetRef
 
typedef struct _BBuf BBuf
 
typedef int RelAddrType
 
typedef int AbsAddrType
 
typedef int LengthType
 
typedef int RepeatNumType
 
typedef short int MemNumType
 
typedef short int StateCheckNumType
 
typedef void * PointerType
 
typedef intptr_t OnigStackIndex
 
typedef struct _OnigStackType OnigStackType
 
typedef struct OnigEndCallListItem OnigEndCallListItemType
 
typedef void hash_table_type
 
typedef st_data_t hash_data_type
 

Enumerations

enum  OpCode {
  OP_FINISH = 0, OP_END = 1, OP_EXACT1 = 2, OP_EXACT2,
  OP_EXACT3, OP_EXACT4, OP_EXACT5, OP_EXACTN,
  OP_EXACTMB2N1, OP_EXACTMB2N2, OP_EXACTMB2N3, OP_EXACTMB2N,
  OP_EXACTMB3N, OP_EXACTMBN, OP_EXACT1_IC, OP_EXACTN_IC,
  OP_CCLASS, OP_CCLASS_MB, OP_CCLASS_MIX, OP_CCLASS_NOT,
  OP_CCLASS_MB_NOT, OP_CCLASS_MIX_NOT, OP_ANYCHAR, OP_ANYCHAR_ML,
  OP_ANYCHAR_STAR, OP_ANYCHAR_ML_STAR, OP_ANYCHAR_STAR_PEEK_NEXT, OP_ANYCHAR_ML_STAR_PEEK_NEXT,
  OP_WORD, OP_NOT_WORD, OP_WORD_BOUND, OP_NOT_WORD_BOUND,
  OP_WORD_BEGIN, OP_WORD_END, OP_ASCII_WORD, OP_NOT_ASCII_WORD,
  OP_ASCII_WORD_BOUND, OP_NOT_ASCII_WORD_BOUND, OP_ASCII_WORD_BEGIN, OP_ASCII_WORD_END,
  OP_BEGIN_BUF, OP_END_BUF, OP_BEGIN_LINE, OP_END_LINE,
  OP_SEMI_END_BUF, OP_BEGIN_POSITION, OP_BACKREF1, OP_BACKREF2,
  OP_BACKREFN, OP_BACKREFN_IC, OP_BACKREF_MULTI, OP_BACKREF_MULTI_IC,
  OP_BACKREF_WITH_LEVEL, OP_MEMORY_START, OP_MEMORY_START_PUSH, OP_MEMORY_END_PUSH,
  OP_MEMORY_END_PUSH_REC, OP_MEMORY_END, OP_MEMORY_END_REC, OP_KEEP,
  OP_FAIL, OP_JUMP, OP_PUSH, OP_POP,
  OP_PUSH_OR_JUMP_EXACT1, OP_PUSH_IF_PEEK_NEXT, OP_REPEAT, OP_REPEAT_NG,
  OP_REPEAT_INC, OP_REPEAT_INC_NG, OP_REPEAT_INC_SG, OP_REPEAT_INC_NG_SG,
  OP_NULL_CHECK_START, OP_NULL_CHECK_END, OP_NULL_CHECK_END_MEMST, OP_NULL_CHECK_END_MEMST_PUSH,
  OP_PUSH_POS, OP_POP_POS, OP_PUSH_POS_NOT, OP_FAIL_POS,
  OP_PUSH_STOP_BT, OP_POP_STOP_BT, OP_LOOK_BEHIND, OP_PUSH_LOOK_BEHIND_NOT,
  OP_FAIL_LOOK_BEHIND_NOT, OP_PUSH_ABSENT_POS, OP_ABSENT, OP_ABSENT_END,
  OP_CALL, OP_RETURN, OP_CONDITION, OP_STATE_CHECK_PUSH,
  OP_STATE_CHECK_PUSH_OR_JUMP, OP_STATE_CHECK, OP_STATE_CHECK_ANYCHAR_STAR, OP_STATE_CHECK_ANYCHAR_ML_STAR,
  OP_SET_OPTION_PUSH, OP_SET_OPTION
}
 

Functions

void onig_add_end_call (void(*func)(void))
 
UCharonig_error_code_to_format (OnigPosition code)
 
void onig_vsnprintf_with_pattern (UChar buf[], int bufsize, OnigEncoding enc, UChar *pat, UChar *pat_end, const UChar *fmt, va_list args)
 
void onig_snprintf_with_pattern (UChar buf[], int bufsize, OnigEncoding enc, UChar *pat, UChar *pat_end, const UChar *fmt,...)
 
int onig_bbuf_init (BBuf *buf, OnigDistance size)
 
int onig_compile (regex_t *reg, const UChar *pattern, const UChar *pattern_end, OnigErrorInfo *einfo)
 
void onig_transfer (regex_t *to, regex_t *from)
 
int onig_is_code_in_cc (OnigEncoding enc, OnigCodePoint code, CClassNode *cc)
 
int onig_is_code_in_cc_len (int enclen, OnigCodePoint code, CClassNode *cc)
 
hash_table_typeonig_st_init_strend_table_with_size (st_index_t size)
 
int onig_st_lookup_strend (hash_table_type *table, const UChar *str_key, const UChar *end_key, hash_data_type *value)
 
int onig_st_insert_strend (hash_table_type *table, const UChar *str_key, const UChar *end_key, hash_data_type value)
 

Macro Definition Documentation

◆ ALIGNMENT_RIGHT

#define ALIGNMENT_RIGHT (   addr)
Value:
do {\
(addr) += (WORD_ALIGNMENT_SIZE - 1);\
(addr) -= ((uintptr_t )(addr) % WORD_ALIGNMENT_SIZE);\
} while (0)
#define WORD_ALIGNMENT_SIZE
Definition: regint.h:321
unsigned int uintptr_t
Definition: win32.h:106

Definition at line 329 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_ANYCHAR_STAR

#define ANCHOR_ANYCHAR_STAR   (1<<14) /* ".*" optimize info */

Definition at line 543 of file regint.h.

◆ ANCHOR_ANYCHAR_STAR_ML

#define ANCHOR_ANYCHAR_STAR_ML   (1<<15) /* ".*" optimize info (multi-line) */

Definition at line 544 of file regint.h.

◆ ANCHOR_BEGIN_BUF

#define ANCHOR_BEGIN_BUF   (1<<0)

Definition at line 527 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_BEGIN_LINE

#define ANCHOR_BEGIN_LINE   (1<<1)

Definition at line 528 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_BEGIN_POSITION

#define ANCHOR_BEGIN_POSITION   (1<<2)

Definition at line 529 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_END_BUF

#define ANCHOR_END_BUF   (1<<3)

Definition at line 530 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_END_LINE

#define ANCHOR_END_LINE   (1<<5)

Definition at line 532 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_KEEP

#define ANCHOR_KEEP   (1<<16)

Definition at line 546 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_LOOK_BEHIND

#define ANCHOR_LOOK_BEHIND   (1<<12)

Definition at line 540 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_LOOK_BEHIND_NOT

#define ANCHOR_LOOK_BEHIND_NOT   (1<<13)

Definition at line 541 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_NOT_WORD_BOUND

#define ANCHOR_NOT_WORD_BOUND   (1<<7)

Definition at line 535 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_PREC_READ

#define ANCHOR_PREC_READ   (1<<10)

Definition at line 538 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_PREC_READ_NOT

#define ANCHOR_PREC_READ_NOT   (1<<11)

Definition at line 539 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_SEMI_END_BUF

#define ANCHOR_SEMI_END_BUF   (1<<4)

Definition at line 531 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_WORD_BEGIN

#define ANCHOR_WORD_BEGIN   (1<<8)

Definition at line 536 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_WORD_BOUND

#define ANCHOR_WORD_BOUND   (1<<6)

Definition at line 534 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ANCHOR_WORD_END

#define ANCHOR_WORD_END   (1<<9)

Definition at line 537 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ ARG_UNUSED

#define ARG_UNUSED

Definition at line 102 of file regint.h.

◆ BBUF_ADD

#define BBUF_ADD (   buf,
  bytes,
 
)    BBUF_WRITE((buf),(buf)->used,(bytes),(n))

Definition at line 491 of file regint.h.

◆ BBUF_ADD1

#define BBUF_ADD1 (   buf,
  byte 
)    BBUF_WRITE1((buf),(buf)->used,(byte))

Definition at line 492 of file regint.h.

◆ BBUF_ENSURE_SIZE

#define BBUF_ENSURE_SIZE (   buf,
  size 
)
Value:
do{\
unsigned int new_alloc = (buf)->alloc;\
while (new_alloc < (unsigned int )(size)) { new_alloc *= 2; }\
if ((buf)->alloc != new_alloc) {\
UChar *tmp;\
tmp = (UChar* )xrealloc((buf)->p, new_alloc);\
if (IS_NULL(tmp)) return(ONIGERR_MEMORY);\
(buf)->p = tmp;\
(buf)->alloc = new_alloc;\
}\
} while (0)
#define IS_NULL(p)
Definition: regint.h:298
#define UChar
Definition: onigmo.h:76
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309
int size
Definition: encoding.c:57
#define ONIGERR_MEMORY
Definition: onigmo.h:629
#define xrealloc
Definition: regint.h:144

Definition at line 465 of file regint.h.

◆ BBUF_EXPAND

#define BBUF_EXPAND (   buf,
  low 
)
Value:
do{\
UChar *tmp;\
do { (buf)->alloc *= 2; } while ((buf)->alloc < (unsigned int )low);\
tmp = (UChar* )xrealloc((buf)->p, (buf)->alloc);\
if (IS_NULL(tmp)) return(ONIGERR_MEMORY);\
(buf)->p = tmp;\
} while (0)
#define IS_NULL(p)
Definition: regint.h:298
#define UChar
Definition: onigmo.h:76
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309
#define ONIGERR_MEMORY
Definition: onigmo.h:629
#define xrealloc
Definition: regint.h:144

Definition at line 457 of file regint.h.

◆ BBUF_GET_ADD_ADDRESS

#define BBUF_GET_ADD_ADDRESS (   buf)    ((buf)->p + (buf)->used)

Definition at line 493 of file regint.h.

◆ BBUF_GET_BYTE

#define BBUF_GET_BYTE (   buf,
  pos 
)    (buf)->p[(pos)]

Definition at line 524 of file regint.h.

◆ BBUF_GET_OFFSET_POS

#define BBUF_GET_OFFSET_POS (   buf)    ((buf)->used)

Definition at line 494 of file regint.h.

◆ BBUF_INIT

#define BBUF_INIT (   buf,
  size 
)    onig_bbuf_init((BBuf* )(buf), (size))

Definition at line 447 of file regint.h.

Referenced by onig_compile_ruby().

◆ BBUF_INSERT

#define BBUF_INSERT (   buf,
  pos,
  bytes,
 
)
Value:
do {\
if (pos >= (buf)->used) {\
BBUF_WRITE(buf,pos,bytes,n);\
}\
else {\
BBUF_MOVE_RIGHT((buf),(pos),(pos) + (n),((buf)->used - (pos)));\
xmemcpy((buf)->p + (pos), (bytes), (n));\
}\
} while (0)
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309

Definition at line 514 of file regint.h.

◆ BBUF_MOVE_LEFT

#define BBUF_MOVE_LEFT (   buf,
  from,
  to,
 
)
Value:
do {\
xmemmove((buf)->p + (to), (buf)->p + (from), (n));\
} while (0)
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309

Definition at line 504 of file regint.h.

◆ BBUF_MOVE_LEFT_REDUCE

#define BBUF_MOVE_LEFT_REDUCE (   buf,
  from,
  to 
)
Value:
do {\
xmemmove((buf)->p + (to), (buf)->p + (from), (buf)->used - (from));\
(buf)->used -= (from - to);\
} while (0)
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309

Definition at line 509 of file regint.h.

◆ BBUF_MOVE_RIGHT

#define BBUF_MOVE_RIGHT (   buf,
  from,
  to,
 
)
Value:
do {\
if ((unsigned int )((to)+(n)) > (buf)->alloc) BBUF_EXPAND((buf),(to) + (n));\
xmemmove((buf)->p + (to), (buf)->p + (from), (n));\
if ((unsigned int )((to)+(n)) > (buf)->used) (buf)->used = (to) + (n);\
} while (0)
#define BBUF_EXPAND(buf, low)
Definition: regint.h:457
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309

Definition at line 497 of file regint.h.

◆ BBUF_SIZE_INC

#define BBUF_SIZE_INC (   buf,
  inc 
)
Value:
do{\
UChar *tmp;\
(buf)->alloc += (inc);\
tmp = (UChar* )xrealloc((buf)->p, (buf)->alloc);\
if (IS_NULL(tmp)) return(ONIGERR_MEMORY);\
(buf)->p = tmp;\
} while (0)
#define IS_NULL(p)
Definition: regint.h:298
#define UChar
Definition: onigmo.h:76
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309
#define ONIGERR_MEMORY
Definition: onigmo.h:629
#define xrealloc
Definition: regint.h:144

Definition at line 449 of file regint.h.

◆ BBUF_WRITE

#define BBUF_WRITE (   buf,
  pos,
  bytes,
 
)
Value:
do{\
int used = (pos) + (int )(n);\
if ((buf)->alloc < (unsigned int )used) BBUF_EXPAND((buf),used);\
xmemcpy((buf)->p + (pos), (bytes), (n));\
if ((buf)->used < (unsigned int )used) (buf)->used = used;\
} while (0)
#define BBUF_EXPAND(buf, low)
Definition: regint.h:457
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309

Definition at line 477 of file regint.h.

◆ BBUF_WRITE1

#define BBUF_WRITE1 (   buf,
  pos,
  byte 
)
Value:
do{\
int used = (pos) + 1;\
if ((buf)->alloc < (unsigned int )used) BBUF_EXPAND((buf),used);\
(buf)->p[(pos)] = (UChar )(byte);\
if ((buf)->used < (unsigned int )used) (buf)->used = used;\
} while (0)
#define BBUF_EXPAND(buf, low)
Definition: regint.h:457
#define UChar
Definition: onigmo.h:76
unsigned char buf[MIME_BUF_SIZE]
Definition: nkf.c:4309

Definition at line 484 of file regint.h.

◆ BIT_STATUS_AT

#define BIT_STATUS_AT (   stats,
 
)    ((n) < (int )BIT_STATUS_BITS_NUM ? ((stats) & ((BitStatusType )1 << n)) : ((stats) & 1))

Definition at line 357 of file regint.h.

Referenced by onig_number_of_capture_histories().

◆ BIT_STATUS_BITS_NUM

#define BIT_STATUS_BITS_NUM   (sizeof(BitStatusType) * 8)

Definition at line 354 of file regint.h.

◆ BIT_STATUS_CLEAR

#define BIT_STATUS_CLEAR (   stats)    (stats) = 0

Definition at line 355 of file regint.h.

◆ BIT_STATUS_ON_ALL

#define BIT_STATUS_ON_ALL (   stats)    (stats) = ~((BitStatusType )0)

Definition at line 356 of file regint.h.

◆ BIT_STATUS_ON_AT

#define BIT_STATUS_ON_AT (   stats,
 
)
Value:
do {\
if ((n) < (int )BIT_STATUS_BITS_NUM)\
(stats) |= (1 << (n));\
else\
(stats) |= 1;\
} while (0)
#define BIT_STATUS_BITS_NUM
Definition: regint.h:354

Definition at line 360 of file regint.h.

◆ BIT_STATUS_ON_AT_SIMPLE

#define BIT_STATUS_ON_AT_SIMPLE (   stats,
 
)
Value:
do {\
if ((n) < (int )BIT_STATUS_BITS_NUM)\
(stats) |= (1 << (n));\
} while (0)
#define BIT_STATUS_BITS_NUM
Definition: regint.h:354

Definition at line 367 of file regint.h.

◆ BITS_IN_ROOM

#define BITS_IN_ROOM   ((int )sizeof(Bits) * BITS_PER_BYTE)

Definition at line 414 of file regint.h.

◆ BITS_PER_BYTE

#define BITS_PER_BYTE   8

Definition at line 412 of file regint.h.

◆ BITSET_AT

#define BITSET_AT (   bs,
  pos 
)    (BS_ROOM(bs,pos) & BS_BIT(pos))

Definition at line 435 of file regint.h.

Referenced by onig_is_code_in_cc_len().

◆ BITSET_CLEAR

#define BITSET_CLEAR (   bs)
Value:
do {\
int i;\
for (i = 0; i < BITSET_SIZE; i++) { (bs)[i] = 0; } \
} while (0)
#define BITSET_SIZE
Definition: regint.h:415

Definition at line 427 of file regint.h.

◆ BITSET_CLEAR_BIT

#define BITSET_CLEAR_BIT (   bs,
  pos 
)    BS_ROOM(bs,pos) &= ~(BS_BIT(pos))

Definition at line 437 of file regint.h.

◆ BITSET_INVERT_BIT

#define BITSET_INVERT_BIT (   bs,
  pos 
)    BS_ROOM(bs,pos) ^= BS_BIT(pos)

Definition at line 438 of file regint.h.

◆ BITSET_SET_BIT

#define BITSET_SET_BIT (   bs,
  pos 
)    BS_ROOM(bs,pos) |= BS_BIT(pos)

Definition at line 436 of file regint.h.

◆ BITSET_SIZE

#define BITSET_SIZE   (SINGLE_BYTE_SIZE / BITS_IN_ROOM)

Definition at line 415 of file regint.h.

◆ BS_BIT

#define BS_BIT (   pos)    (1U << ((int )(pos) % BITS_IN_ROOM))

Definition at line 433 of file regint.h.

◆ BS_ROOM

#define BS_ROOM (   bs,
  pos 
)    (bs)[(int )(pos) / BITS_IN_ROOM]

Definition at line 432 of file regint.h.

◆ CHECK_INTERRUPT_IN_MATCH_AT

#define CHECK_INTERRUPT_IN_MATCH_AT

Definition at line 174 of file regint.h.

◆ CHECK_NULL_RETURN

#define CHECK_NULL_RETURN (   p)    if (IS_NULL(p)) return NULL

Definition at line 300 of file regint.h.

◆ CHECK_NULL_RETURN_MEMERR

#define CHECK_NULL_RETURN_MEMERR (   p)    if (IS_NULL(p)) return ONIGERR_MEMORY

Definition at line 301 of file regint.h.

◆ DEFAULT_MATCH_STACK_LIMIT_SIZE

#define DEFAULT_MATCH_STACK_LIMIT_SIZE   0 /* unlimited */

Definition at line 87 of file regint.h.

◆ DEFAULT_PARSE_DEPTH_LIMIT

#define DEFAULT_PARSE_DEPTH_LIMIT   4096

Definition at line 88 of file regint.h.

◆ DIGITVAL

#define DIGITVAL (   code)    ((code) - '0')

Definition at line 375 of file regint.h.

Referenced by onig_scan_unsigned_number().

◆ DISABLE_CASE_FOLD_MULTI_CHAR

#define DISABLE_CASE_FOLD_MULTI_CHAR (   case_fold_flag)    ((case_fold_flag) & ~INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR)

Definition at line 405 of file regint.h.

◆ FLAG_NCCLASS_NOT

#define FLAG_NCCLASS_NOT   (1<<0)

Definition at line 792 of file regint.h.

◆ GET_ABSADDR_INC

#define GET_ABSADDR_INC (   addr,
 
)    PLATFORM_GET_INC(addr, p, AbsAddrType)

Definition at line 688 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ GET_ALIGNMENT_PAD_SIZE

#define GET_ALIGNMENT_PAD_SIZE (   addr,
  pad_size 
)
Value:
do {\
(pad_size) = WORD_ALIGNMENT_SIZE \
- ((uintptr_t )(addr) % WORD_ALIGNMENT_SIZE);\
if ((pad_size) == WORD_ALIGNMENT_SIZE) (pad_size) = 0;\
} while (0)
#define WORD_ALIGNMENT_SIZE
Definition: regint.h:321
unsigned int uintptr_t
Definition: win32.h:106

Definition at line 323 of file regint.h.

◆ GET_BYTE_INC

#define GET_BYTE_INC (   byte,
 
)
Value:
do{\
byte = *(p);\
(p)++;\
} while(0)

Definition at line 698 of file regint.h.

◆ GET_CODE_POINT

#define GET_CODE_POINT (   code,
 
)    code = *((OnigCodePoint* )(p))

Definition at line 697 of file regint.h.

Referenced by onig_is_code_in_cc(), and onig_is_in_code_range().

◆ GET_LENGTH_INC

#define GET_LENGTH_INC (   len,
 
)    PLATFORM_GET_INC(len, p, LengthType)

Definition at line 689 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ GET_MEMNUM_INC

#define GET_MEMNUM_INC (   num,
 
)    PLATFORM_GET_INC(num, p, MemNumType)

Definition at line 690 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ GET_OPTION_INC

#define GET_OPTION_INC (   option,
 
)    PLATFORM_GET_INC(option, p, OnigOptionType)

Definition at line 692 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ GET_POINTER_INC

#define GET_POINTER_INC (   ptr,
 
)    PLATFORM_GET_INC(ptr, p, PointerType)

Definition at line 693 of file regint.h.

◆ GET_RELADDR_INC

#define GET_RELADDR_INC (   addr,
 
)    PLATFORM_GET_INC(addr, p, RelAddrType)

Definition at line 687 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ GET_REPEATNUM_INC

#define GET_REPEATNUM_INC (   num,
 
)    PLATFORM_GET_INC(num, p, RepeatNumType)

Definition at line 691 of file regint.h.

◆ GET_STATE_CHECK_NUM_INC

#define GET_STATE_CHECK_NUM_INC (   num,
 
)    PLATFORM_GET_INC(num, p, StateCheckNumType)

Definition at line 694 of file regint.h.

◆ INIT_MATCH_STACK_SIZE

#define INIT_MATCH_STACK_SIZE   160

Definition at line 86 of file regint.h.

◆ INT_MAX_LIMIT

#define INT_MAX_LIMIT   ((1UL << (SIZEOF_INT * 8 - 1)) - 1)

Definition at line 373 of file regint.h.

Referenced by onig_scan_unsigned_number().

◆ IS_ASCII_RANGE

#define IS_ASCII_RANGE (   option)    ((option) & ONIG_OPTION_ASCII_RANGE)

Definition at line 393 of file regint.h.

◆ IS_CODE_SB_WORD

#define IS_CODE_SB_WORD (   enc,
  code 
)    (ONIGENC_IS_CODE_ASCII(code) && ONIGENC_IS_CODE_WORD(enc,code))

Definition at line 876 of file regint.h.

◆ IS_DYNAMIC_OPTION

#define IS_DYNAMIC_OPTION (   option)    0

Definition at line 403 of file regint.h.

◆ IS_EXTEND

#define IS_EXTEND (   option)    ((option) & ONIG_OPTION_EXTEND)

Definition at line 384 of file regint.h.

◆ IS_FIND_CONDITION

#define IS_FIND_CONDITION (   option)
Value:
((option) & \
#define ONIG_OPTION_FIND_LONGEST
Definition: onigmo.h:456
#define ONIG_OPTION_FIND_NOT_EMPTY
Definition: onigmo.h:457

Definition at line 387 of file regint.h.

◆ IS_FIND_LONGEST

#define IS_FIND_LONGEST (   option)    ((option) & ONIG_OPTION_FIND_LONGEST)

Definition at line 385 of file regint.h.

◆ IS_FIND_NOT_EMPTY

#define IS_FIND_NOT_EMPTY (   option)    ((option) & ONIG_OPTION_FIND_NOT_EMPTY)

Definition at line 386 of file regint.h.

◆ IS_IGNORECASE

#define IS_IGNORECASE (   option)    ((option) & ONIG_OPTION_IGNORECASE)

Definition at line 383 of file regint.h.

◆ IS_MC_ESC_CODE

#define IS_MC_ESC_CODE (   code,
  syn 
)
Value:
((code) == MC_ESC(syn) && \
#define ONIG_SYN_OP2_INEFFECTIVE_ESCAPE
Definition: onigmo.h:572
#define MC_ESC(syn)
Definition: regint.h:748
#define IS_SYNTAX_OP2(syn, opm)
Definition: regparse.h:331

Definition at line 755 of file regint.h.

◆ IS_MULTILINE

#define IS_MULTILINE (   option)    ((option) & ONIG_OPTION_MULTILINE)

Definition at line 382 of file regint.h.

◆ IS_NCCLASS_FLAG_ON

#define IS_NCCLASS_FLAG_ON (   cc,
  flag 
)    ((NCCLASS_FLAGS(cc) & (flag)) != 0)

Definition at line 789 of file regint.h.

◆ IS_NCCLASS_NOT

#define IS_NCCLASS_NOT (   nd)    IS_NCCLASS_FLAG_ON(nd, FLAG_NCCLASS_NOT)

Definition at line 796 of file regint.h.

Referenced by onig_is_code_in_cc(), and onig_is_code_in_cc_len().

◆ IS_NEWLINE_CRLF

#define IS_NEWLINE_CRLF (   option)    ((option) & ONIG_OPTION_NEWLINE_CRLF)

Definition at line 396 of file regint.h.

◆ IS_NOT_NULL

#define IS_NOT_NULL (   p)    (((void*)(p)) != (void*)0)

◆ IS_NOTBOL

#define IS_NOTBOL (   option)    ((option) & ONIG_OPTION_NOTBOL)

Definition at line 389 of file regint.h.

◆ IS_NOTBOS

#define IS_NOTBOS (   option)    ((option) & ONIG_OPTION_NOTBOS)

Definition at line 391 of file regint.h.

◆ IS_NOTEOL

#define IS_NOTEOL (   option)    ((option) & ONIG_OPTION_NOTEOL)

Definition at line 390 of file regint.h.

◆ IS_NOTEOS

#define IS_NOTEOS (   option)    ((option) & ONIG_OPTION_NOTEOS)

Definition at line 392 of file regint.h.

◆ IS_NULL

#define IS_NULL (   p)    (((void*)(p)) == (void*)0)

◆ IS_POSIX_BRACKET_ALL_RANGE

#define IS_POSIX_BRACKET_ALL_RANGE (   option)    ((option) & ONIG_OPTION_POSIX_BRACKET_ALL_RANGE)

Definition at line 394 of file regint.h.

◆ IS_REPEAT_INFINITE

#define IS_REPEAT_INFINITE (   n)    ((n) == REPEAT_INFINITE)

Definition at line 409 of file regint.h.

◆ IS_SINGLELINE

#define IS_SINGLELINE (   option)    ((option) & ONIG_OPTION_SINGLELINE)

Definition at line 381 of file regint.h.

◆ IS_WORD_BOUND_ALL_RANGE

#define IS_WORD_BOUND_ALL_RANGE (   option)    ((option) & ONIG_OPTION_WORD_BOUND_ALL_RANGE)

Definition at line 395 of file regint.h.

◆ MAX

#define MAX (   a,
 
)    (((a)<(b))?(b):(a))

Definition at line 296 of file regint.h.

◆ MC_ANYCHAR

#define MC_ANYCHAR (   syn)    (syn)->meta_char_table.anychar

Definition at line 749 of file regint.h.

◆ MC_ANYCHAR_ANYTIME

#define MC_ANYCHAR_ANYTIME (   syn)    (syn)->meta_char_table.anychar_anytime

Definition at line 753 of file regint.h.

◆ MC_ANYTIME

#define MC_ANYTIME (   syn)    (syn)->meta_char_table.anytime

Definition at line 750 of file regint.h.

◆ MC_ESC

#define MC_ESC (   syn)    (syn)->meta_char_table.esc

Definition at line 748 of file regint.h.

◆ MC_ONE_OR_MORE_TIME

#define MC_ONE_OR_MORE_TIME (   syn)    (syn)->meta_char_table.one_or_more_time

Definition at line 752 of file regint.h.

◆ MC_ZERO_OR_ONE_TIME

#define MC_ZERO_OR_ONE_TIME (   syn)    (syn)->meta_char_table.zero_or_one_time

Definition at line 751 of file regint.h.

◆ MIN

#define MIN (   a,
 
)    (((a)>(b))?(b):(a))

Definition at line 295 of file regint.h.

◆ NCCLASS_CLEAR_NOT

#define NCCLASS_CLEAR_NOT (   nd)    NCCLASS_FLAG_CLEAR(nd, FLAG_NCCLASS_NOT)

Definition at line 795 of file regint.h.

◆ NCCLASS_FLAG_CLEAR

#define NCCLASS_FLAG_CLEAR (   cc,
  flag 
)    (NCCLASS_FLAGS(cc) &= ~(flag))

Definition at line 788 of file regint.h.

◆ NCCLASS_FLAG_SET

#define NCCLASS_FLAG_SET (   cc,
  flag 
)    (NCCLASS_FLAGS(cc) |= (flag))

Definition at line 787 of file regint.h.

◆ NCCLASS_FLAGS

#define NCCLASS_FLAGS (   cc)    ((cc)->flags)

Definition at line 786 of file regint.h.

◆ NCCLASS_SET_NOT

#define NCCLASS_SET_NOT (   nd)    NCCLASS_FLAG_SET(nd, FLAG_NCCLASS_NOT)

Definition at line 794 of file regint.h.

◆ NULL_UCHARP

#define NULL_UCHARP   ((UChar* )0)

Definition at line 302 of file regint.h.

◆ ODIGITVAL

#define ODIGITVAL (   code)    DIGITVAL(code)

Definition at line 376 of file regint.h.

◆ ONIG_LAST_CODE_POINT

#define ONIG_LAST_CODE_POINT   (~((OnigCodePoint )0))

Definition at line 304 of file regint.h.

◆ ONIG_OPTIMIZE_EXACT

#define ONIG_OPTIMIZE_EXACT   1 /* Slow Search */

Definition at line 343 of file regint.h.

◆ ONIG_OPTIMIZE_EXACT_BM

#define ONIG_OPTIMIZE_EXACT_BM   2 /* Boyer Moore Search */

Definition at line 344 of file regint.h.

◆ ONIG_OPTIMIZE_EXACT_BM_IC

#define ONIG_OPTIMIZE_EXACT_BM_IC   6 /* BM (ignore case) */

Definition at line 348 of file regint.h.

◆ ONIG_OPTIMIZE_EXACT_BM_NOT_REV

#define ONIG_OPTIMIZE_EXACT_BM_NOT_REV   3 /* BM (applied to a multibyte string) */

Definition at line 345 of file regint.h.

◆ ONIG_OPTIMIZE_EXACT_BM_NOT_REV_IC

#define ONIG_OPTIMIZE_EXACT_BM_NOT_REV_IC   7 /* BM (applied to a multibyte string) (ignore case) */

Definition at line 349 of file regint.h.

◆ ONIG_OPTIMIZE_EXACT_IC

#define ONIG_OPTIMIZE_EXACT_IC   4 /* Slow Search (ignore case) */

Definition at line 346 of file regint.h.

◆ ONIG_OPTIMIZE_MAP

#define ONIG_OPTIMIZE_MAP   5 /* char map */

Definition at line 347 of file regint.h.

◆ ONIG_OPTIMIZE_NONE

#define ONIG_OPTIMIZE_NONE   0

Definition at line 342 of file regint.h.

◆ onig_st_is_member

#define onig_st_is_member   st_is_member

Definition at line 194 of file regint.h.

◆ OPT_EXACT_MAXLEN

#define OPT_EXACT_MAXLEN   24

Definition at line 90 of file regint.h.

◆ PLATFORM_GET_INC

#define PLATFORM_GET_INC (   val,
  p,
  type 
)
Value:
do{\
xmemcpy(&val, (p), sizeof(type));\
(p) += sizeof(type);\
} while(0)
#define val

Definition at line 315 of file regint.h.

◆ PRIdPTR

#define PRIdPTR   "ld"

Definition at line 275 of file regint.h.

◆ PRIdPTRDIFF

#define PRIdPTRDIFF   PRIdPTR

Definition at line 282 of file regint.h.

◆ PRIuPTR

#define PRIuPTR   "lu"

Definition at line 276 of file regint.h.

Referenced by onig_search_gpos().

◆ PRIxPTR

#define PRIxPTR   "lx"

Definition at line 277 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ REPEAT_INFINITE

#define REPEAT_INFINITE   -1

Definition at line 408 of file regint.h.

◆ SINGLE_BYTE_SIZE

#define SINGLE_BYTE_SIZE   (1 << BITS_PER_BYTE)

Definition at line 413 of file regint.h.

Referenced by onig_is_code_in_cc_len().

◆ SIZE_ABSADDR

#define SIZE_ABSADDR   (int )sizeof(AbsAddrType)

Definition at line 677 of file regint.h.

◆ SIZE_BITSET

#define SIZE_BITSET   (int )sizeof(BitSet)

Definition at line 425 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ SIZE_CODE_POINT

#define SIZE_CODE_POINT   (int )sizeof(OnigCodePoint)

Definition at line 683 of file regint.h.

◆ SIZE_LENGTH

#define SIZE_LENGTH   (int )sizeof(LengthType)

Definition at line 678 of file regint.h.

◆ SIZE_MEMNUM

#define SIZE_MEMNUM   (int )sizeof(MemNumType)

Definition at line 679 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ SIZE_OP_ABSENT

#define SIZE_OP_ABSENT   (SIZE_OPCODE + SIZE_RELADDR)

Definition at line 738 of file regint.h.

◆ SIZE_OP_ABSENT_END

#define SIZE_OP_ABSENT_END   SIZE_OPCODE

Definition at line 739 of file regint.h.

◆ SIZE_OP_ANYCHAR_STAR

#define SIZE_OP_ANYCHAR_STAR   SIZE_OPCODE

Definition at line 705 of file regint.h.

◆ SIZE_OP_ANYCHAR_STAR_PEEK_NEXT

#define SIZE_OP_ANYCHAR_STAR_PEEK_NEXT   (SIZE_OPCODE + 1)

Definition at line 706 of file regint.h.

◆ SIZE_OP_CALL

#define SIZE_OP_CALL   (SIZE_OPCODE + SIZE_ABSADDR)

Definition at line 734 of file regint.h.

◆ SIZE_OP_CONDITION

#define SIZE_OP_CONDITION   (SIZE_OPCODE + SIZE_MEMNUM + SIZE_RELADDR)

Definition at line 736 of file regint.h.

◆ SIZE_OP_FAIL

#define SIZE_OP_FAIL   SIZE_OPCODE

Definition at line 720 of file regint.h.

◆ SIZE_OP_FAIL_LOOK_BEHIND_NOT

#define SIZE_OP_FAIL_LOOK_BEHIND_NOT   SIZE_OPCODE

Definition at line 733 of file regint.h.

◆ SIZE_OP_FAIL_POS

#define SIZE_OP_FAIL_POS   SIZE_OPCODE

Definition at line 717 of file regint.h.

◆ SIZE_OP_JUMP

#define SIZE_OP_JUMP   (SIZE_OPCODE + SIZE_RELADDR)

Definition at line 707 of file regint.h.

◆ SIZE_OP_LOOK_BEHIND

#define SIZE_OP_LOOK_BEHIND   (SIZE_OPCODE + SIZE_LENGTH)

Definition at line 731 of file regint.h.

◆ SIZE_OP_MEMORY_END

#define SIZE_OP_MEMORY_END   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 725 of file regint.h.

◆ SIZE_OP_MEMORY_END_PUSH

#define SIZE_OP_MEMORY_END_PUSH   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 723 of file regint.h.

◆ SIZE_OP_MEMORY_END_PUSH_REC

#define SIZE_OP_MEMORY_END_PUSH_REC   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 724 of file regint.h.

◆ SIZE_OP_MEMORY_END_REC

#define SIZE_OP_MEMORY_END_REC   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 726 of file regint.h.

◆ SIZE_OP_MEMORY_START

#define SIZE_OP_MEMORY_START   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 721 of file regint.h.

◆ SIZE_OP_MEMORY_START_PUSH

#define SIZE_OP_MEMORY_START_PUSH   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 722 of file regint.h.

◆ SIZE_OP_NULL_CHECK_END

#define SIZE_OP_NULL_CHECK_END   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 730 of file regint.h.

◆ SIZE_OP_NULL_CHECK_START

#define SIZE_OP_NULL_CHECK_START   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 729 of file regint.h.

◆ SIZE_OP_POP

#define SIZE_OP_POP   SIZE_OPCODE

Definition at line 709 of file regint.h.

◆ SIZE_OP_POP_POS

#define SIZE_OP_POP_POS   SIZE_OPCODE

Definition at line 716 of file regint.h.

◆ SIZE_OP_POP_STOP_BT

#define SIZE_OP_POP_STOP_BT   SIZE_OPCODE

Definition at line 728 of file regint.h.

◆ SIZE_OP_PUSH

#define SIZE_OP_PUSH   (SIZE_OPCODE + SIZE_RELADDR)

Definition at line 708 of file regint.h.

◆ SIZE_OP_PUSH_ABSENT_POS

#define SIZE_OP_PUSH_ABSENT_POS   SIZE_OPCODE

Definition at line 737 of file regint.h.

◆ SIZE_OP_PUSH_IF_PEEK_NEXT

#define SIZE_OP_PUSH_IF_PEEK_NEXT   (SIZE_OPCODE + SIZE_RELADDR + 1)

Definition at line 711 of file regint.h.

◆ SIZE_OP_PUSH_LOOK_BEHIND_NOT

#define SIZE_OP_PUSH_LOOK_BEHIND_NOT   (SIZE_OPCODE + SIZE_RELADDR + SIZE_LENGTH)

Definition at line 732 of file regint.h.

◆ SIZE_OP_PUSH_OR_JUMP_EXACT1

#define SIZE_OP_PUSH_OR_JUMP_EXACT1   (SIZE_OPCODE + SIZE_RELADDR + 1)

Definition at line 710 of file regint.h.

◆ SIZE_OP_PUSH_POS

#define SIZE_OP_PUSH_POS   SIZE_OPCODE

Definition at line 714 of file regint.h.

◆ SIZE_OP_PUSH_POS_NOT

#define SIZE_OP_PUSH_POS_NOT   (SIZE_OPCODE + SIZE_RELADDR)

Definition at line 715 of file regint.h.

◆ SIZE_OP_PUSH_STOP_BT

#define SIZE_OP_PUSH_STOP_BT   SIZE_OPCODE

Definition at line 727 of file regint.h.

◆ SIZE_OP_REPEAT_INC

#define SIZE_OP_REPEAT_INC   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 712 of file regint.h.

◆ SIZE_OP_REPEAT_INC_NG

#define SIZE_OP_REPEAT_INC_NG   (SIZE_OPCODE + SIZE_MEMNUM)

Definition at line 713 of file regint.h.

◆ SIZE_OP_RETURN

#define SIZE_OP_RETURN   SIZE_OPCODE

Definition at line 735 of file regint.h.

◆ SIZE_OP_SET_OPTION

#define SIZE_OP_SET_OPTION   (SIZE_OPCODE + SIZE_OPTION)

Definition at line 718 of file regint.h.

◆ SIZE_OP_SET_OPTION_PUSH

#define SIZE_OP_SET_OPTION_PUSH   (SIZE_OPCODE + SIZE_OPTION)

Definition at line 719 of file regint.h.

◆ SIZE_OPCODE

#define SIZE_OPCODE   1

Definition at line 675 of file regint.h.

◆ SIZE_OPTION

#define SIZE_OPTION   (int )sizeof(OnigOptionType)

Definition at line 682 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ SIZE_POINTER

#define SIZE_POINTER   (int )sizeof(PointerType)

Definition at line 684 of file regint.h.

◆ SIZE_RELADDR

#define SIZE_RELADDR   (int )sizeof(RelAddrType)

Definition at line 676 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ SIZE_REPEATNUM

#define SIZE_REPEATNUM   (int )sizeof(RepeatNumType)

Definition at line 681 of file regint.h.

◆ SIZE_STATE_CHECK_NUM

#define SIZE_STATE_CHECK_NUM   (int )sizeof(StateCheckNumType)

Definition at line 680 of file regint.h.

Referenced by onig_is_code_in_cc().

◆ st_add_direct

#define st_add_direct   onig_st_add_direct

Definition at line 187 of file regint.h.

◆ st_cleanup_safe

#define st_cleanup_safe   onig_st_cleanup_safe

Definition at line 189 of file regint.h.

◆ st_copy

#define st_copy   onig_st_copy

Definition at line 190 of file regint.h.

Referenced by rb_st_copy().

◆ st_delete

#define st_delete   onig_st_delete

◆ st_delete_safe

#define st_delete_safe   onig_st_delete_safe

Definition at line 183 of file regint.h.

◆ st_foreach

#define st_foreach   onig_st_foreach

◆ st_free_table

#define st_free_table   onig_st_free_table

Definition at line 188 of file regint.h.

Referenced by rb_free_generic_ivar(), and rb_iseq_build_from_ary().

◆ st_init_numtable

#define st_init_numtable   onig_st_init_numtable

◆ st_init_numtable_with_size

#define st_init_numtable_with_size   onig_st_init_numtable_with_size

Definition at line 179 of file regint.h.

◆ st_init_strtable

#define st_init_strtable   onig_st_init_strtable

Definition at line 180 of file regint.h.

Referenced by Init_vm_objects(), and rb_gc_unprotect_logging().

◆ st_init_strtable_with_size

#define st_init_strtable_with_size   onig_st_init_strtable_with_size

Definition at line 181 of file regint.h.

◆ st_init_table

#define st_init_table   onig_st_init_table

Definition at line 176 of file regint.h.

Referenced by rb_ident_hash_new(), and rb_init_identtable().

◆ st_init_table_with_size

#define st_init_table_with_size   onig_st_init_table_with_size

Definition at line 177 of file regint.h.

Referenced by Init_vm_objects(), rb_hash_new_with_size(), and rb_init_identtable_with_size().

◆ st_insert

#define st_insert   onig_st_insert

◆ st_lookup

#define st_lookup   onig_st_lookup

◆ st_nothing_key_clone

#define st_nothing_key_clone   onig_st_nothing_key_clone

Definition at line 191 of file regint.h.

◆ st_nothing_key_free

#define st_nothing_key_free   onig_st_nothing_key_free

Definition at line 192 of file regint.h.

◆ STACK_POP_LEVEL_ALL

#define STACK_POP_LEVEL_ALL   2

Definition at line 339 of file regint.h.

◆ STACK_POP_LEVEL_FREE

#define STACK_POP_LEVEL_FREE   0

Definition at line 337 of file regint.h.

◆ STACK_POP_LEVEL_MEM_START

#define STACK_POP_LEVEL_MEM_START   1

Definition at line 338 of file regint.h.

◆ STATE_CHECK_BUFF_MAX_SIZE

#define STATE_CHECK_BUFF_MAX_SIZE   0x4000

Definition at line 199 of file regint.h.

◆ STATE_CHECK_STRING_THRESHOLD_LEN

#define STATE_CHECK_STRING_THRESHOLD_LEN   7

Definition at line 198 of file regint.h.

◆ SYN_GNU_REGEX_BV

#define SYN_GNU_REGEX_BV
Value:
ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS | ONIG_SYN_ALLOW_INVALID_INTERVAL | \
ONIG_SYN_BACKSLASH_ESCAPE_IN_CC | ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC )
#define ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS
Definition: onigmo.h:588
#define ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC
Definition: onigmo.h:605
#define ONIG_SYN_CONTEXT_INDEP_ANCHORS
Definition: onigmo.h:587
#define ONIG_SYN_ALLOW_INVALID_INTERVAL
Definition: onigmo.h:591

Definition at line 780 of file regint.h.

◆ SYN_GNU_REGEX_OP

#define SYN_GNU_REGEX_OP
Value:
ONIG_SYN_OP_POSIX_BRACKET | ONIG_SYN_OP_DECIMAL_BACKREF | \
ONIG_SYN_OP_BRACE_INTERVAL | ONIG_SYN_OP_LPAREN_SUBEXP | \
ONIG_SYN_OP_VBAR_ALT | \
ONIG_SYN_OP_ASTERISK_ZERO_INF | ONIG_SYN_OP_PLUS_ONE_INF | \
ONIG_SYN_OP_QMARK_ZERO_ONE | \
ONIG_SYN_OP_ESC_AZ_BUF_ANCHOR | ONIG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR | \
ONIG_SYN_OP_ESC_W_WORD | \
ONIG_SYN_OP_ESC_B_WORD_BOUND | ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END | \
ONIG_SYN_OP_ESC_S_WHITE_SPACE | ONIG_SYN_OP_ESC_D_DIGIT | \
ONIG_SYN_OP_LINE_ANCHOR )
#define ONIG_SYN_OP_ESC_D_DIGIT
Definition: onigmo.h:541
#define ONIG_SYN_OP_PLUS_ONE_INF
Definition: onigmo.h:523
#define ONIG_SYN_OP_BRACKET_CC
Definition: onigmo.h:536
#define ONIG_SYN_OP_DECIMAL_BACKREF
Definition: onigmo.h:535
#define ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END
Definition: onigmo.h:538
#define ONIG_SYN_OP_DOT_ANYCHAR
Definition: onigmo.h:520
#define ONIG_SYN_OP_LPAREN_SUBEXP
Definition: onigmo.h:531
#define ONIG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR
Definition: onigmo.h:534

Definition at line 767 of file regint.h.

◆ SYN_POSIX_COMMON_OP

#define SYN_POSIX_COMMON_OP
Value:
ONIG_SYN_OP_DECIMAL_BACKREF | \
ONIG_SYN_OP_BRACKET_CC | ONIG_SYN_OP_ASTERISK_ZERO_INF | \
ONIG_SYN_OP_LINE_ANCHOR | \
ONIG_SYN_OP_ESC_CONTROL_CHARS )
#define ONIG_SYN_OP_ASTERISK_ZERO_INF
Definition: onigmo.h:521
#define ONIG_SYN_OP_POSIX_BRACKET
Definition: onigmo.h:543
#define ONIG_SYN_OP_DOT_ANYCHAR
Definition: onigmo.h:520

Definition at line 760 of file regint.h.

◆ UNALIGNED_WORD_ACCESS

#define UNALIGNED_WORD_ACCESS   0

Definition at line 59 of file regint.h.

◆ USE_BACKREF_WITH_LEVEL

#define USE_BACKREF_WITH_LEVEL   /* \k<name+n>, \k<name-n> */

Definition at line 73 of file regint.h.

◆ USE_CAPITAL_P_NAMED_GROUP

#define USE_CAPITAL_P_NAMED_GROUP

Definition at line 72 of file regint.h.

◆ USE_CAPTURE_HISTORY

#define USE_CAPTURE_HISTORY

Definition at line 135 of file regint.h.

◆ USE_FIND_LONGEST_SEARCH_ALL_OF_RANGE

#define USE_FIND_LONGEST_SEARCH_ALL_OF_RANGE

Definition at line 138 of file regint.h.

◆ USE_MONOMANIAC_CHECK_CAPTURES_IN_ENDLESS_REPEAT

#define USE_MONOMANIAC_CHECK_CAPTURES_IN_ENDLESS_REPEAT   /* /(?:()|())*\2/ */

Definition at line 74 of file regint.h.

◆ USE_NAMED_GROUP

#define USE_NAMED_GROUP

Definition at line 69 of file regint.h.

◆ USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE

#define USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE   /* /\n$/ =~ "\n" */

Definition at line 75 of file regint.h.

◆ USE_NO_INVALID_QUANTIFIER

#define USE_NO_INVALID_QUANTIFIER

Definition at line 78 of file regint.h.

◆ USE_PERL_SUBEXP_CALL

#define USE_PERL_SUBEXP_CALL

Definition at line 71 of file regint.h.

◆ USE_QTFR_PEEK_NEXT

#define USE_QTFR_PEEK_NEXT

Definition at line 82 of file regint.h.

◆ USE_ST_LIBRARY

#define USE_ST_LIBRARY

Definition at line 83 of file regint.h.

◆ USE_SUBEXP_CALL

#define USE_SUBEXP_CALL

Definition at line 70 of file regint.h.

◆ USE_SUNDAY_QUICK_SEARCH

#define USE_SUNDAY_QUICK_SEARCH

Definition at line 84 of file regint.h.

◆ USE_VARIABLE_META_CHARS

#define USE_VARIABLE_META_CHARS

Definition at line 137 of file regint.h.

◆ USE_WARNING_REDUNDANT_NESTED_REPEAT_OPERATOR

#define USE_WARNING_REDUNDANT_NESTED_REPEAT_OPERATOR

Definition at line 76 of file regint.h.

◆ USE_WORD_BEGIN_END

#define USE_WORD_BEGIN_END   /* "<": word-begin, ">": word-end */

Definition at line 131 of file regint.h.

◆ WORD_ALIGNMENT_SIZE

#define WORD_ALIGNMENT_SIZE   SIZEOF_LONG

Definition at line 321 of file regint.h.

◆ xalloca

#define xalloca   alloca

Definition at line 213 of file regint.h.

◆ xcalloc

#define xcalloc   calloc

Definition at line 145 of file regint.h.

◆ XDIGITVAL

#define XDIGITVAL (   enc,
  code 
)
Value:
(ONIGENC_IS_CODE_DIGIT(enc,code) ? DIGITVAL(code) \
: (ONIGENC_IS_CODE_UPPER(enc,code) ? (code) - 'A' + 10 : (code) - 'a' + 10))
#define ONIGENC_IS_CODE_UPPER(enc, code)
Definition: onigmo.h:386
#define DIGITVAL(code)
Definition: regint.h:375
#define ONIGENC_IS_CODE_DIGIT(enc, code)
Definition: onigmo.h:396

Definition at line 377 of file regint.h.

◆ xfree

#define xfree   free

Definition at line 146 of file regint.h.

◆ xmalloc

#define xmalloc   malloc

Definition at line 143 of file regint.h.

◆ xmemcpy

#define xmemcpy   memcpy

Definition at line 202 of file regint.h.

Referenced by onig_strcpy().

◆ xmemmove

#define xmemmove   memmove

Definition at line 203 of file regint.h.

◆ xmemset

#define xmemset   memset

Definition at line 201 of file regint.h.

◆ xrealloc

#define xrealloc   realloc

Definition at line 144 of file regint.h.

◆ xsnprintf

#define xsnprintf   snprintf

Definition at line 215 of file regint.h.

◆ xstrcat

#define xstrcat (   dest,
  src,
  size 
)    strcat(dest,src)

Definition at line 216 of file regint.h.

◆ xvsnprintf

#define xvsnprintf   vsnprintf

Definition at line 214 of file regint.h.

Referenced by onig_vsnprintf_with_pattern().

Typedef Documentation

◆ AbsAddrType

typedef int AbsAddrType

Definition at line 668 of file regint.h.

◆ BBuf

typedef struct _BBuf BBuf

◆ Bits

typedef unsigned char Bits

Definition at line 420 of file regint.h.

◆ BitSet

typedef Bits BitSet[BITSET_SIZE]

Definition at line 422 of file regint.h.

◆ BitSetRef

typedef Bits* BitSetRef

Definition at line 423 of file regint.h.

◆ BitStatusType

typedef unsigned int BitStatusType

Definition at line 352 of file regint.h.

◆ hash_data_type

Definition at line 925 of file regint.h.

◆ hash_table_type

typedef void hash_table_type

Definition at line 919 of file regint.h.

◆ LengthType

typedef int LengthType

Definition at line 669 of file regint.h.

◆ MemNumType

typedef short int MemNumType

Definition at line 671 of file regint.h.

◆ OnigEndCallListItemType

◆ OnigStackIndex

Definition at line 811 of file regint.h.

◆ OnigStackType

typedef struct _OnigStackType OnigStackType

◆ PointerType

typedef void* PointerType

Definition at line 673 of file regint.h.

◆ RelAddrType

typedef int RelAddrType

Definition at line 667 of file regint.h.

◆ RepeatNumType

typedef int RepeatNumType

Definition at line 670 of file regint.h.

◆ StateCheckNumType

typedef short int StateCheckNumType

Definition at line 672 of file regint.h.

Enumeration Type Documentation

◆ OpCode

enum OpCode
Enumerator
OP_FINISH 
OP_END 
OP_EXACT1 
OP_EXACT2 
OP_EXACT3 
OP_EXACT4 
OP_EXACT5 
OP_EXACTN 
OP_EXACTMB2N1 
OP_EXACTMB2N2 
OP_EXACTMB2N3 
OP_EXACTMB2N 
OP_EXACTMB3N 
OP_EXACTMBN 
OP_EXACT1_IC 
OP_EXACTN_IC 
OP_CCLASS 
OP_CCLASS_MB 
OP_CCLASS_MIX 
OP_CCLASS_NOT 
OP_CCLASS_MB_NOT 
OP_CCLASS_MIX_NOT 
OP_ANYCHAR 
OP_ANYCHAR_ML 
OP_ANYCHAR_STAR 
OP_ANYCHAR_ML_STAR 
OP_ANYCHAR_STAR_PEEK_NEXT 
OP_ANYCHAR_ML_STAR_PEEK_NEXT 
OP_WORD 
OP_NOT_WORD 
OP_WORD_BOUND 
OP_NOT_WORD_BOUND 
OP_WORD_BEGIN 
OP_WORD_END 
OP_ASCII_WORD 
OP_NOT_ASCII_WORD 
OP_ASCII_WORD_BOUND 
OP_NOT_ASCII_WORD_BOUND 
OP_ASCII_WORD_BEGIN 
OP_ASCII_WORD_END 
OP_BEGIN_BUF 
OP_END_BUF 
OP_BEGIN_LINE 
OP_END_LINE 
OP_SEMI_END_BUF 
OP_BEGIN_POSITION 
OP_BACKREF1 
OP_BACKREF2 
OP_BACKREFN 
OP_BACKREFN_IC 
OP_BACKREF_MULTI 
OP_BACKREF_MULTI_IC 
OP_BACKREF_WITH_LEVEL 
OP_MEMORY_START 
OP_MEMORY_START_PUSH 
OP_MEMORY_END_PUSH 
OP_MEMORY_END_PUSH_REC 
OP_MEMORY_END 
OP_MEMORY_END_REC 
OP_KEEP 
OP_FAIL 
OP_JUMP 
OP_PUSH 
OP_POP 
OP_PUSH_OR_JUMP_EXACT1 
OP_PUSH_IF_PEEK_NEXT 
OP_REPEAT 
OP_REPEAT_NG 
OP_REPEAT_INC 
OP_REPEAT_INC_NG 
OP_REPEAT_INC_SG 
OP_REPEAT_INC_NG_SG 
OP_NULL_CHECK_START 
OP_NULL_CHECK_END 
OP_NULL_CHECK_END_MEMST 
OP_NULL_CHECK_END_MEMST_PUSH 
OP_PUSH_POS 
OP_POP_POS 
OP_PUSH_POS_NOT 
OP_FAIL_POS 
OP_PUSH_STOP_BT 
OP_POP_STOP_BT 
OP_LOOK_BEHIND 
OP_PUSH_LOOK_BEHIND_NOT 
OP_FAIL_LOOK_BEHIND_NOT 
OP_PUSH_ABSENT_POS 
OP_ABSENT 
OP_ABSENT_END 
OP_CALL 
OP_RETURN 
OP_CONDITION 
OP_STATE_CHECK_PUSH 
OP_STATE_CHECK_PUSH_OR_JUMP 
OP_STATE_CHECK 
OP_STATE_CHECK_ANYCHAR_STAR 
OP_STATE_CHECK_ANYCHAR_ML_STAR 
OP_SET_OPTION_PUSH 
OP_SET_OPTION 

Definition at line 549 of file regint.h.

Function Documentation

◆ onig_add_end_call()

void onig_add_end_call ( void(*)(void)  func)

Definition at line 6022 of file regcomp.c.

References OnigEndCallListItem::next, return, and xmalloc.

◆ onig_bbuf_init()

int onig_bbuf_init ( BBuf buf,
OnigDistance  size 
)

Definition at line 142 of file regcomp.c.

References _BBuf::alloc, IS_NULL, NULL, ONIGERR_MEMORY, _BBuf::p, UChar, _BBuf::used, and xmalloc.

◆ onig_compile()

int onig_compile ( regex_t reg,
const UChar pattern,
const UChar pattern_end,
OnigErrorInfo einfo 
)

Definition at line 5698 of file regcomp.c.

References NULL, and onig_compile_ruby().

Referenced by onig_new(), and onig_new_without_alloc().

◆ onig_error_code_to_format()

UChar* onig_error_code_to_format ( OnigPosition  code)

Definition at line 37 of file regerror.c.

References ONIG_MISMATCH, ONIG_NO_SUPPORT_CONFIG, ONIGERR_CHAR_CLASS_VALUE_AT_END_OF_RANGE, ONIGERR_CHAR_CLASS_VALUE_AT_START_OF_RANGE, ONIGERR_CONTROL_CODE_SYNTAX, ONIGERR_DEFAULT_ENCODING_IS_NOT_SET, ONIGERR_EMPTY_CHAR_CLASS, ONIGERR_EMPTY_GROUP_NAME, ONIGERR_EMPTY_RANGE_IN_CHAR_CLASS, ONIGERR_END_PATTERN_AT_CONTROL, ONIGERR_END_PATTERN_AT_ESCAPE, ONIGERR_END_PATTERN_AT_LEFT_BRACE, ONIGERR_END_PATTERN_AT_LEFT_BRACKET, ONIGERR_END_PATTERN_AT_META, ONIGERR_END_PATTERN_IN_GROUP, ONIGERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS, ONIGERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY, ONIGERR_INVALID_ARGUMENT, ONIGERR_INVALID_BACKREF, ONIGERR_INVALID_CHAR_IN_GROUP_NAME, ONIGERR_INVALID_CHAR_PROPERTY_NAME, ONIGERR_INVALID_CODE_POINT_VALUE, ONIGERR_INVALID_COMBINATION_OF_OPTIONS, ONIGERR_INVALID_CONDITION_PATTERN, ONIGERR_INVALID_GROUP_NAME, ONIGERR_INVALID_LOOK_BEHIND_PATTERN, ONIGERR_INVALID_POSIX_BRACKET_TYPE, ONIGERR_INVALID_REPEAT_RANGE_PATTERN, ONIGERR_MATCH_STACK_LIMIT_OVER, ONIGERR_MEMORY, ONIGERR_META_CODE_SYNTAX, ONIGERR_MISMATCH_CODE_LENGTH_IN_CLASS_RANGE, ONIGERR_MULTIPLEX_DEFINED_NAME, ONIGERR_MULTIPLEX_DEFINITION_NAME_CALL, ONIGERR_NESTED_REPEAT_OPERATOR, ONIGERR_NEVER_ENDING_RECURSION, ONIGERR_NOT_SUPPORTED_ENCODING_COMBINATION, ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED, ONIGERR_PARSE_DEPTH_LIMIT_OVER, ONIGERR_PARSER_BUG, ONIGERR_PREMATURE_END_OF_CHAR_CLASS, ONIGERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR, ONIGERR_STACK_BUG, ONIGERR_TARGET_OF_REPEAT_OPERATOR_INVALID, ONIGERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED, ONIGERR_TOO_BIG_BACKREF_NUMBER, ONIGERR_TOO_BIG_NUMBER, ONIGERR_TOO_BIG_NUMBER_FOR_REPEAT_RANGE, ONIGERR_TOO_BIG_WIDE_CHAR_VALUE, ONIGERR_TOO_LONG_WIDE_CHAR_VALUE, ONIGERR_TOO_MANY_CAPTURE_GROUPS, ONIGERR_TOO_MANY_MULTI_BYTE_RANGES, ONIGERR_TOO_SHORT_DIGITS, ONIGERR_TOO_SHORT_MULTI_BYTE_STRING, ONIGERR_TYPE_BUG, ONIGERR_UNDEFINED_BYTECODE, ONIGERR_UNDEFINED_GROUP_OPTION, ONIGERR_UNDEFINED_GROUP_REFERENCE, ONIGERR_UNDEFINED_NAME_REFERENCE, ONIGERR_UNEXPECTED_BYTECODE, ONIGERR_UNMATCHED_CLOSE_PARENTHESIS, ONIGERR_UNMATCHED_RANGE_SPECIFIER_IN_CHAR_CLASS, ONIGERR_UPPER_SMALLER_THAN_LOWER_IN_REPEAT_RANGE, and UChar.

◆ onig_is_code_in_cc()

int onig_is_code_in_cc ( OnigEncoding  enc,
OnigCodePoint  code,
CClassNode cc 
)

Definition at line 6114 of file regcomp.c.

References ALIGNMENT_RIGHT, ANCHOR_BEGIN_BUF, ANCHOR_BEGIN_LINE, ANCHOR_BEGIN_POSITION, ANCHOR_END_BUF, ANCHOR_END_LINE, ANCHOR_KEEP, ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_NOT_WORD_BOUND, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, ANCHOR_SEMI_END_BUF, ANCHOR_WORD_BEGIN, ANCHOR_WORD_BOUND, ANCHOR_WORD_END, BRefNode::back_num, BACKREFS_P, bp, re_pattern_buffer::enc, enclen, ENCLOSE_ABSENT, ENCLOSE_CONDITION, ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, re_registers::end, GET_ABSADDR_INC, GET_CODE_POINT, GET_LENGTH_INC, GET_MEMNUM_INC, GET_OPTION_INC, GET_RELADDR_INC, IS_NCCLASS_NOT, IS_NOT_NULL, IS_NULL, len, level, CallNode::name, CallNode::name_end, NANCHOR, NBREF, NCALL, NCAR, NCCLASS, NCDR, NCTYPE, NENCLOSE, NQTFR, NSTR, NSTRING_IS_RAW, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, onig_is_code_in_cc_len(), ONIGENC_CODE_TO_MBCLEN, ONIGENC_CTYPE_WORD, ONIGENC_MBC_MINLEN, OP_ABSENT, OP_ABSENT_END, OP_ANYCHAR, OP_ANYCHAR_ML, OP_ANYCHAR_ML_STAR, OP_ANYCHAR_ML_STAR_PEEK_NEXT, OP_ANYCHAR_STAR, OP_ANYCHAR_STAR_PEEK_NEXT, OP_ASCII_WORD, OP_ASCII_WORD_BEGIN, OP_ASCII_WORD_BOUND, OP_ASCII_WORD_END, OP_BACKREF1, OP_BACKREF2, OP_BACKREF_MULTI, OP_BACKREF_MULTI_IC, OP_BACKREF_WITH_LEVEL, OP_BACKREFN, OP_BACKREFN_IC, OP_BEGIN_BUF, OP_BEGIN_LINE, OP_BEGIN_POSITION, OP_CALL, OP_CCLASS, OP_CCLASS_MB, OP_CCLASS_MB_NOT, OP_CCLASS_MIX, OP_CCLASS_MIX_NOT, OP_CCLASS_NOT, OP_CONDITION, OP_END, OP_END_BUF, OP_END_LINE, OP_EXACT1, OP_EXACT1_IC, OP_EXACT2, OP_EXACT3, OP_EXACT4, OP_EXACT5, OP_EXACTMB2N, OP_EXACTMB2N1, OP_EXACTMB2N2, OP_EXACTMB2N3, OP_EXACTMB3N, OP_EXACTMBN, OP_EXACTN, OP_EXACTN_IC, OP_FAIL, OP_FAIL_LOOK_BEHIND_NOT, OP_FAIL_POS, OP_FINISH, OP_JUMP, OP_KEEP, OP_LOOK_BEHIND, OP_MEMORY_END, OP_MEMORY_END_PUSH, OP_MEMORY_END_PUSH_REC, OP_MEMORY_END_REC, OP_MEMORY_START, OP_MEMORY_START_PUSH, OP_NOT_ASCII_WORD, OP_NOT_ASCII_WORD_BOUND, OP_NOT_WORD, OP_NOT_WORD_BOUND, OP_NULL_CHECK_END, OP_NULL_CHECK_END_MEMST, OP_NULL_CHECK_END_MEMST_PUSH, OP_NULL_CHECK_START, OP_POP, OP_POP_POS, OP_POP_STOP_BT, OP_PUSH, OP_PUSH_ABSENT_POS, OP_PUSH_IF_PEEK_NEXT, OP_PUSH_LOOK_BEHIND_NOT, OP_PUSH_OR_JUMP_EXACT1, OP_PUSH_POS, OP_PUSH_POS_NOT, OP_PUSH_STOP_BT, OP_REPEAT, OP_REPEAT_INC, OP_REPEAT_INC_NG, OP_REPEAT_INC_NG_SG, OP_REPEAT_INC_SG, OP_REPEAT_NG, OP_RETURN, OP_SEMI_END_BUF, OP_SET_OPTION, OP_SET_OPTION_PUSH, OP_STATE_CHECK, OP_STATE_CHECK_ANYCHAR_ML_STAR, OP_STATE_CHECK_ANYCHAR_STAR, OP_STATE_CHECK_PUSH, OP_STATE_CHECK_PUSH_OR_JUMP, OP_WORD, OP_WORD_BEGIN, OP_WORD_BOUND, OP_WORD_END, _BBuf::p, re_pattern_buffer::p, PRIxPTR, SIZE_BITSET, SIZE_MEMNUM, SIZE_OPTION, SIZE_RELADDR, SIZE_STATE_CHECK_NUM, TRUE, UChar, _BBuf::used, and re_pattern_buffer::used.

◆ onig_is_code_in_cc_len()

int onig_is_code_in_cc_len ( int  enclen,
OnigCodePoint  code,
CClassNode cc 
)

◆ onig_snprintf_with_pattern()

void onig_snprintf_with_pattern ( UChar  buf[],
int  bufsize,
OnigEncoding  enc,
UChar pat,
UChar pat_end,
const UChar fmt,
  ... 
)

◆ onig_st_init_strend_table_with_size()

hash_table_type* onig_st_init_strend_table_with_size ( st_index_t  size)

Definition at line 406 of file regparse.c.

Referenced by onigenc_with_ascii_strnicmp().

◆ onig_st_insert_strend()

int onig_st_insert_strend ( hash_table_type table,
const UChar str_key,
const UChar end_key,
hash_data_type  value 
)

Definition at line 430 of file regparse.c.

References key.

Referenced by onigenc_with_ascii_strnicmp().

◆ onig_st_lookup_strend()

int onig_st_lookup_strend ( hash_table_type table,
const UChar str_key,
const UChar end_key,
hash_data_type value 
)

Definition at line 418 of file regparse.c.

References st_str_end_key::end, key, st_str_end_key::s, st_data_t, and UChar.

◆ onig_transfer()

void onig_transfer ( regex_t to,
regex_t from 
)

◆ onig_vsnprintf_with_pattern()

void onig_vsnprintf_with_pattern ( UChar  buf[],
int  bufsize,
OnigEncoding  enc,
UChar pat,
UChar pat_end,
const UChar fmt,
va_list  args 
)