mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-03 09:46:17 +01:00
regex: Assert that our flags values are the same as PCRE's
We rely on those flags having the same values as PCRE's (so we can pass them right through), so assert this at compile time.
This commit is contained in:
parent
03611f7c06
commit
7e8b5ea442
@ -125,6 +125,30 @@
|
||||
G_REGEX_MATCH_NEWLINE_CRLF | \
|
||||
G_REGEX_MATCH_NEWLINE_ANY)
|
||||
|
||||
/* we rely on these flags having the same values */
|
||||
G_STATIC_ASSERT (G_REGEX_CASELESS == PCRE_CASELESS);
|
||||
G_STATIC_ASSERT (G_REGEX_MULTILINE == PCRE_MULTILINE);
|
||||
G_STATIC_ASSERT (G_REGEX_DOTALL == PCRE_DOTALL);
|
||||
G_STATIC_ASSERT (G_REGEX_EXTENDED == PCRE_EXTENDED);
|
||||
G_STATIC_ASSERT (G_REGEX_ANCHORED == PCRE_ANCHORED);
|
||||
G_STATIC_ASSERT (G_REGEX_DOLLAR_ENDONLY == PCRE_DOLLAR_ENDONLY);
|
||||
G_STATIC_ASSERT (G_REGEX_UNGREEDY == PCRE_UNGREEDY);
|
||||
G_STATIC_ASSERT (G_REGEX_NO_AUTO_CAPTURE == PCRE_NO_AUTO_CAPTURE);
|
||||
G_STATIC_ASSERT (G_REGEX_DUPNAMES == PCRE_DUPNAMES);
|
||||
G_STATIC_ASSERT (G_REGEX_NEWLINE_CR == PCRE_NEWLINE_CR);
|
||||
G_STATIC_ASSERT (G_REGEX_NEWLINE_LF == PCRE_NEWLINE_LF);
|
||||
G_STATIC_ASSERT (G_REGEX_NEWLINE_CRLF == PCRE_NEWLINE_CRLF);
|
||||
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_ANCHORED == PCRE_ANCHORED);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NOTBOL == PCRE_NOTBOL);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NOTEOL == PCRE_NOTEOL);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NOTEMPTY == PCRE_NOTEMPTY);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_PARTIAL == PCRE_PARTIAL);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NEWLINE_CR == PCRE_NEWLINE_CR);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NEWLINE_LF == PCRE_NEWLINE_LF);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NEWLINE_CRLF == PCRE_NEWLINE_CRLF);
|
||||
G_STATIC_ASSERT (G_REGEX_MATCH_NEWLINE_ANY == PCRE_NEWLINE_ANY);
|
||||
|
||||
/* if the string is in UTF-8 use g_utf8_ functions, else use
|
||||
* use just +/- 1. */
|
||||
#define NEXT_CHAR(re, s) (((re)->compile_opts & PCRE_UTF8) ? \
|
||||
|
Loading…
Reference in New Issue
Block a user