package com.freetmp.mbg.merge.statement; import com.freetmp.mbg.merge.AbstractMerger; import com.github.javaparser.ast.stmt.ForStmt; /** * Created by LiuPin on 2015/5/13. */ public class ForStmtMerger extends AbstractMerger<ForStmt> { @Override public ForStmt doMerge(ForStmt first, ForStmt second) { ForStmt fs = new ForStmt(); fs.setBody(mergeSingle(first.getBody(), second.getBody())); fs.setUpdate(mergeCollectionsInOrder(first.getUpdate(), second.getUpdate())); fs.setCompare(mergeSingle(first.getCompare(), second.getCompare())); fs.setInit(mergeCollectionsInOrder(first.getInit(), second.getInit())); return fs; } @Override public boolean doIsEquals(ForStmt first, ForStmt second) { if(!isEqualsUseMerger(first.getInit(),second.getInit())) return false; if(!isEqualsUseMerger(first.getCompare(),second.getCompare())) return false; if(!isEqualsUseMerger(first.getUpdate(),second.getUpdate())) return false; if(!isEqualsUseMerger(first.getBody(),second.getBody())) return false; return true; } }