Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions pyrightconfig.stricter.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
"stubs/html5lib",
"stubs/httplib2",
"stubs/Jinja2",
"stubs/jmespath",
"stubs/Markdown",
"stubs/oauthlib",
"stubs/Pillow",
Expand Down
1 change: 1 addition & 0 deletions stubs/jmespath/METADATA.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
version = "0.10"
7 changes: 7 additions & 0 deletions stubs/jmespath/jmespath/__init__.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from typing import Any

from jmespath import parser as parser
from jmespath.visitor import Options as Options

def compile(expression): ...
def search(expression, data, options: Any | None = ...): ...
22 changes: 22 additions & 0 deletions stubs/jmespath/jmespath/ast.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
def comparator(name, first, second): ...
def current_node(): ...
def expref(expression): ...
def function_expression(name, args): ...
def field(name): ...
def filter_projection(left, right, comparator): ...
def flatten(node): ...
def identity(): ...
def index(index): ...
def index_expression(children): ...
def key_val_pair(key_name, node): ...
def literal(literal_value): ...
def multi_select_dict(nodes): ...
def multi_select_list(nodes): ...
def or_expression(left, right): ...
def and_expression(left, right): ...
def not_expression(expr): ...
def pipe(left, right): ...
def projection(left, right): ...
def subexpression(children): ...
def slice(start, end, step): ...
def value_projection(left, right): ...
46 changes: 46 additions & 0 deletions stubs/jmespath/jmespath/exceptions.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
from typing import Any

class JMESPathError(ValueError): ...

class ParseError(JMESPathError):
lex_position: Any
token_value: Any
token_type: Any
msg: Any
expression: Any
def __init__(self, lex_position, token_value, token_type, msg=...) -> None: ...

class IncompleteExpressionError(ParseError):
expression: Any
lex_position: Any
token_type: Any
token_value: Any
def set_expression(self, expression) -> None: ...

class LexerError(ParseError):
lexer_position: Any
lexer_value: Any
message: Any
expression: Any
def __init__(self, lexer_position, lexer_value, message, expression: Any | None = ...) -> None: ...

class ArityError(ParseError):
expected_arity: Any
actual_arity: Any
function_name: Any
expression: Any
def __init__(self, expected, actual, name) -> None: ...

class VariadictArityError(ArityError): ...

class JMESPathTypeError(JMESPathError):
function_name: Any
current_value: Any
actual_type: Any
expected_types: Any
def __init__(self, function_name, current_value, actual_type, expected_types) -> None: ...

class EmptyExpressionError(JMESPathError):
def __init__(self) -> None: ...

class UnknownFunctionError(JMESPathError): ...
13 changes: 13 additions & 0 deletions stubs/jmespath/jmespath/functions.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
from typing import Any

TYPES_MAP: Any
REVERSE_TYPES_MAP: Any

def signature(*arguments): ...

class FunctionRegistry(type):
def __init__(cls, name, bases, attrs) -> None: ...

class Functions:
FUNCTION_TABLE: Any
def call_function(self, function_name, resolved_args): ...
11 changes: 11 additions & 0 deletions stubs/jmespath/jmespath/lexer.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
from typing import Any

from jmespath.exceptions import EmptyExpressionError as EmptyExpressionError, LexerError as LexerError

class Lexer:
START_IDENTIFIER: Any
VALID_IDENTIFIER: Any
VALID_NUMBER: Any
WHITESPACE: Any
SIMPLE_TOKENS: Any
def tokenize(self, expression) -> None: ...
15 changes: 15 additions & 0 deletions stubs/jmespath/jmespath/parser.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
from typing import Any

class Parser:
BINDING_POWER: Any
tokenizer: Any
def __init__(self, lookahead: int = ...) -> None: ...
def parse(self, expression): ...
@classmethod
def purge(cls) -> None: ...

class ParsedResult:
expression: Any
parsed: Any
def __init__(self, expression, parsed) -> None: ...
def search(self, value, options: Any | None = ...): ...
49 changes: 49 additions & 0 deletions stubs/jmespath/jmespath/visitor.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
from typing import Any

class Options:
dict_cls: Any
custom_functions: Any
def __init__(self, dict_cls: Any | None = ..., custom_functions: Any | None = ...) -> None: ...

class _Expression:
expression: Any
interpreter: Any
def __init__(self, expression, interpreter) -> None: ...
def visit(self, node, *args, **kwargs): ...

class Visitor:
def __init__(self) -> None: ...
def visit(self, node, *args, **kwargs): ...
def default_visit(self, node, *args, **kwargs) -> None: ...

class TreeInterpreter(Visitor):
COMPARATOR_FUNC: Any
MAP_TYPE: Any
def __init__(self, options: Any | None = ...) -> None: ...
def default_visit(self, node, *args, **kwargs) -> None: ...
def visit_subexpression(self, node, value): ...
def visit_field(self, node, value): ...
def visit_comparator(self, node, value): ...
def visit_current(self, node, value): ...
def visit_expref(self, node, value): ...
def visit_function_expression(self, node, value): ...
def visit_filter_projection(self, node, value): ...
def visit_flatten(self, node, value): ...
def visit_identity(self, node, value): ...
def visit_index(self, node, value): ...
def visit_index_expression(self, node, value): ...
def visit_slice(self, node, value): ...
def visit_key_val_pair(self, node, value): ...
def visit_literal(self, node, value): ...
def visit_multi_select_dict(self, node, value): ...
def visit_multi_select_list(self, node, value): ...
def visit_or_expression(self, node, value): ...
def visit_and_expression(self, node, value): ...
def visit_not_expression(self, node, value): ...
def visit_pipe(self, node, value): ...
def visit_projection(self, node, value): ...
def visit_value_projection(self, node, value): ...

class GraphvizVisitor(Visitor):
def __init__(self) -> None: ...
def visit(self, node, *args, **kwargs): ...