using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace AIProofread.core { public abstract class CorrectionFragmentAbstract { private List characters = new List(); public List Characters { get { return characters; } set { characters = value; } } public abstract CorrectionRangeAbstract UploadRange { get; set; } public abstract CorrectionRangeAbstract ArticleRange { get; set; } public abstract CorrectionRangeAbstract FormatRange { get; set; } public abstract void AddCorrectionRange(CorrectionRangeAbstract article, CorrectionRangeAbstract upload, CorrectionRangeAbstract format = null); public abstract void RemoveCorrectionRange(); public abstract int[] SetCorrectionRange(int[] article, int[] upload); public abstract int[] Relocate(string upload, int offset); public abstract void ClearAll(); public abstract int GetFirstStartPosition(bool containUnvisibleCharacter); public abstract int GetLastEndPosition(bool containUnvisibleCharacter); } }