def validate_query(validator: QueryValidator, *pre_transforms: Callable[[MutableMapping], None]) -> Callable[[Callable[[Any, MutableMapping[str, Any], PipelineContext], Union[Any, Iterable[Any]]]], Callable[[Any, MutableMapping[str, Any], PipelineContext], Union[Any, Iterable[Any]]]]:
def wrapper(method: Callable[[Any, MutableMapping[str, Any], PipelineContext], Union[Any, Iterable[Any]]]) -> Callable[[Any, MutableMapping[str, Any], PipelineContext], Union[Any, Iterable[Any]]]:
@wraps(method)
def wrapped(self: Any, query: MutableMapping[str, Any], context: PipelineContext = None):
for transform in pre_transforms:
transform(query)
validator(query)
return method(self, query, context)
return wrapped
return wrapper
评论列表
文章目录