diff options
Diffstat (limited to 'venv/lib/python3.11/site-packages/pygments/lexers/graphql.py')
-rw-r--r-- | venv/lib/python3.11/site-packages/pygments/lexers/graphql.py | 177 |
1 files changed, 0 insertions, 177 deletions
diff --git a/venv/lib/python3.11/site-packages/pygments/lexers/graphql.py b/venv/lib/python3.11/site-packages/pygments/lexers/graphql.py deleted file mode 100644 index b17e4a6..0000000 --- a/venv/lib/python3.11/site-packages/pygments/lexers/graphql.py +++ /dev/null @@ -1,177 +0,0 @@ -""" - pygments.lexers.graphql - ~~~~~~~~~~~~~~~~~~~~~~~ - - Lexer for GraphQL, an open-source data query and manipulation - language for APIs. - - More information: - https://graphql.org/ - - :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. - :license: BSD, see LICENSE for details. -""" - -from pygments.lexer import RegexLexer, words, include, bygroups, default -from pygments.token import (Comment, Keyword, Name, Number, Punctuation, String, - Whitespace) - - -__all__ = ["GraphQLLexer"] - -OPERATION_TYPES = ("query", "mutation", "subscription") -BUILTIN_TYPES = ("Int", "Float", "String", "Boolean", "ID") -BOOLEAN_VALUES = ("true", "false", "null") -KEYWORDS = ( - "type", - "schema", - "extend", - "enum", - "scalar", - "implements", - "interface", - "union", - "input", - "directive", - "QUERY", - "MUTATION", - "SUBSCRIPTION", - "FIELD", - "FRAGMENT_DEFINITION", - "FRAGMENT_SPREAD", - "INLINE_FRAGMENT", - "SCHEMA", - "SCALAR", - "OBJECT", - "FIELD_DEFINITION", - "ARGUMENT_DEFINITION", - "INTERFACE", - "UNION", - "ENUM", - "ENUM_VALUE", - "INPUT_OBJECT", - "INPUT_FIELD_DEFINITION", -) - - -class GraphQLLexer(RegexLexer): - """ - Lexer for GraphQL syntax - - .. versionadded:: 2.16 - """ - name = "GraphQL" - aliases = ["graphql"] - filenames = ["*.graphql"] - url = "https://graphql.org" - - tokens = { - "ignored_tokens": [ - (r"\s+", Whitespace), # Whitespaces - (r"#.*$", Comment), - (",", Punctuation), # Insignificant commas - ], - "value": [ - include("ignored_tokens"), - (r"-?\d+(?![.eE])", Number.Integer, "#pop"), - ( - r"-?\d+(\.\d+)?([eE][+-]?\d+)?", - Number.Float, - "#pop", - ), - (r'"', String, ("#pop", "string")), - (words(BOOLEAN_VALUES, suffix=r"\b"), Name.Builtin, "#pop"), - (r"\$[a-zA-Z_]\w*", Name.Variable, "#pop"), - (r"[a-zA-Z_]\w*", Name.Constant, "#pop"), - (r"\[", Punctuation, ("#pop", "list_value")), - (r"\{", Punctuation, ("#pop", "object_value")), - ], - "list_value": [ - include("ignored_tokens"), - ("]", Punctuation, "#pop"), - default("value"), - ], - "object_value": [ - include("ignored_tokens"), - (r"[a-zA-Z_]\w*", Name), - (r":", Punctuation, "value"), - (r"\}", Punctuation, "#pop"), - ], - "string": [ - (r'\\(["\\/bfnrt]|u[a-fA-F0-9]{4})', String.Escape), - (r'[^\\"\n]+', String), # all other characters - (r'"', String, "#pop"), - ], - "root": [ - include("ignored_tokens"), - (words(OPERATION_TYPES, suffix=r"\b"), Keyword, "operation"), - (words(KEYWORDS, suffix=r"\b"), Keyword), - (r"\{", Punctuation, "selection_set"), - (r"fragment\b", Keyword, "fragment_definition"), - ], - "operation": [ - include("ignored_tokens"), - (r"[a-zA-Z_]\w*", Name.Function), - (r"\(", Punctuation, "variable_definition"), - (r"\{", Punctuation, ("#pop", "selection_set")), - ], - "variable_definition": [ - include("ignored_tokens"), - (r"\$[a-zA-Z_]\w*", Name.Variable), - (r"[\]!]", Punctuation), - (r":", Punctuation, "type"), - (r"=", Punctuation, "value"), - (r"\)", Punctuation, "#pop"), - ], - "type": [ - include("ignored_tokens"), - (r"\[", Punctuation), - (words(BUILTIN_TYPES, suffix=r"\b"), Name.Builtin, "#pop"), - (r"[a-zA-Z_]\w*", Name.Class, "#pop"), - ], - "selection_set": [ - include("ignored_tokens"), - (r"([a-zA-Z_]\w*)(\s*)(:)", bygroups(Name.Label, Whitespace, Punctuation)), - (r"[a-zA-Z_]\w*", Name), # Field - ( - r"(\.\.\.)(\s+)(on)\b", - bygroups(Punctuation, Whitespace, Keyword), - "inline_fragment", - ), - (r"\.\.\.", Punctuation, "fragment_spread"), - (r"\(", Punctuation, "arguments"), - (r"@[a-zA-Z_]\w*", Name.Decorator, "directive"), - (r"\{", Punctuation, "selection_set"), - (r"\}", Punctuation, "#pop"), - ], - "directive": [ - include("ignored_tokens"), - (r"\(", Punctuation, ("#pop", "arguments")), - ], - "arguments": [ - include("ignored_tokens"), - (r"[a-zA-Z_]\w*", Name), - (r":", Punctuation, "value"), - (r"\)", Punctuation, "#pop"), - ], - # Fragments - "fragment_definition": [ - include("ignored_tokens"), - (r"[\]!]", Punctuation), # For NamedType - (r"on\b", Keyword, "type"), - (r"[a-zA-Z_]\w*", Name.Function), - (r"@[a-zA-Z_]\w*", Name.Decorator, "directive"), - (r"\{", Punctuation, ("#pop", "selection_set")), - ], - "fragment_spread": [ - include("ignored_tokens"), - (r"@[a-zA-Z_]\w*", Name.Decorator, "directive"), - (r"[a-zA-Z_]\w*", Name, "#pop"), # Fragment name - ], - "inline_fragment": [ - include("ignored_tokens"), - (r"[a-zA-Z_]\w*", Name.Class), # Type condition - (r"@[a-zA-Z_]\w*", Name.Decorator, "directive"), - (r"\{", Punctuation, ("#pop", "selection_set")), - ], - } |