Main Page | Class List | Directories | 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 _REGEX_H   1
#define RE_BACKSLASH_ESCAPE_IN_LISTS   ((unsigned long int) 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_NO_GNU_OPS   (RE_NO_POSIX_BACKTRACKING << 1)
#define RE_DEBUG   (RE_NO_GNU_OPS << 1)
#define RE_INVALID_INTERVAL_ORD   (RE_DEBUG << 1)
#define RE_ICASE   (RE_INVALID_INTERVAL_ORD << 1)
#define RE_SYNTAX_EMACS   0
#define RE_SYNTAX_AWK
#define RE_SYNTAX_GNU_AWK
#define RE_SYNTAX_POSIX_AWK
#define RE_SYNTAX_GREP
#define RE_SYNTAX_EGREP
#define RE_SYNTAX_POSIX_EGREP
#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   (0x7fff)
#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 RE_TRANSLATE_TYPE   char *
#define REGS_UNALLOCATED   0
#define REGS_REALLOCATE   1
#define REGS_FIXED   2
#define RE_NREGS   30
#define _RE_ARGS(args)   ()
#define __restrict

Typedefs

typedef long int s_reg_t
typedef unsigned long int active_reg_t
typedef unsigned long int 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
}

Variables

reg_syntax_t re_syntax_options


Define Documentation

#define __restrict
 

Definition at line 533 of file regex.h.

#define _RE_ARGS args   )     ()
 

Definition at line 448 of file regex.h.

#define _RE_SYNTAX_POSIX_COMMON
 

Value:

Definition at line 220 of file regex.h.

#define _REGEX_H   1
 

Definition at line 23 of file regex.h.

#define RE_BACKSLASH_ESCAPE_IN_LISTS   ((unsigned long int) 1)
 

Definition at line 55 of file regex.h.

Referenced by peek_token_bracket(), and reflags2str().

#define RE_BK_PLUS_QM   (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
 

Definition at line 60 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_CHAR_CLASSES   (RE_BK_PLUS_QM << 1)
 

Definition at line 66 of file regex.h.

Referenced by peek_token_bracket(), and reflags2str().

#define RE_CONTEXT_INDEP_ANCHORS   (RE_CHAR_CLASSES << 1)
 

Definition at line 80 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_CONTEXT_INDEP_OPS   (RE_CONTEXT_INDEP_ANCHORS << 1)
 

Definition at line 88 of file regex.h.

Referenced by parse_expression(), and reflags2str().

#define RE_CONTEXT_INVALID_OPS   (RE_CONTEXT_INDEP_OPS << 1)
 

Definition at line 92 of file regex.h.

Referenced by parse_expression(), and reflags2str().

#define RE_DEBUG   (RE_NO_GNU_OPS << 1)
 

Definition at line 160 of file regex.h.

Referenced by reflags2str().

#define RE_DOT_NEWLINE   (RE_CONTEXT_INVALID_OPS << 1)
 

Definition at line 96 of file regex.h.

Referenced by check_node_accept(), group_nodes_into_DFAstates(), reflags2str(), and regcomp().

#define RE_DOT_NOT_NULL   (RE_DOT_NEWLINE << 1)
 

Definition at line 100 of file regex.h.

Referenced by check_node_accept(), group_nodes_into_DFAstates(), and reflags2str().

#define RE_DUP_MAX   (0x7fff)
 

Definition at line 255 of file regex.h.

Referenced by fetch_number().

#define RE_HAT_LISTS_NOT_NEWLINE   (RE_DOT_NOT_NULL << 1)
 

Definition at line 104 of file regex.h.

Referenced by parse_bracket_exp(), reflags2str(), and regcomp().

#define RE_ICASE   (RE_INVALID_INTERVAL_ORD << 1)
 

Definition at line 169 of file regex.h.

Referenced by build_charclass(), re_compile_fastmap_iter(), re_compile_internal(), re_search_internal(), reflags2str(), and regcomp().

#define RE_INTERVALS   (RE_HAT_LISTS_NOT_NEWLINE << 1)
 

Definition at line 109 of file regex.h.

Referenced by peek_token(), reflags2str(), and resetup().

#define RE_INVALID_INTERVAL_ORD   (RE_DEBUG << 1)
 

Definition at line 165 of file regex.h.

Referenced by parse_dup_op(), and reflags2str().

#define RE_LIMITED_OPS   (RE_INTERVALS << 1)
 

Definition at line 113 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NEWLINE_ALT   (RE_LIMITED_OPS << 1)
 

Definition at line 117 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NO_BK_BRACES   (RE_NEWLINE_ALT << 1)
 

Definition at line 122 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NO_BK_PARENS   (RE_NO_BK_BRACES << 1)
 

Definition at line 126 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NO_BK_REFS   (RE_NO_BK_PARENS << 1)
 

Definition at line 130 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NO_BK_VBAR   (RE_NO_BK_REFS << 1)
 

Definition at line 134 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NO_EMPTY_RANGES   (RE_NO_BK_VBAR << 1)
 

Definition at line 140 of file regex.h.

Referenced by parse_bracket_exp(), and reflags2str().

#define RE_NO_GNU_OPS   (RE_NO_POSIX_BACKTRACKING << 1)
 

Definition at line 152 of file regex.h.

Referenced by peek_token(), and reflags2str().

#define RE_NO_POSIX_BACKTRACKING   (RE_UNMATCHED_RIGHT_PAREN_ORD << 1)
 

Definition at line 148 of file regex.h.

Referenced by reflags2str().

#define RE_NREGS   30
 

