LLVM 20.0.0git
|
#include <sys/types.h>
Go to the source code of this file.
Classes | |
struct | llvm_regmatch_t |
struct | llvm_regex |
Macros | |
#define | REG_BASIC 0000 |
#define | REG_EXTENDED 0001 |
#define | REG_ICASE 0002 |
#define | REG_NOSUB 0004 |
#define | REG_NEWLINE 0010 |
#define | REG_NOSPEC 0020 |
#define | REG_PEND 0040 |
#define | REG_DUMP 0200 |
#define | REG_NOMATCH 1 |
#define | REG_BADPAT 2 |
#define | REG_ECOLLATE 3 |
#define | REG_ECTYPE 4 |
#define | REG_EESCAPE 5 |
#define | REG_ESUBREG 6 |
#define | REG_EBRACK 7 |
#define | REG_EPAREN 8 |
#define | REG_EBRACE 9 |
#define | REG_BADBR 10 |
#define | REG_ERANGE 11 |
#define | REG_ESPACE 12 |
#define | REG_BADRPT 13 |
#define | REG_EMPTY 14 |
#define | REG_ASSERT 15 |
#define | REG_INVARG 16 |
#define | REG_ATOI 255 /* convert name to number (!) */ |
#define | REG_ITOA 0400 /* convert number to name (!) */ |
#define | REG_NOTBOL 00001 |
#define | REG_NOTEOL 00002 |
#define | REG_STARTEND 00004 |
#define | REG_TRACE 00400 /* tracing of execution */ |
#define | REG_LARGE 01000 /* force large representation */ |
#define | REG_BACKR 02000 /* force use of backref code */ |
Typedefs | |
typedef off_t | llvm_regoff_t |
typedef struct llvm_regex | llvm_regex_t |
Functions | |
int | llvm_regcomp (llvm_regex_t *, const char *, int) |
size_t | llvm_regerror (int, const llvm_regex_t *, char *, size_t) |
int | llvm_regexec (const llvm_regex_t *, const char *, size_t, llvm_regmatch_t[], int) |
void | llvm_regfree (llvm_regex_t *) |
size_t | llvm_strlcpy (char *dst, const char *src, size_t siz) |
#define REG_ASSERT 15 |
Definition at line 80 of file regex_impl.h.
Definition at line 82 of file regex_impl.h.
#define REG_BACKR 02000 /* force use of backref code */ |
Definition at line 91 of file regex_impl.h.
#define REG_BADBR 10 |
Definition at line 75 of file regex_impl.h.
#define REG_BADPAT 2 |
Definition at line 67 of file regex_impl.h.
#define REG_BADRPT 13 |
Definition at line 78 of file regex_impl.h.
#define REG_BASIC 0000 |
Definition at line 56 of file regex_impl.h.
#define REG_DUMP 0200 |
Definition at line 63 of file regex_impl.h.
#define REG_EBRACE 9 |
Definition at line 74 of file regex_impl.h.
#define REG_EBRACK 7 |
Definition at line 72 of file regex_impl.h.
#define REG_ECOLLATE 3 |
Definition at line 68 of file regex_impl.h.
#define REG_ECTYPE 4 |
Definition at line 69 of file regex_impl.h.
#define REG_EESCAPE 5 |
Definition at line 70 of file regex_impl.h.
#define REG_EMPTY 14 |
Definition at line 79 of file regex_impl.h.
#define REG_EPAREN 8 |
Definition at line 73 of file regex_impl.h.
#define REG_ERANGE 11 |
Definition at line 76 of file regex_impl.h.
#define REG_ESPACE 12 |
Definition at line 77 of file regex_impl.h.
#define REG_ESUBREG 6 |
Definition at line 71 of file regex_impl.h.
#define REG_EXTENDED 0001 |
Definition at line 57 of file regex_impl.h.
#define REG_ICASE 0002 |
Definition at line 58 of file regex_impl.h.
#define REG_INVARG 16 |
Definition at line 81 of file regex_impl.h.
Definition at line 83 of file regex_impl.h.
#define REG_LARGE 01000 /* force large representation */ |
Definition at line 90 of file regex_impl.h.
#define REG_NEWLINE 0010 |
Definition at line 60 of file regex_impl.h.
#define REG_NOMATCH 1 |
Definition at line 66 of file regex_impl.h.
#define REG_NOSPEC 0020 |
Definition at line 61 of file regex_impl.h.
#define REG_NOSUB 0004 |
Definition at line 59 of file regex_impl.h.
#define REG_NOTBOL 00001 |
Definition at line 86 of file regex_impl.h.
#define REG_NOTEOL 00002 |
Definition at line 87 of file regex_impl.h.
#define REG_PEND 0040 |
Definition at line 62 of file regex_impl.h.
#define REG_STARTEND 00004 |
Definition at line 88 of file regex_impl.h.
#define REG_TRACE 00400 /* tracing of execution */ |
Definition at line 89 of file regex_impl.h.
typedef struct llvm_regex llvm_regex_t |
typedef off_t llvm_regoff_t |
Definition at line 42 of file regex_impl.h.
int llvm_regcomp | ( | llvm_regex_t * | preg, |
const char * | pattern, | ||
int | cflags | ||
) |
Definition at line 293 of file regcomp.c.
References categorize(), re_guts::cflags, EMIT, findmust(), g(), GOODFLAGS, llvm_regfree(), MAGIC1, MAGIC2, NC, NPAREN, OEND, OUT, p_bre(), p_ere(), p_str(), pluscount(), llvm_regex::re_endp, llvm_regex::re_g, llvm_regex::re_magic, llvm_regex::re_nsub, REG_ASSERT, REG_ESPACE, REG_EXTENDED, REG_INVARG, REG_NOSPEC, REG_PEND, REGEX_BAD, SETERROR, stripsnug(), and THERE.
Referenced by llvm::Regex::Regex().
size_t llvm_regerror | ( | int | errcode, |
const llvm_regex_t * | preg, | ||
char * | errbuf, | ||
size_t | errbuf_size | ||
) |
Definition at line 84 of file regerror.c.
References assert(), rerr::code, rerr::explain, llvm_strlcpy(), rerr::name, REG_ATOI, REG_ITOA, regatoi(), and rerrs.
int llvm_regexec | ( | const llvm_regex_t * | preg, |
const char * | string, | ||
size_t | nmatch, | ||
llvm_regmatch_t | pmatch[], | ||
int | eflags | ||
) |
Definition at line 141 of file regexec.c.
References assert(), g(), GOODFLAGS, MAGIC1, MAGIC2, llvm_regex::re_g, llvm_regex::re_magic, REG_BADPAT, REG_LARGE, REGEX_BAD, and states1.
Referenced by llvm::Regex::match().
void llvm_regfree | ( | llvm_regex_t * | preg | ) |
Definition at line 50 of file regfree.c.
References g(), MAGIC1, MAGIC2, llvm_regex::re_g, and llvm_regex::re_magic.
Referenced by llvm_regcomp(), and llvm::Regex::~Regex().
Definition at line 29 of file regstrlcpy.c.
Referenced by llvm_regerror(), and mcadd().