/** * Called by the {@link AModuleExportsIR} node from {@link AModuleExportsIR#apply(IAnalysis)}. * @param node the calling {@link AModuleExportsIR} node */ public void caseAModuleExportsIR(AModuleExportsIR node, Q question) throws AnalysisException { _visitedNodes.add(node); inAModuleExportsIR(node, question); { List<List<SExportIR>> copy = new ArrayList<List<SExportIR>>(node.getExports()); for( List<SExportIR> list : copy) { for( SExportIR e : list) { if(!_visitedNodes.contains(e)) { e.apply(this, question); } } } } outAModuleExportsIR(node, question); }
/** * Called by the {@link AModuleExportsIR} node from {@link AModuleExportsIR#apply(IAnalysis)}. * @param node the calling {@link AModuleExportsIR} node */ public void caseAModuleExportsIR(AModuleExportsIR node) throws AnalysisException { _visitedNodes.add(node); inAModuleExportsIR(node); { List<List<SExportIR>> copy = new ArrayList<List<SExportIR>>(node.getExports()); for( List<SExportIR> list : copy) { for( SExportIR e : list) { if(!_visitedNodes.contains(e)) { e.apply(this); } } } } outAModuleExportsIR(node); }
/** * Called by the {@link AModuleExportsIR} node from {@link AModuleExportsIR#apply(IIsaAnalysis)}. * @param node the calling {@link AModuleExportsIR} node */ public void caseAModuleExportsIR(AModuleExportsIR node) throws AnalysisException { _visitedNodes.add(node); inAModuleExportsIR(node); { List<List<SExportIR>> copy = new ArrayList<List<SExportIR>>(node.getExports()); for( List<SExportIR> list : copy) { for( SExportIR e : list) { if(!_visitedNodes.contains(e)) { e.apply(this); } } } } outAModuleExportsIR(node); }
@Override public SExportsIR caseAModuleExports(AModuleExports node, IRInfo question) throws AnalysisException { AModuleExportsIR moduleExportsCg = new AModuleExportsIR(); for (List<PExport> export : node.getExports()) { List<SExportIR> exportCg = new LinkedList<SExportIR>(); for (PExport exportItem : export) { SExportIR exportItemCg = exportItem.apply(question.getExportVisitor(), question); if (exportItemCg != null) { exportCg.add(exportItemCg); } else { return null; } } moduleExportsCg.getExports().add(exportCg); } return moduleExportsCg; } }
/** * Called by the {@link AModuleExportsIR} node from {@link AModuleExportsIR#apply(IAnalysis)}. * @param node the calling {@link AModuleExportsIR} node */ public A caseAModuleExportsIR(AModuleExportsIR node, Q question) throws AnalysisException { _visitedNodes.add(node); A retVal = createNewReturnValue(node, question); mergeReturns(retVal,inAModuleExportsIR(node, question)); { List<List<SExportIR>> copy = new ArrayList<List<SExportIR>>(node.getExports()); for( List<SExportIR> list : copy) { for( SExportIR e : list) { if(!_visitedNodes.contains(e)) { mergeReturns(retVal,e.apply(this, question)); } } } } mergeReturns(retVal,outAModuleExportsIR(node, question)); return retVal; }
/** * Called by the {@link AModuleExportsIR} node from {@link AModuleExportsIR#apply(IAnalysis)}. * @param node the calling {@link AModuleExportsIR} node */ public A caseAModuleExportsIR(AModuleExportsIR node) throws AnalysisException { _visitedNodes.add(node); A retVal = createNewReturnValue(node); mergeReturns(retVal,inAModuleExportsIR(node)); { List<List<SExportIR>> copy = new ArrayList<List<SExportIR>>(node.getExports()); for( List<SExportIR> list : copy) { for( SExportIR e : list) { if(!_visitedNodes.contains(e)) { mergeReturns(retVal,e.apply(this)); } } } } mergeReturns(retVal,outAModuleExportsIR(node)); return retVal; }