Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

regex.h File Reference

Go to the source code of this file.

Classes

struct  re_pattern_buffer
struct  re_registers
struct  regmatch_t

Defines

#define RE_BACKSLASH_ESCAPE_IN_LISTS   (1)
#define RE_BK_PLUS_QM   (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
#define RE_CHAR_CLASSES   (RE_BK_PLUS_QM << 1)
#define RE_CONTEXT_INDEP_ANCHORS   (RE_CHAR_CLASSES << 1)
#define RE_CONTEXT_INDEP_OPS   (RE_CONTEXT_INDEP_ANCHORS << 1)
#define RE_CONTEXT_INVALID_OPS   (RE_CONTEXT_INDEP_OPS << 1)
#define RE_DOT_NEWLINE   (RE_CONTEXT_INVALID_OPS << 1)
#define RE_DOT_NOT_NULL   (RE_DOT_NEWLINE << 1)
#define RE_HAT_LISTS_NOT_NEWLINE   (RE_DOT_NOT_NULL << 1)
#define RE_INTERVALS   (RE_HAT_LISTS_NOT_NEWLINE << 1)
#define RE_LIMITED_OPS   (RE_INTERVALS << 1)
#define RE_NEWLINE_ALT   (RE_LIMITED_OPS << 1)
#define RE_NO_BK_BRACES   (RE_NEWLINE_ALT << 1)
#define RE_NO_BK_PARENS   (RE_NO_BK_BRACES << 1)
#define RE_NO_BK_REFS   (RE_NO_BK_PARENS << 1)
#define RE_NO_BK_VBAR   (RE_NO_BK_REFS << 1)
#define RE_NO_EMPTY_RANGES   (RE_NO_BK_VBAR << 1)
#define RE_UNMATCHED_RIGHT_PAREN_ORD   (RE_NO_EMPTY_RANGES << 1)
#define RE_NO_POSIX_BACKTRACKING   (RE_UNMATCHED_RIGHT_PAREN_ORD << 1)
#define RE_SYNTAX_EMACS   0
#define RE_SYNTAX_AWK
#define RE_SYNTAX_POSIX_AWK   (RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS)
#define RE_SYNTAX_GREP
#define RE_SYNTAX_EGREP
#define RE_SYNTAX_POSIX_EGREP   (RE_SYNTAX_EGREP | RE_INTERVALS | RE_NO_BK_BRACES)
#define RE_SYNTAX_ED   RE_SYNTAX_POSIX_BASIC
#define RE_SYNTAX_SED   RE_SYNTAX_POSIX_BASIC
#define _RE_SYNTAX_POSIX_COMMON
#define RE_SYNTAX_POSIX_BASIC   (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM)
#define RE_SYNTAX_POSIX_MINIMAL_BASIC   (_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS)
#define RE_SYNTAX_POSIX_EXTENDED
#define RE_SYNTAX_POSIX_MINIMAL_EXTENDED
#define RE_DUP_MAX   ((1 << 15) - 1)
#define REG_EXTENDED   1
#define REG_ICASE   (REG_EXTENDED << 1)
#define REG_NEWLINE   (REG_ICASE << 1)
#define REG_NOSUB   (REG_NEWLINE << 1)
#define REG_NOTBOL   1
#define REG_NOTEOL   (1 << 1)
#define REGS_UNALLOCATED   0
#define REGS_REALLOCATE   1
#define REGS_FIXED   2
#define RE_NREGS   30
#define _RE_ARGS(args)   ()

Typedefs

typedef unsigned reg_syntax_t
typedef re_pattern_buffer regex_t
typedef int regoff_t

Enumerations

enum  reg_errcode_t {
  REG_NOERROR = 0, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE,
  REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK,
  REG_EPAREN, REG_EBRACE, REG_BADBR, REG_ERANGE,
  REG_ESPACE, REG_BADRPT, REG_EEND, REG_ESIZE,
  REG_ERPAREN
}

Functions

reg_syntax_t re_set_syntax _RE_ARGS ((reg_syntax_t syntax))
const char *re_compile_pattern _RE_ARGS ((const char *pattern, int length, struct re_pattern_buffer *buffer))
int re_compile_fastmap _RE_ARGS ((struct re_pattern_buffer *buffer))
int re_search _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string, int length, int start, int range, struct re_registers *regs))
int re_search_2 _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1, int length1, const char *string2, int length2, int start, int range, struct re_registers *regs, int stop))
int re_match _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string, int length, int start, struct re_registers *regs))
int re_match_2 _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1, int length1, const char *string2, int length2, int start, struct re_registers *regs, int stop))
void re_set_registers _RE_ARGS ((struct re_pattern_buffer *buffer, struct re_registers *regs, unsigned num_regs, regoff_t *starts, regoff_t *ends))
int regcomp _RE_ARGS ((regex_t *preg, const char *pattern, int cflags))
int regexec _RE_ARGS ((const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags))
size_t regerror _RE_ARGS ((int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size))
void regfree _RE_ARGS ((regex_t *preg))

