public virtual TextWriter GetOutputFileWriter(Grammar g, string fileName)
{
if (outputDirectory == null)
{
return new StringWriter();
}
// output directory is a function of where the grammar file lives
// for subdir/T.g4, you get subdir here. Well, depends on -o etc...
string outputDir = GetOutputDirectory(g.fileName);
string outputFile = Path.Combine(outputDir, fileName);
Directory.CreateDirectory(outputDir);
return new StreamWriter(File.OpenWrite(outputFile), Encoding.GetEncoding(grammarEncoding));
}