/// <summary> /// /// </summary> /// <param name="reader"></param> /// <param name="writer"></param> /// <param name="language"></param> public void Do(System.IO.TextReader reader, System.IO.TextWriter writer, LanguageOption language, bool hasNamespace) { Language = language; // set up the fix ups for each class. foreach (FixUp fixUp in this) { List <FixUp> fixUps = null; if (ClassFixUps.ContainsKey(fixUp.Class)) { fixUps = ClassFixUps[fixUp.Class]; } else { fixUps = new List <FixUp>(); ClassFixUps.Add(fixUp.Class, fixUps); } fixUps.Add(fixUp); } switch (Language) { case LanguageOption.GenerateVBCode: DoFixUpsForVB(reader, writer); break; case LanguageOption.GenerateCSharpCode: DoFixUpsForCS(reader, writer, hasNamespace); break; default: Debug.Assert(false, "Unexpected language value: " + Language.ToString()); CopyFile(reader, writer); break; } }
/// <summary> /// /// </summary> /// <param name="className"></param> /// <returns></returns> private bool IsClassWanted(string className) { return(ClassFixUps.ContainsKey(className)); }