'Rewrite with cython.parallel.parallel() blocks'

def visit_WithStatNode(self, node):

    newnode = self.visit(node.manager)
    if isinstance(newnode, Nodes.ParallelWithBlockNode):
        if (self.state == 'parallel    with'):
            error(node.manager.pos, 'Nested    parallel    with    blocks    are    disallowed')
        self.state = 'parallel    with'
        body = self.visit(node.body)
        self.state = None
        newnode.body = body
        return newnode
    elif self.parallel_directive:
        parallel_directive_class = self.get_directive_class_node(node)
        if (not parallel_directive_class):
            return None
        if (parallel_directive_class is Nodes.ParallelWithBlockNode):
            error(node.pos, 'The    parallel    directive    must    be    called')
            return None
    node.body = self.visit(node.body)
    return node