Definition at line 421 of file regex.h.

#define RE_SYNTAX_AWK
 

Value:

Definition at line 183 of file regex.h.

Referenced by resetup().

#define RE_SYNTAX_ED   RE_SYNTAX_POSIX_BASIC
 

Definition at line 215 of file regex.h.

#define RE_SYNTAX_EGREP
 

Value:

Definition at line 204 of file regex.h.

#define RE_SYNTAX_EMACS   0
 

Definition at line 181 of file regex.h.

#define RE_SYNTAX_GNU_AWK
 

Value:

Definition at line 190 of file regex.h.

Referenced by resetup().

#define RE_SYNTAX_GREP
 

Value:

Definition at line 199 of file regex.h.

#define RE_SYNTAX_POSIX_AWK
 

Value:

Definition at line 195 of file regex.h.

Referenced by resetup().

#define RE_SYNTAX_POSIX_BASIC   (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM)
 

Definition at line 224 of file regex.h.

Referenced by regcomp().

#define RE_SYNTAX_POSIX_EGREP
 

Value:

Definition at line 210 of file regex.h.

#define RE_SYNTAX_POSIX_EXTENDED
 

Value:

Definition at line 233 of file regex.h.

Referenced by regcomp().

#define RE_SYNTAX_POSIX_MINIMAL_BASIC   (_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS)
 

Definition at line 230 of file regex.h.

#define RE_SYNTAX_POSIX_MINIMAL_EXTENDED
 

Value:

Definition at line 241 of file regex.h.

#define RE_SYNTAX_SED   RE_SYNTAX_POSIX_BASIC
 

Definition at line 217 of file regex.h.

#define RE_TRANSLATE_TYPE   char *
 

Definition at line 330 of file regex.h.

#define RE_UNMATCHED_RIGHT_PAREN_ORD   (RE_NO_EMPTY_RANGES << 1)
 

Definition at line 144 of file regex.h.

Referenced by parse_expression(), and reflags2str().

#define REG_EXTENDED   1
 

Definition at line 262 of file regex.h.

Referenced by regcomp().

#define REG_ICASE   (REG_EXTENDED << 1)
 

Definition at line 266 of file regex.h.

Referenced by regcomp().

#define REG_NEWLINE   (REG_ICASE << 1)
 

Definition at line 271 of file regex.h.

Referenced by regcomp().

#define REG_NOSUB   (REG_NEWLINE << 1)
 

Definition at line 275 of file regex.h.

Referenced by regcomp().

#define REG_NOTBOL   1
 

Definition at line 285 of file regex.h.

Referenced by re_search_internal(), re_search_stub(), and re_string_reconstruct().

#define REG_NOTEOL   (1 << 1)
 

Definition at line 288 of file regex.h.

Referenced by re_search_stub(), and re_string_context_at().

#define REGS_FIXED   2
 

Definition at line 377 of file regex.h.

Referenced by re_copy_regs(), and re_search_stub().

#define REGS_REALLOCATE   1
 

Definition at line 376 of file regex.h.

Referenced by re_copy_regs(), and re_set_registers().

#define REGS_UNALLOCATED   0
 

Definition at line 375 of file regex.h.

Referenced by re_compile_internal(), re_copy_regs(), re_search_stub(), and re_set_registers().


Typedef Documentation

typedef unsigned long int active_reg_t
 

Definition at line 44 of file regex.h.

typedef unsigned long int reg_syntax_t
 

Definition at line 51 of file regex.h.

typedef struct re_pattern_buffer regex_t
 

Definition at line 401 of file regex.h.

typedef int regoff_t
 

Definition at line 404 of file regex.h.

typedef long int s_reg_t
 

Definition at line 43 of file regex.h.


Enumeration Type Documentation

enum reg_errcode_t
 

Enumerator:
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 293 of file regex.h.

00294 {
00295 #ifdef _XOPEN_SOURCE
00296   REG_ENOSYS = -1,      /* This will never happen for this implementation.  */
00297 #endif
00298 
00299   REG_NOERROR = 0,      /* Success.  */
00300   REG_NOMATCH,          /* Didn't find a match (for regexec).  */
00301 
00302   /* POSIX regcomp return error codes.  (In the order listed in the
00303      standard.)  */
00304   REG_BADPAT,           /* Invalid pattern.  */
00305   REG_ECOLLATE,         /* Not implemented.  */
00306   REG_ECTYPE,           /* Invalid character class name.  */
00307   REG_EESCAPE,          /* Trailing backslash.  */
00308   REG_ESUBREG,          /* Invalid back reference.  */
00309   REG_EBRACK,           /* Unmatched left bracket.  */
00310   REG_EPAREN,           /* Parenthesis imbalance.  */
00311   REG_EBRACE,           /* Unmatched \{.  */
00312   REG_BADBR,            /* Invalid contents of \{\}.  */
00313   REG_ERANGE,           /* Invalid range end.  */
00314   REG_ESPACE,           /* Ran out of memory.  */
00315   REG_BADRPT,           /* No preceding re for repetition op.  */
00316 
00317   /* Error codes we've added.  */
00318   REG_EEND,             /* Premature end.  */
00319   REG_ESIZE,            /* Compiled pattern bigger than 2^16 bytes.  */
00320   REG_ERPAREN           /* Unmatched ) or \); not returned from regcomp.  */
00321 } reg_errcode_t;


Variable Documentation

reg_syntax_t re_syntax_options
 

Definition at line 248 of file regcomp.c.

Referenced by re_compile_pattern().


© sourcejam.com 2005-2008