public void SourceFileIDTest() { System.GC.Collect(); System.GC.WaitForPendingFinalizers(); CSourceFileID first = new CSourceFileID(); long FileIDLowBound = first.SourceFileID; Assert.AreEqual(FileIDLowBound, first.SourceFileID); CSourceFileID second = new CSourceFileID(); Assert.AreEqual(FileIDLowBound + 1, second.SourceFileID); CSourceFileID third = new CSourceFileID(); Assert.AreEqual(FileIDLowBound + 2, third.SourceFileID); second = null; System.GC.Collect(); System.GC.WaitForPendingFinalizers(); CSourceFileID fourth = new CSourceFileID(); Assert.AreEqual(FileIDLowBound + 1, fourth.SourceFileID); }
public void CSourceFileConstructorTest1() { CSourceFileID _FileID = new CSourceFileID(); string FullPathAndFileName = "somefile.ext"; Encoding file_encoding = Encoding.GetEncoding(866); CCodeFragment _Content = new CCodeFragment(); CSourceFile target = new CSourceFile(_FileID, FullPathAndFileName, file_encoding, _Content); Assert.IsNotNull(target); }
public void SourceFileIDTest() { CSourceFileID _FileID = new CSourceFileID(); string FullPathAndFileName = "somefile.ext"; Encoding file_encoding = Encoding.GetEncoding(866); CCodeFragment _Content = new CCodeFragment(); CSourceFile target = new CSourceFile(_FileID, FullPathAndFileName, file_encoding, _Content); Assert.AreEqual(_FileID.SourceFileID, target.SourceFileID); }
private void IncreaseCountOfLines(string filename) { // Нам нужно реальное количество строк в файле! CSourceFileID FileID = new CSourceFileID(); CTokenizerParms args = new CTokenizerParms(filename, FileID); ISourceFileContentLoader loader = new CEntireRowSourceFileContentLoader(args); CCodeUnitsCollection collection = loader.Load(); Interlocked.Add(ref m_CountOfLines, collection.Size()); }
public CTokenizerParms(string _Path, Encoding _Encoding, CSourceFileID FileID) { if (!string.IsNullOrEmpty(_Path)) { m_Path = _Path; } else { throw new ArgumentNullException("_Path"); } m_Encoding = _Encoding; m_FileID = FileID; }
/// <summary> /// Загрузить один файл /// </summary> /// <param name="filename"></param> protected override void LoadOneFile(string filename) { CSourceFileID FileID = new CSourceFileID(); CTokenizerParms parms = new CTokenizerParms(filename, LoadFilesOptions.FileEncoding, FileID); ISourceFileContentLoader loader = CSourceFileContentLoaderFactory.Create(parms, m_ext); CSourceFile source_file = new CSourceFile(FileID, filename, LoadFilesOptions.FileEncoding, new CCodeFragment(loader.Load())); m_FilesCollection.IncreaseCountOfLinesInOriginFiles(source_file.Size()); if (LoadFilesOptions.IsPreProcessingFile) { source_file.Content.Content = new CSimpleCodePreProcessingAlgorithm().PreProcessing(LoadFilesOptions.PreProcessingOptions, source_file.Content.Content); } m_FilesCollection.Add(source_file.SourceFileID, source_file); IncreaseCountOfLinesInModifiedFiles(source_file.Size()); }
private void IncreaseCountOfTokens(string filename) { try { CSourceFileID FileID = new CSourceFileID(); CTokenizerParms args = new CTokenizerParms(filename, FileID); ISourceFileContentLoader loader = new CTokenSourceFileContentLoader(args, m_Extension); CCodeUnitsCollection collection = loader.Load(); Interlocked.Add(ref m_CountOfTokens, collection.Size()); } catch { // Если поддержка токенизации отсутствует, то ничего не делаем } }
public CTokenizerParms(string _Path, CSourceFileID FileID) : this(_Path, Encoding.GetEncoding(1251), FileID) { }