Module: AdLint::Cc1::ScannerConstants
- Included in:
- Scanner, Language::C
- Defined in:
- lib/adlint/cc1/scanner.rb
Overview
DESCRIPTION
Constants for scanning the C source code.
Constant Summary collapse
- KEYWORDS =
DESCRIPTION
C keywords table.
{ "sizeof" => :SIZEOF, "typedef" => :TYPEDEF, "extern" => :EXTERN, "static" => :STATIC, "auto" => :AUTO, "register" => :REGISTER, "inline" => :INLINE, "restrict" => :RESTRICT, "char" => :CHAR, "short" => :SHORT, "int" => :INT, "long" => :LONG, "signed" => :SIGNED, "unsigned" => :UNSIGNED, "float" => :FLOAT, "double" => :DOUBLE, "const" => :CONST, "volatile" => :VOLATILE, "void" => :VOID, "_Bool" => :BOOL, "_Complex" => :COMPLEX, "_Imaginary" => :IMAGINARY, "struct" => :STRUCT, "union" => :UNION, "enum" => :ENUM, "case" => :CASE, "default" => :DEFAULT, "if" => :IF, "else" => :ELSE, "switch" => :SWITCH, "while" => :WHILE, "do" => :DO, "for" => :FOR, "goto" => :GOTO, "continue" => :CONTINUE, "break" => :BREAK, "return" => :RETURN, "__typeof__" => :TYPEOF, "__alignof__" => :ALIGNOF }.freeze
- KEYWORD_VALUES =
KEYWORDS.keys.to_set.freeze
- PUNCTUATORS =
DESCRIPTION
C punctuators table.
[ "{", "}", "(", ")", "[", "]", ";", ",", "::", ":", "?", "||", "|=", "|", "&&", "&=", "&", "^=", "^", "==", "=", "!=", "!", "<<=", "<=", "<<", "<", ">>=", ">=", ">>", ">", "+=", "++", "+", "->*", "->", "-=", "--", "-", "*=", "*", "/=", "/", "%=", "%", "...", ".*", ".", "~", ].to_set.freeze