Implementation
Mode c(Highlight hljs) {
final Mode _mode0 = Mode();
final Mode _mode1 = Mode();
final Mode _mode2 = Mode();
final Mode _mode3 = Mode();
final Mode _mode4 = Mode();
final Mode _mode5 = Mode();
final Mode _mode6 = Mode();
final Mode _mode7 = Mode();
final Mode _mode8 = Mode();
final Mode _mode9 = Mode();
final Mode _mode10 = Mode();
final Mode _mode11 = Mode();
final Mode _mode12 = Mode();
final Mode _mode13 = Mode();
final Mode _mode14 = Mode();
final Mode _mode15 = Mode();
final Mode _mode16 = Mode();
final Mode _mode17 = Mode();
final Mode _mode18 = Mode();
final Mode _mode19 = Mode();
final Mode _mode20 = Mode();
final Mode _mode21 = Mode();
final Mode _mode22 = Mode();
final Mode _mode23 = Mode();
_mode0.scope = r'meta';
_mode0.begin = r'#\s*[a-z]+\b';
_mode0.end = r'$';
_mode0.keywords = {
r'keyword':
r'if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include',
};
_mode0.contains = [_mode1, _mode2, _mode7, _mode8, _mode12];
_mode1.begin = r'\\\n';
_mode1.relevance = 0;
_mode2.scope = r'string';
_mode2.variants = [_mode3, _mode5, _mode6];
_mode3.begin = r'(u8?|U|L)?"';
_mode3.end = r'"';
_mode3.illegal = r'\n';
_mode3.contains = [_mode4];
_mode4.begin = r'\\[\s\S]';
_mode4.relevance = 0;
_mode5.begin =
r"(u8?|U|L)?'(\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\S)|.)";
_mode5.end = r"'";
_mode5.illegal = r'.';
_mode6.begin = r'(?:u8?|U|L)?R"([^()\\ ]{0,16})\(';
_mode6.end = r'\)([^()\\ ]{0,16})"';
_mode7.scope = r'string';
_mode7.begin = r'<.*?>';
_mode8.scope = r'comment';
_mode8.begin = r'//';
_mode8.end = r'$';
_mode8.contains = [_mode9, _mode10, _mode11];
_mode9.begin = r'\\\n';
_mode10.scope = r'doctag';
_mode10.begin = r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)';
_mode10.end = r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):';
_mode10.excludeBegin = true;
_mode10.relevance = 0;
_mode11.begin =
r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}";
_mode12.scope = r'comment';
_mode12.begin = r'/\*';
_mode12.end = r'\*/';
_mode12.contains = [_mode13, _mode14];
_mode13.scope = r'doctag';
_mode13.begin = r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)';
_mode13.end = r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):';
_mode13.excludeBegin = true;
_mode13.relevance = 0;
_mode14.begin =
r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}";
_mode15.scope = r'type';
_mode15.variants = [_mode16, _mode17];
_mode16.begin = r'\b[a-z\d_]*_t\b';
_mode17.match = r'\batomic_[a-z]{3,6}\b';
_mode18.scope = r'number';
_mode18.variants = [_mode19, _mode20, _mode21, _mode22];
_mode18.relevance = 0;
_mode19.match = r"\b(0b[01']+)";
_mode20.match =
r"(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)";
_mode21.match =
r"(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)";
_mode22.match = r"(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?";
_mode23.scope = r'string';
_mode23.variants = [_mode3, _mode5, _mode6];
return Mode(
name: r'C',
aliases: [r'h'],
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
disableAutodetect: true,
illegal: r'</',
contains: [
Mode(
variants: [
Mode(begin: r'=', end: r';'),
Mode(begin: r'\(', end: r'\)'),
Mode(beginKeywords: r'new throw return else', end: r';'),
],
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
contains: [
_mode0,
_mode15,
_mode8,
_mode12,
_mode18,
_mode23,
Mode(
begin: r'\(',
end: r'\)',
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
contains: [
_mode0,
_mode15,
_mode8,
_mode12,
_mode18,
_mode23,
r'self',
],
relevance: 0,
),
],
relevance: 0,
),
Mode(
begin:
r'((decltype\(auto\)|(?:[a-zA-Z_]\w*::)?[a-zA-Z_]\w*(?:<[^<>]+>)?)[\*&\s]+)+(?:[a-zA-Z_]\w*::)?[a-zA-Z]\w*\s*\(',
returnBegin: true,
end: r'[{;=]',
excludeEnd: true,
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
illegal: r'[^\w\s\*&:<>.]',
contains: [
Mode(
begin: r'decltype\(auto\)',
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
relevance: 0,
),
Mode(
begin: r'(?:[a-zA-Z_]\w*::)?[a-zA-Z]\w*\s*\(',
returnBegin: true,
contains: [
Mode(
scope: r'title.function',
begin: r'(?:[a-zA-Z_]\w*::)?[a-zA-Z]\w*',
relevance: 0,
),
],
relevance: 0,
),
Mode(relevance: 0, match: r','),
Mode(
scope: r'params',
begin: r'\(',
end: r'\)',
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
relevance: 0,
contains: [
_mode8,
_mode12,
_mode23,
_mode18,
_mode15,
Mode(
begin: r'\(',
end: r'\)',
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
relevance: 0,
contains: [r'self', _mode8, _mode12, _mode23, _mode18, _mode15],
),
],
),
_mode15,
_mode8,
_mode12,
_mode0,
],
),
_mode0,
_mode15,
_mode8,
_mode12,
_mode18,
_mode23,
_mode0,
Mode(
begin: r'[a-zA-Z]\w*::',
keywords: {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
),
Mode(
scope: r'class',
beginKeywords: r'enum class struct union',
end: r'[{;:<>=]',
contains: [
Mode(beginKeywords: r'final class struct'),
Mode(scope: r'title', begin: r'[a-zA-Z]\w*', relevance: 0),
],
),
],
exports: {
r'preprocessor': _mode0,
r'strings': _mode23,
r'keywords': {
r'keyword': [
r'asm',
r'auto',
r'break',
r'case',
r'continue',
r'default',
r'do',
r'else',
r'enum',
r'extern',
r'for',
r'fortran',
r'goto',
r'if',
r'inline',
r'register',
r'restrict',
r'return',
r'sizeof',
r'typeof',
r'typeof_unqual',
r'struct',
r'switch',
r'typedef',
r'union',
r'volatile',
r'while',
r'_Alignas',
r'_Alignof',
r'_Atomic',
r'_Generic',
r'_Noreturn',
r'_Static_assert',
r'_Thread_local',
r'alignas',
r'alignof',
r'noreturn',
r'static_assert',
r'thread_local',
r'_Pragma',
],
r'type': [
r'float',
r'double',
r'signed',
r'unsigned',
r'int',
r'short',
r'long',
r'char',
r'void',
r'_Bool',
r'_BitInt',
r'_Complex',
r'_Imaginary',
r'_Decimal32',
r'_Decimal64',
r'_Decimal96',
r'_Decimal128',
r'_Decimal64x',
r'_Decimal128x',
r'_Float16',
r'_Float32',
r'_Float64',
r'_Float128',
r'_Float32x',
r'_Float64x',
r'_Float128x',
r'const',
r'static',
r'constexpr',
r'complex',
r'bool',
r'imaginary',
],
r'literal': r'true false NULL',
r'built_in':
r'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr',
},
},
);
}