src/basilisp/lang/compiler/parser.py
def _assert_no_recur(node: Node) -> None:
    """Assert that `recur` forms do not appear in any position of this or
    child AST nodes."""
    if node.op == NodeOp.RECUR:
        raise ParserException(
            "recur must appear in tail position", form=node.form, lisp_ast=node
        )
    elif node.op in {NodeOp.FN, NodeOp.LOOP}:
        pass
    else:
        node.visit(_assert_no_recur)
def _assert_no_recur(node: Node) -> None:
    if node.op == NodeOp.RECUR:
        raise ParserException(
            "recur must appear in tail position", form=node.form, lisp_ast=node
        )
    elif node.op in {NodeOp.FN, NodeOp.LOOP}:
        pass
    else:
        node.visit(_assert_no_recur)
def _assert_no_recur ( node : Node ) -> None : if node . op == NodeOp . RECUR : raise ParserException ( "recur must appear in tail position" , form = node . form , lisp_ast = node ) elif node . op in { NodeOp . FN , NodeOp . LOOP } : pass else : node . visit ( _assert_no_recur )
Assert that `recur` forms do not appear in any position of this or
    child AST nodes.
Assert that recur forms do not appear in any position of this or child AST nodes .