summaryrefslogtreecommitdiff
path: root/venv/lib/python3.11/site-packages/pygments/lexers/sophia.py
diff options
context:
space:
mode:
Diffstat (limited to 'venv/lib/python3.11/site-packages/pygments/lexers/sophia.py')
-rw-r--r--venv/lib/python3.11/site-packages/pygments/lexers/sophia.py103
1 files changed, 0 insertions, 103 deletions
diff --git a/venv/lib/python3.11/site-packages/pygments/lexers/sophia.py b/venv/lib/python3.11/site-packages/pygments/lexers/sophia.py
deleted file mode 100644
index fc4928c..0000000
--- a/venv/lib/python3.11/site-packages/pygments/lexers/sophia.py
+++ /dev/null
@@ -1,103 +0,0 @@
-"""
- pygments.lexers.sophia
- ~~~~~~~~~~~~~~~~~~~~~~
-
- Lexer for Sophia.
-
- Derived from pygments/lexers/reason.py.
-
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
- :license: BSD, see LICENSE for details.
-"""
-
-from pygments.lexer import RegexLexer, include, default, words
-from pygments.token import Comment, Keyword, Name, Number, Operator, \
- Punctuation, String, Text
-
-__all__ = ['SophiaLexer']
-
-class SophiaLexer(RegexLexer):
- """
- A Sophia lexer.
-
- .. versionadded:: 2.11
- """
-
- name = 'Sophia'
- aliases = ['sophia']
- filenames = ['*.aes']
- mimetypes = []
-
- keywords = (
- 'contract', 'include', 'let', 'switch', 'type', 'record', 'datatype',
- 'if', 'elif', 'else', 'function', 'stateful', 'payable', 'public',
- 'entrypoint', 'private', 'indexed', 'namespace', 'interface', 'main',
- 'using', 'as', 'for', 'hiding',
- )
-
- builtins = ('state', 'put', 'abort', 'require')
-
- word_operators = ('mod', 'band', 'bor', 'bxor', 'bnot')
-
- primitive_types = ('int', 'address', 'bool', 'bits', 'bytes', 'string',
- 'list', 'option', 'char', 'unit', 'map', 'event',
- 'hash', 'signature', 'oracle', 'oracle_query')
-
- tokens = {
- 'escape-sequence': [
- (r'\\[\\"\'ntbr]', String.Escape),
- (r'\\[0-9]{3}', String.Escape),
- (r'\\x[0-9a-fA-F]{2}', String.Escape),
- ],
- 'root': [
- (r'\s+', Text.Whitespace),
- (r'(true|false)\b', Keyword.Constant),
- (r'\b([A-Z][\w\']*)(?=\s*\.)', Name.Class, 'dotted'),
- (r'\b([A-Z][\w\']*)', Name.Function),
- (r'//.*?\n', Comment.Single),
- (r'\/\*(?!/)', Comment.Multiline, 'comment'),
-
- (r'0[xX][\da-fA-F][\da-fA-F_]*', Number.Hex),
- (r'#[\da-fA-F][\da-fA-F_]*', Name.Label),
- (r'\d[\d_]*', Number.Integer),
-
- (words(keywords, suffix=r'\b'), Keyword),
- (words(builtins, suffix=r'\b'), Name.Builtin),
- (words(word_operators, prefix=r'\b', suffix=r'\b'), Operator.Word),
- (words(primitive_types, prefix=r'\b', suffix=r'\b'), Keyword.Type),
-
- (r'[=!<>+\\*/:&|?~@^-]', Operator.Word),
- (r'[.;:{}(),\[\]]', Punctuation),
-
- (r"(ak_|ok_|oq_|ct_)[\w']*", Name.Label),
- (r"[^\W\d][\w']*", Name),
-
- (r"'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2}))'",
- String.Char),
- (r"'.'", String.Char),
- (r"'[a-z][\w]*", Name.Variable),
-
- (r'"', String.Double, 'string')
- ],
- 'comment': [
- (r'[^/*]+', Comment.Multiline),
- (r'\/\*', Comment.Multiline, '#push'),
- (r'\*\/', Comment.Multiline, '#pop'),
- (r'\*', Comment.Multiline),
- ],
- 'string': [
- (r'[^\\"]+', String.Double),
- include('escape-sequence'),
- (r'\\\n', String.Double),
- (r'"', String.Double, '#pop'),
- ],
- 'dotted': [
- (r'\s+', Text),
- (r'\.', Punctuation),
- (r'[A-Z][\w\']*(?=\s*\.)', Name.Function),
- (r'[A-Z][\w\']*', Name.Function, '#pop'),
- (r'[a-z_][\w\']*', Name, '#pop'),
- default('#pop'),
- ],
- }
-