提交 15c55a3d authored 作者: Brandon T. Willard's avatar Brandon T. Willard 提交者: Brandon T. Willard

Fix typing issues in aesara.graph.kanren

上级 88c02baa
from typing import Callable, Iterator, List, Union
from typing import Callable, Iterator, List, Optional, Union
from etuples.core import ExpressionTuple
from kanren import run
......@@ -43,9 +43,9 @@ class KanrenRelationSub(LocalOptimizer):
def __init__(
self,
kanren_relation: Callable[[Variable, Var], Callable],
results_filter: Callable[
[Iterator], List[Union[ExpressionTuple, Variable]]
] = lambda x: next(x, None),
results_filter: Optional[
Callable[[Iterator], Optional[List[Union[ExpressionTuple, Variable]]]]
] = None,
node_filter: Callable[[Apply], bool] = lambda x: True,
):
r"""Create a `KanrenRelationSub`.
......@@ -63,6 +63,13 @@ class KanrenRelationSub(LocalOptimizer):
A function taking a single node and returns ``True`` when the node
should be processed.
"""
if results_filter is None:
def results_filter(
x: Iterator,
) -> Optional[List[Union[ExpressionTuple, Variable]]]:
return next(x, None)
self.kanren_relation = kanren_relation
self.results_filter = results_filter
self.node_filter = node_filter
......
......@@ -115,10 +115,6 @@ check_untyped_defs = False
ignore_errors = True
check_untyped_defs = False
[mypy-aesara.graph.kanren]
ignore_errors = True
check_untyped_defs = False
[mypy-aesara.link.basic]
ignore_errors = True
check_untyped_defs = False
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论