Variables

reg_syntax_t re_syntax_options


Define Documentation

#define _RE_ARGS args   )     ()
 

Definition at line 397 of file regex.h.

#define _RE_SYNTAX_POSIX_COMMON
 

Value:

Definition at line 178 of file regex.h.

#define RE_BACKSLASH_ESCAPE_IN_LISTS   (1)
 

Definition at line 42 of file regex.h.

#define RE_BK_PLUS_QM   (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
 

Definition at line 47 of file regex.h.

#define RE_CHAR_CLASSES   (RE_BK_PLUS_QM << 1)
 

Definition at line 53 of file regex.h.

#define RE_CONTEXT_INDEP_ANCHORS   (RE_CHAR_CLASSES << 1)
 

Definition at line 67 of file regex.h.

#define RE_CONTEXT_INDEP_OPS   (RE_CONTEXT_INDEP_ANCHORS << 1)
 

Definition at line 75 of file regex.h.

#define RE_CONTEXT_INVALID_OPS   (RE_CONTEXT_INDEP_OPS << 1)
 

Definition at line 79 of file regex.h.

#define RE_DOT_NEWLINE   (RE_CONTEXT_INVALID_OPS << 1)
 

Definition at line 83 of file regex.h.

Referenced by re_compile_fastmap(), and regcomp().

#define RE_DOT_NOT_NULL   (RE_DOT_NEWLINE << 1)
 

Definition at line 87 of file regex.h.

#define RE_DUP_MAX   ((1 << 15) - 1)
 

Definition at line 212 of file regex.h.

#define RE_HAT_LISTS_NOT_NEWLINE   (RE_DOT_NOT_NULL << 1)
 

Definition at line 91 of file regex.h.

Referenced by regcomp().

#define RE_INTERVALS   (RE_HAT_LISTS_NOT_NEWLINE << 1)
 

Definition at line 96 of file regex.h.

#define RE_LIMITED_OPS   (RE_INTERVALS << 1)
 

Definition at line 100 of file regex.h.

#define RE_NEWLINE_ALT   (RE_LIMITED_OPS << 1)
 

Definition at line 104 of file regex.h.

#define RE_NO_BK_BRACES   (RE_NEWLINE_ALT << 1)
 

Definition at line 109 of file regex.h.

#define RE_NO_BK_PARENS   (RE_NO_BK_BRACES << 1)
 

Definition at line 113 of file regex.h.

#define RE_NO_BK_REFS   (RE_NO_BK_PARENS << 1)
 

Definition at line 117 of file regex.h.

#define RE_NO_BK_VBAR   (RE_NO_BK_REFS << 1)
 

Definition at line 121 of file regex.h.

#define RE_NO_EMPTY_RANGES   (RE_NO_BK_VBAR << 1)
 

Definition at line 127 of file regex.h.

#define RE_NO_POSIX_BACKTRACKING   (RE_UNMATCHED_RIGHT_PAREN_ORD << 1)
 

Definition at line 135 of file regex.h.

#define RE_NREGS   30
 

Definition at line 370 of file regex.h.

#define RE_SYNTAX_AWK
 

Value:

Definition at line 149 of file regex.h.

#define RE_SYNTAX_ED   RE_SYNTAX_POSIX_BASIC
 

Definition at line 173 of file regex.h.

#define RE_SYNTAX_EGREP
 

Value:

Definition at line 163 of file regex.h.

#define RE_SYNTAX_EMACS   0
 

Definition at line 147 of file regex.h.

#define RE_SYNTAX_GREP
 

Value:

Definition at line 158 of file regex.h.

#define RE_SYNTAX_POSIX_AWK   (RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS)
 

Definition at line 155 of file regex.h.

#define RE_SYNTAX_POSIX_BASIC   (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM)
 

Definition at line 182 of file regex.h.

Referenced by regcomp().

#define RE_SYNTAX_POSIX_EGREP   (RE_SYNTAX_EGREP | RE_INTERVALS | RE_NO_BK_BRACES)
 

Definition at line 169 of file regex.h.

#define RE_SYNTAX_POSIX_EXTENDED
 

Value:

Definition at line 191 of file regex.h.

Referenced by regcomp().

#define RE_SYNTAX_POSIX_MINIMAL_BASIC   (_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS)
 

Definition at line 188 of file regex.h.

#define RE_SYNTAX_POSIX_MINIMAL_EXTENDED
 

