diff options
author | Florian Müllner <fmuellner@gnome.org> | 2013-11-29 01:12:40 +0100 |
---|---|---|
committer | Florian Müllner <fmuellner@gnome.org> | 2013-11-29 18:45:31 +0000 |
commit | e4efb97c8a20f5dcbf6cd2736bd5bcd92e1d814d (patch) | |
tree | baa632338c6712a1582fe0711d4c46e4f2a13637 /giscanner/scannerlexer.l | |
parent | 9112ec1e845015a17bba49fb1dd385a2c6e9efd7 (diff) | |
download | gobject-introspection-e4efb97c8a20f5dcbf6cd2736bd5bcd92e1d814d.tar.gz |
scanner: Support boolean constants
Aliasing TRUE or FALSE is not very common, but done occasionally
for extra clarity. Namely G_SOURCE_REMOVE / G_SOURCE_CONTINUE are
self-explanatory, unlike the "raw" booleans.
https://bugzilla.gnome.org/show_bug.cgi?id=719566
Diffstat (limited to 'giscanner/scannerlexer.l')
-rw-r--r-- | giscanner/scannerlexer.l | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/giscanner/scannerlexer.l b/giscanner/scannerlexer.l index 89a34b88..413bd98a 100644 --- a/giscanner/scannerlexer.l +++ b/giscanner/scannerlexer.l @@ -169,6 +169,12 @@ stringtext ([^\\\"])|(\\.) "G_GINT64_CONSTANT" { return INTL_CONST; } "G_GUINT64_CONSTANT" { return INTUL_CONST; } + +"TRUE" { return BOOLEAN; } +"FALSE" { return BOOLEAN; } +"true" { return BOOLEAN; } +"false" { return BOOLEAN; } + [a-zA-Z_][a-zA-Z_0-9]* { if (scanner->macro_scan) return check_identifier(scanner, yytext); else REJECT; } "asm" { if (!parse_ignored_macro()) REJECT; } |