(cpp|CPP|cxx|CXX|cc|CC|hpp|HPP|hxx|HXX|hh|h|H|mm|MM|c\+\+|C\+\+|m\+\+|M\+\+|mpp|MPP)
commentDoxygen
/\*(\*|!)
\*/
doxyparse
comment
/\*
\*/
TODO
doubleQuoteText
R"#\(
\)#"
SYNTAX_ERROR
/\*
preprocesseur
#[ \t]*if 0
#e(ndif|lse)
SYNTAX_ERROR
#[ \t]*if 0
preprocesseur
#(\\[\\\n]|.)*$
commentDoxygen
//(!|/).*$
doxyparse
comment
//.*$
TODO
doubleQuoteText
(U|u|u8)?"(\\(n|t|v|b|r|f|a|\\|\?|"|0|o[0-7]{2}|x[0-9a-fA-F]{2}|u[0-9]{4}|U[0-9]{8})|.)*"
doubleQuoteText
'(\\(n|t|v|b|r|f|a|\\|\?|'|0|o[0-7]{2}|x[0-9a-fA-F]{2}|u[0-9]{4}|U[0-9]{8})|[^\n])'
SYNTAX_ERROR
'|"|NULL|MAX|MIN|TRUE|FALSE|calloc|malloc|realloc|free|BOOL
keyword
\@return|goto|if|else|case|default|switch|break|continue|while|do|for|sizeof\@
systemFunction
\@new|delete|try|catch|memset|fopen|fread|fwrite|fgets|fclose|printf|(f|s|diag_)printf|(reinterpret|static|dynamic|const)_cast\@
type
\@bool|char(16_t|32_t)?|double|float|u?int(8|16|32|64|128)?(_t)?|long|short|signed|size_t|unsigned|void|(I|U)(8|16|32|64|128)\@
type
\@std::[a-zA-Z_:][\w:]*\@
type
\@etk::(Vector|Array|List|Function|String|UString|RegEx|Pair|NullPtr|Color|Exception|exception::(InvalidArgument|DomainError|LengthError|OutOfRange|RangeError|OverflowError|UnderflowError|CastError|AllocationError|RuntimeError))\@
storageKeyword
\@inline|const|class|namespace|virtual|private|public|protected|friend|const|extern|mutable|auto|register|static|unsigned|signed|volatile|char|double|float|int|long|short|void|typedef|struct|union|enum|override|final\@
commonDefine
\@nullptr|__(LINE|DATA|FILE|func|TIME|STDC|PRETTY_FUNCTION|FUNCTION)__\@
number
\@((0(x|X)[0-9a-fA-F]*)|(\d+\.?\d*|\.\d+)((e|E)(\+|\-)?\d+)?)(LL|L|l|UL|ul|u|U|F|f)?\@
boolean
\@true|false\@
macro
\@[A-Z_][A-Z_0-9]{3,500}\@
memberClass
\@((m|s|p|s|g)_|property|signal)\w+\@
memberClass
\@\w+_\@
inputFunction
\@_\w+\@
functionName
\@((\w|_)+[ \t]*\()
boolean
==|<=|>=|!=|<{1,2}|>{1,2}|&&|\{|\}
SYNTAX_ERROR
'|"
doxygen-key-known
(\@|\\)[\t ]*(addindex|addtogroup|anchor|arg|attention|author|authors|a|brief|bug|b|callgraph|category|cite|class|code|cond|copybrief|copydetails|copydoc|copyright|date|def|defgroup|deprecated|details|diafile|dir|docbookonly|dontinclude|dot|dotfile|else|elseif|em|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endif|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|endverbatim|enduml|endxmlonly|enum|example|exception|extends|e|file|fn|headerfile|hidecallergraph|hidecallgraph|hideinitializer|htmlinclude|htmlonly|idlexcept|ifnot|if|image|implements|includelineno|include|ingroup|internal|invariant|interface|latexinclude|latexonly|line|link|license|li|mainpage|manonly|memberof|msc|mscfile|name|namespace|nosubgrouping|note|n|overload|package|page|paragraph|param|parblock|par|post|pre|private|privatesection|property|protected|protectedsection|protocol|public|publicsection|pure|p|refitem|ref|related|relates|relatedalso|relatesalso|remark|remarks|result|return|returns|retval|rtfonly|sa|secreflist|section|see|short|showinitializer|since|skip|skipline|snippet|startuml|struct|subpage|subsection|subsubsection|tableofcontents|test|throw|throws|todo|tparam|typedef|union|until|var|verbatim|verbinclude|version|vhdlflow|warning|weakgroup|xmlonly|xrefitem)
doxygen-key
(\@|\\)[\t ]*\w+
doxygen-in-out
\[(in|in,out|out)\]
inputFunction
\@_\w+\@
SYNTAX_ERROR
TODO[ \t]*:.*$