Value:

Definition at line 199 of file regex.h.

#define RE_SYNTAX_SED   RE_SYNTAX_POSIX_BASIC
 

Definition at line 175 of file regex.h.

#define RE_UNMATCHED_RIGHT_PAREN_ORD   (RE_NO_EMPTY_RANGES << 1)
 

Definition at line 131 of file regex.h.

#define REG_EXTENDED   1
 

Definition at line 219 of file regex.h.

Referenced by ht_regex_search_request::ht_regex_search_request(), regcomp(), and ht_lang_syntax_lexer::set_lexer_rules().

#define REG_ICASE   (REG_EXTENDED << 1)
 

Definition at line 223 of file regex.h.

Referenced by ht_regex_search_request::ht_regex_search_request(), and regcomp().

#define REG_NEWLINE   (REG_ICASE << 1)
 

Definition at line 228 of file regex.h.

Referenced by regcomp().

#define REG_NOSUB   (REG_NEWLINE << 1)
 

Definition at line 232 of file regex.h.

Referenced by regcomp().

#define REG_NOTBOL   1
 

Definition at line 242 of file regex.h.

Referenced by regexec().

#define REG_NOTEOL   (1 << 1)
 

Definition at line 245 of file regex.h.

Referenced by regexec().

#define REGS_FIXED   2
 

Definition at line 326 of file regex.h.

Referenced by regexec().

#define REGS_REALLOCATE   1
 

Definition at line 325 of file regex.h.

Referenced by re_set_registers().

#define REGS_UNALLOCATED   0
 

Definition at line 324 of file regex.h.

Referenced by re_compile_pattern(), and re_set_registers().


Typedef Documentation

typedef unsigned reg_syntax_t
 

Definition at line 38 of file regex.h.

Referenced by re_set_syntax().

typedef struct re_pattern_buffer regex_t
 

Definition at line 350 of file regex.h.

Referenced by ht_lang_syntax_lexer::free_lexer_rules(), ht_lang_syntax_lexer::gettoken(), ht_regex_search_exception::ht_regex_search_exception(), regcomp(), regerror(), regexec(), regfree(), regmatch(), and ht_lang_syntax_lexer::set_lexer_rules().

typedef int regoff_t
 

Definition at line 353 of file regex.h.

Referenced by re_set_registers(), and regexec().


Enumeration Type Documentation

enum reg_errcode_t
 

Enumeration values:
REG_NOERROR 
REG_NOMATCH 
REG_BADPAT 
REG_ECOLLATE 
REG_ECTYPE 
REG_EESCAPE 
REG_ESUBREG 
REG_EBRACK 
REG_EPAREN 
REG_EBRACE 
REG_BADBR 
REG_ERANGE 
REG_ESPACE 
REG_BADRPT 
REG_EEND 
REG_ESIZE 
REG_ERPAREN 

Definition at line 250 of file regex.h.

Referenced by re_compile_pattern(), and regcomp().


Function Documentation

void regfree _RE_ARGS (regex_t *preg)   ) 
 

size_t regerror _RE_ARGS (int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size)   ) 
 

int regexec _RE_ARGS (const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags)   ) 
 

int regcomp _RE_ARGS (regex_t *preg, const char *pattern, int cflags)   ) 
 

void re_set_registers _RE_ARGS (struct re_pattern_buffer *buffer, struct re_registers *regs, unsigned num_regs, regoff_t *starts, regoff_t *ends)   ) 
 

int re_match_2 _RE_ARGS (struct re_pattern_buffer *buffer, const char *string1, int length1, const char *string2, int length2, int start, struct re_registers *regs, int stop)   ) 
 

int re_match _RE_ARGS (struct re_pattern_buffer *buffer, const char *string, int length, int start, struct re_registers *regs)   ) 
 

int re_search_2 _RE_ARGS (struct re_pattern_buffer *buffer, const char *string1, int length1, const char *string2, int length2, int start, int range, struct re_registers *regs, int stop)   ) 
 

int re_search _RE_ARGS (struct re_pattern_buffer *buffer, const char *string, int length, int start, int range, struct re_registers *regs)   ) 
 

int re_compile_fastmap _RE_ARGS (struct re_pattern_buffer *buffer)   ) 
 

const char* re_compile_pattern _RE_ARGS (const char *pattern, int length, struct re_pattern_buffer *buffer)   ) 
 

reg_syntax_t re_set_syntax _RE_ARGS (reg_syntax_t syntax)   ) 
 


Variable Documentation

reg_syntax_t re_syntax_options
 

Definition at line 141 of file regex.h.

Referenced by re_compile_pattern(), and re_set_syntax().


Generated on Fri May 7 21:15:52 2004 by doxygen 1.3.5