-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcpp.lang
46 lines (34 loc) · 1.22 KB
/
cpp.lang
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# definitions for C++
include "c_comment.lang"
(keyword,normal,classname) =
`(\<(?:enum|class|struct|typename|union))([[:blank:]]+)([[:alnum:]_]+)`
include "c_preprocessor.lang"
include "number.lang"
include "c_string.lang"
keyword = "__asm|__cdecl|__declspec|__export|__far16",
"__fastcall|__fortran|__import",
"__pascal|__rtti|__stdcall|_asm|_cdecl",
"__except|_export|_far16|_fastcall",
"__finally|_fortran|_import|_pascal|_stdcall|__thread|__try|asm|auto",
"break|case|cdecl|const|continue|default",
"do|else|enum|extern|for|goto",
"if|pascal",
"register|restrict|return|sizeof|static",
"struct|switch",
"typedef|union",
"volatile|while",
"catch|class|const_cast|constexpr|decltype|delete",
"dynamic_cast|explicit|export|false|final|friend",
"inline|mutable|namespace|new|noexcept|operator|override",
"private|protected|public|reinterpret_cast|static_cast",
"static_assert|template|this|throw|true",
"try|typeid|typename",
"using|virtual"
label = '^[[:blank:]]*[[:alnum:]]+:[[:blank:]]*\z'
type = "bool|char|double|float|int|long",
"short|signed|unsigned|void|wchar_t",
"char16_t|char32_t"
include "symbols.lang"
cbracket = "{|}"
include "function.lang"
include "clike_vardeclaration.lang"