private void MakeDebugBidifiles(StringWriter stringWriter, IEnumerable<IUcdCharacter> addToBidi, IEnumerable<IUcdCharacter> removeFromBidi)
{
// TODO: Do we need to keep this debug test code?
// This region makes some debug files
// A: Saves the "in-between" state (after deleting, before adding)
var unidataDir = Path.Combine(Path.Combine(IcuDir, "data"), "unidata");
using (var middle = new StreamWriter(Path.Combine(unidataDir, "DerivedBidiClassMID.txt"),
false, Encoding.ASCII))
{
middle.WriteLine(stringWriter.ToString());
middle.Close();
}
// B: Saves a list of what we are adding and deleting.
using (var lists = new StreamWriter(Path.Combine(unidataDir, "LISTS.txt"),
false, Encoding.ASCII))
{
lists.WriteLine("Add:");
foreach (var ch in addToBidi)
{
lists.WriteLine(ch.ToBidiString());
}
lists.WriteLine("Remove:");
foreach (var ch in removeFromBidi)
{
lists.WriteLine(ch.ToBidiString());
}
lists.Close();
}
// C: Saves an actual file that doesn't add or delete anything.
//This will update the numbers, but won't do anything else
LogFile.AddVerboseLine("StreamReader on <" + "DerivedBidiClass.txt" + ">");
using (var countReader = new StreamReader(Path.Combine(unidataDir, "DerivedBidiClass.txt"), true))
{
using (var countWriter = new StreamWriter(Path.Combine(unidataDir, "DerivedBidiClassCOUNT.txt"),
false, Encoding.ASCII))
{
ModifyUCDFile(countReader, countWriter, new List<IUcdCharacter>(), true);
}
}
// End of making debug files
}