package jetbrains.mps.vcs.core.mergedriver;

/*Generated by MPS */

import jetbrains.mps.annotations.GeneratedClass;
import org.jetbrains.annotations.Nullable;
import jetbrains.mps.baseLanguage.tuples.runtime.Tuples;

@GeneratedClass(node = "r:a178d3c3-970e-4352-b61c-4e55abc3bc24(jetbrains.mps.vcs.core.mergedriver)/3342666646761697466", model = "r:a178d3c3-970e-4352-b61c-4e55abc3bc24(jetbrains.mps.vcs.core.mergedriver)")
/*package*/ abstract class AbstractContentMerger {
  public static final int MERGED = 0;
  public static final int CONFLICTS = 1;
  public static final int FATAL_ERROR = 2;
  protected byte[] myConflictStart;
  protected byte[] myConflictEnd;
  protected byte[] mySeparator;
  /*package*/ AbstractContentMerger() {
  }
  public void setConflictMarks(byte[] conflictStart, byte[] conflictEnd, byte[] separator) {
    myConflictStart = conflictStart;
    myConflictEnd = conflictEnd;
    mySeparator = separator;
  }
  @Nullable
  public abstract Tuples._2<Integer, byte[]> mergeContents(FileContent baseContent, FileContent localContent, FileContent latestContent);
}
