# Binary/hex numbers. Note that these take priority over names, # which may begin with numbers.
(r'0b[10]+', Number.Bin),
(r'0x[0-9a-fA-F]+', Number.Hex),
# Bang operators
(words(BANG_OPERATORS, prefix=r'\!', suffix=r'\b'), Operator), # Unknown bang operators are an error
(r'![a-zA-Z]+', Error),
# Names and identifiers
(r'[0-9]*[a-zA-Z_][a-zA-Z_0-9]*', Name),
(r'\$[a-zA-Z_][a-zA-Z_0-9]*', Name.Variable),
# Place numbers after keywords. Names/identifiers may begin with # numbers, and we want to parse 1X as one name token as opposed to # a number and a name.
(r'[-\+]?[0-9]+', Number.Integer),
# Misc. punctuation
(r'[-+\[\]{}()<>\.,;:=?#]+', Punctuation),
], 'comment': [
(r'[^*/]+', Comment.Multiline),
(r'/\*', Comment.Multiline, '#push'),
(r'\*/', Comment.Multiline, '#pop'),
(r'[*/]', Comment.Multiline)
], 'strings': [
(r'\\[\\\'"tn]', String.Escape),
(r'[^\\"]+', String),
], # Double-quoted string, a la C 'dqs': [
(r'"', String, '#pop'),
include('strings'),
], # NOTE: Must escape (pop Cpplexer) codeblock to avoid infinite loop. # Assume that the code inside a code block is C++. This isn't always # true in TableGen, but is the far most common scenario. 'codeblock': [
(r'\}\]', Text, '#pop'),
(r'([^}]+|\}[^]])*', using(CppLexer), "#pop"),
],
}
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-08-26)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.