class MonteLexer(RegexLexer): """
Lexer for the Monte programming language. """
name = 'Monte'
url = 'https://monte.readthedocs.io/'
aliases = ['monte']
filenames = ['*.mt']
version_added = '2.2'
# Definite lexer errors
('=', Error),
], 'char': [ # It is definitely an error to have a char of width == 0.
("'", Error, 'root'),
(_escape_pattern, String.Escape, 'charEnd'),
('.', String.Char, 'charEnd'),
], 'charEnd': [
("'", String.Char, '#pop:2'), # It is definitely an error to have a char of width > 1.
('.', Error),
], # The state of things coming into an interface. 'interface': [
(' +', Whitespace),
(_identifier, Name.Class, '#pop'),
include('root'),
], # The state of things coming into a method. 'method': [
(' +', Whitespace),
(_identifier, Name.Function, '#pop'),
include('root'),
], 'string': [
('"', String.Double, 'root'),
(_escape_pattern, String.Escape),
(r'\n', String.Double),
('.', String.Double),
], 'ql': [
('`', String.Backtick, 'root'),
(r'\$' + _escape_pattern, String.Escape),
(r'\$\$', String.Escape),
(r'@@', String.Escape),
(r'\$\{', String.Interpol, 'qlNest'),
(r'@\{', String.Interpol, 'qlNest'),
(r'\$' + _identifier, Name),
('@' + _identifier, Name),
('.', String.Backtick),
], 'qlNest': [
(r'\}', String.Interpol, '#pop'),
include('root'),
], # The state of things immediately following `var`. 'var': [
(' +', Whitespace),
(_identifier, Name.Variable, '#pop'),
include('root'),
],
}
Messung V0.5
¤ 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.0.10Bemerkung:
(vorverarbeitet)
¤
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.