/** * Creates a new complete constructor {@code ASeqBindIR} 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 seq_ the {@link SExpIR} node for the {@code seq} child of this {@link ASeqBindIR} node */ public ASeqBindIR(SourceNode sourceNode_, Object tag_, List<? extends ClonableString> metaData_, SPatternIR pattern_, SExpIR seq_) { super(sourceNode_,tag_,metaData_,pattern_); this.setSeq(seq_); }
/** * Creates a new tree field only constructor {@code ASeqBindIR TAG=seq} 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 seq_ the {@link SExpIR} node for the {@code seq} child of this {@link ASeqBindIR} node */ public ASeqBindIR(SPatternIR pattern_, SExpIR seq_) { super(null,null,null,pattern_); this.setSeq(seq_); }
@Override public SBindIR caseASeqBind(ASeqBind node, IRInfo question) throws AnalysisException { PPattern pattern = node.getPattern(); SPatternIR patternCg = pattern.apply(question.getPatternVisitor(), question); PExp seq = node.getSeq(); SExpIR seqCg = seq.apply(question.getExpVisitor(), question); ASeqBindIR seqBind = new ASeqBindIR(); seqBind.setPattern(patternCg); seqBind.setSeq(seqCg); return seqBind; } }