package com.freetmp.mbg.merge.expression; import com.freetmp.mbg.merge.AbstractMerger; import com.github.javaparser.ast.expr.ObjectCreationExpr; /** * Created by LiuPin on 2015/5/13. */ public class ObjectCreationExprMerger extends AbstractMerger<ObjectCreationExpr> { @Override public ObjectCreationExpr doMerge(ObjectCreationExpr first, ObjectCreationExpr second) { ObjectCreationExpr oce = new ObjectCreationExpr(); oce.setScope(mergeSingle(first.getScope(),second.getScope())); oce.setType(mergeSingle(first.getType(),second.getType())); oce.setTypeArgs(mergeCollectionsInOrder(first.getTypeArgs(),second.getTypeArgs())); oce.setArgs(mergeCollectionsInOrder(first.getArgs(),second.getArgs())); oce.setAnonymousClassBody(mergeCollections(first.getAnonymousClassBody(),second.getAnonymousClassBody())); return oce; } @Override public boolean doIsEquals(ObjectCreationExpr first, ObjectCreationExpr second) { if(!isEqualsUseMerger(first.getScope(),second.getScope())) return false; if(!isEqualsUseMerger(first.getType(),second.getType())) return false; if(!isEqualsUseMerger(first.getTypeArgs(),second.getTypeArgs())) return false; if(!isEqualsUseMerger(first.getArgs(),second.getArgs())) return false; return true; } }