/** * Creates a new complete constructor {@code ACyclesStmIR} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param cycles_ the {@link SExpIR} node for the {@code cycles} child of this {@link ACyclesStmIR} node * @param stm_ the {@link SStmIR} node for the {@code stm} child of this {@link ACyclesStmIR} node */ public ACyclesStmIR(SourceNode sourceNode_, Object tag_, List<? extends ClonableString> metaData_, SExpIR cycles_, SStmIR stm_) { super(sourceNode_,tag_,metaData_); this.setCycles(cycles_); this.setStm(stm_); }
/** * Creates a new tree field only constructor {@code ACyclesStmIR TAG=cycles} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param cycles_ the {@link SExpIR} node for the {@code cycles} child of this {@link ACyclesStmIR} node * @param stm_ the {@link SStmIR} node for the {@code stm} child of this {@link ACyclesStmIR} node */ public ACyclesStmIR(SExpIR cycles_, SStmIR stm_) { super(null,null,null); this.setCycles(cycles_); this.setStm(stm_); }
@Override public SStmIR caseACyclesStm(ACyclesStm node, IRInfo question) throws AnalysisException { PExp cycles = node.getCycles(); PStm stm = node.getStatement(); SExpIR cyclesCg = cycles.apply(question.getExpVisitor(), question); SStmIR stmCg = stm.apply(question.getStmVisitor(), question); ACyclesStmIR cycStm = new ACyclesStmIR(); cycStm.setCycles(cyclesCg); cycStm.setStm(stmCg); return cycStm; }