""" pygments.lexers.tlb ~~~~~~~~~~~~~~~~~~~ Lexers for TL-b. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. """ from pygments.lexer import RegexLexer, include, words from pygments.token import Operator, Name, \ Number, Whitespace, Punctuation, Comment __all__ = ['TlbLexer'] class TlbLexer(RegexLexer): """ For TL-b source code. """ name = 'Tl-b' aliases = ['tlb'] filenames = ['*.tlb'] tokens = { 'root': [ (r'\s+', Whitespace), include('comments'), (r'[0-9]+', Number), (words(( '+', '-', '*', '=', '?', '~', '.', '^', '==', '<', '>', '<=', '>=', '!=' )), Operator), (words(('##', '#<', '#<=')), Name.Tag), (r'#[0-9a-f]*_?', Name.Tag), (r'\$[01]*_?', Name.Tag), (r'[a-zA-Z_][0-9a-zA-Z_]*', Name), (r'[;():\[\]{}]', Punctuation) ], 'comments': [ (r'//.*', Comment.Singleline), (r'/\*', Comment.Multiline, 'comment'), ], 'comment': [ (r'[^/*]+', Comment.Multiline), (r'/\*', Comment.Multiline, '#push'), (r'\*/', Comment.Multiline, '#pop'), (r'[*/]', Comment.Multiline), ], }