">

LLVM: lib/Support/regex2.h File Reference (original) (raw)

#include "[regutils.h](regutils%5F8h%5Fsource.html)"
#include <stddef.h>

Go to the source code of this file.

Macros
#define MAGIC1 ((('r'^0200)<<8) | 'e')
#define OPRMASK 0xf8000000LU
#define OPDMASK 0x07ffffffLU
#define OPSHIFT ((unsigned)27)
#define OP(n) ((n)&OPRMASK)
#define OPND(n) ((n)&OPDMASK)
#define SOP(op, opnd) ((op)|(opnd))
#define OEND (1LU<<OPSHIFT) /* endmarker - */
#define OCHAR (2LU<<OPSHIFT) /* character unsigned char */
#define OBOL (3LU<<OPSHIFT) /* left anchor - */
#define OEOL (4LU<<OPSHIFT) /* right anchor - */
#define OANY (5LU<<OPSHIFT) /* . - */
#define OANYOF (6LU<<OPSHIFT) /* [...] set number */
#define OBACK_ (7LU<<OPSHIFT) /* begin \d paren number */
#define O_BACK (8LU<<OPSHIFT) /* end \d paren number */
#define OPLUS_ (9LU<<OPSHIFT) /* + prefix fwd to suffix */
#define O_PLUS (10LU<<OPSHIFT) /* + suffix back to prefix */
#define OQUEST_ (11LU<<OPSHIFT) /* ? prefix fwd to suffix */
#define O_QUEST (12LU<<OPSHIFT) /* ? suffix back to prefix */
#define OLPAREN (13LU<<OPSHIFT) /* ( fwd to ) */
#define ORPAREN (14LU<<OPSHIFT) /* ) back to ( */
#define OCH_ (15LU<<OPSHIFT) /* begin choice fwd to OOR2 */
#define OOR1 (16LU<<OPSHIFT) /* | pt. 1 back to OOR1 or OCH_ */
#define OOR2 (17LU<<OPSHIFT) /* | pt. 2 fwd to OOR2 or O_CH */
#define O_CH (18LU<<OPSHIFT) /* end choice back to OOR1 */
#define OBOW (19LU<<OPSHIFT) /* begin word - */
#define OEOW (20LU<<OPSHIFT) /* end word - */
#define CHadd(cs, c) ((cs)->ptr[(uch)(c)] |= (cs)->mask, (cs)->hash += (c))
#define CHsub(cs, c) ((cs)->ptr[(uch)(c)] &= ~(cs)->mask, (cs)->hash -= (c))
#define CHIN(cs, c) ((cs)->ptr[(uch)(c)] & (cs)->mask)
#define MCadd(p, cs, cp) mcadd(p, cs, cp) /* llvm_regcomp() internal fns */
#define MCsub(p, cs, cp) mcsub(p, cs, cp)
#define MCin(p, cs, cp) mcin(p, cs, cp)
#define MAGIC2 ((('R'^0200)<<8)|'E')
#define USEBOL 01 /* used ^ */
#define USEEOL 02 /* used $ */
#define REGEX_BAD 04 /* something wrong */
#define OUT (CHAR_MAX+1) /* a non-character value */
#define ISWORD(c) (isalnum(c&0xff) |
Typedefs
typedef unsigned long sop
typedef long sopno
typedef unsigned char cat_t

CHadd

| #define CHadd | ( | | cs, | | ------------- | ----------------------------------------------------------------------------------------------------------------- | | --- | | | c | | | | | ) | ((cs)->ptr[(uch)(c)] |= (cs)->mask, (cs)->hash += (c)) | | |

CHIN

| #define CHIN | ( | | cs, | | ------------ | -------------------------------------------------------------------------------------------- | | --- | | | c | | | | | ) | ((cs)->ptr[(uch)(c)] & (cs)->mask) | | |

CHsub

| #define CHsub | ( | | cs, | | ------------- | ------------------------------------------------------------------------------------------------------------------ | | --- | | | c | | | | | ) | ((cs)->ptr[(uch)(c)] &= ~(cs)->mask, (cs)->hash -= (c)) | | |

ISWORD

| #define ISWORD | ( | | c | ) | (isalnum(c&0xff) || (c) == '_') | | -------------- | - | | - | - | ------------------------------------------------------------------------------------------------------- |

MAGIC1

#define MAGIC1 ((('r'^0200)<<8) | 'e')

MAGIC2

#define MAGIC2 ((('R'^0200)<<8)|'E')

MCadd

MCin

| #define MCin | ( | | p, | | ------------ | --------------- | | -- | | | cs, | | | | | | cp | | | | | ) | mcin(p, cs, cp) | | |

MCsub

| #define MCsub | ( | | p, | | ------------- | ---------------- | | -- | | | cs, | | | | | | cp | | | | | ) | mcsub(p, cs, cp) | | |

O_BACK

#define O_BACK (8LU<<OPSHIFT) /* end \d paren number */

O_CH

#define O_CH (18LU<<OPSHIFT) /* end choice back to OOR1 */

O_PLUS

#define O_PLUS (10LU<<OPSHIFT) /* + suffix back to prefix */

O_QUEST

#define O_QUEST (12LU<<OPSHIFT) /* ? suffix back to prefix */

OANY

#define OANY (5LU<<OPSHIFT) /* . - */

OANYOF

#define OANYOF (6LU<<OPSHIFT) /* [...] set number */

OBACK_

#define OBACK_ (7LU<<OPSHIFT) /* begin \d paren number */

OBOL

#define OBOL (3LU<<OPSHIFT) /* left anchor - */

OBOW

#define OBOW (19LU<<OPSHIFT) /* begin word - */

OCH_

#define OCH_ (15LU<<OPSHIFT) /* begin choice fwd to OOR2 */

OCHAR

OEND

#define OEND (1LU<<OPSHIFT) /* endmarker - */

OEOL

#define OEOL (4LU<<OPSHIFT) /* right anchor - */

OEOW

#define OEOW (20LU<<OPSHIFT) /* end word - */

OLPAREN

#define OLPAREN (13LU<<OPSHIFT) /* ( fwd to ) */

OOR1

#define OOR1 (16LU<<OPSHIFT) /* | pt. 1 back to OOR1 or OCH_ */

OOR2

#define OOR2 (17LU<<OPSHIFT) /* | pt. 2 fwd to OOR2 or O_CH */

OP

OPDMASK

#define OPDMASK 0x07ffffffLU

OPLUS_

#define OPLUS_ (9LU<<OPSHIFT) /* + prefix fwd to suffix */

OPND

OPRMASK

#define OPRMASK 0xf8000000LU

OPSHIFT

OQUEST_

#define OQUEST_ (11LU<<OPSHIFT) /* ? prefix fwd to suffix */

ORPAREN

#define ORPAREN (14LU<<OPSHIFT) /* ) back to ( */

OUT

#define OUT (CHAR_MAX+1) /* a non-character value */

REGEX_BAD

#define REGEX_BAD 04 /* something wrong */

SOP

| #define SOP | ( | | op, | | ----------- | --------------------------------------------------------------------------------- | | ---------------------------------------------------------------------- | | | opnd | | | | | ) | ((op)|(opnd)) | | |

USEBOL

#define USEBOL 01 /* used ^ */

USEEOL

#define USEEOL 02 /* used $ */

cat_t

sop

sopno