self.getLoop().accept(this);
np = (NamePair)self.getLoop().accept(this);
    public Object visitFeedbackLoop(SIRFeedbackLoop self,                                    SIRStream parent,                                    JFieldDeclaration[] fields,                                    JMethodDeclaration[] methods,                                    JMethodDeclaration init,                                    int delay,                                    JMethodDeclaration initPath)    {        NamePair np;                // Create a subgraph again...        print("subgraph cluster_" + getName() + " {\n");        // Visit the splitter and joiner.        np = (NamePair)self.getJoiner().accept(this);        String joinName = np.first;        np = (NamePair)self.getSplitter().accept(this);        String splitName = np.first;        // Visit the body and the loop part.        np = (NamePair)self.getBody().accept(this);        printEdge(joinName, np.first);        printEdge(np.last, splitName);        self.getLoop().accept(this);        printEdge(splitName, np.first);        printEdge(np.last, joinName);        print("}\n");        return new NamePair(joinName, splitName);    }