public static string ToString(LuaTable table, LuaComment headComment = null) { using (var stringWriter = new StringWriter()) { Write(table, stringWriter, headComment); return stringWriter.ToString(); } }
public void Export(IEnumerable<MoaiType> types, DirectoryInfo outputDirectory) { LuaTable typeListTable = CreateTypeListTable(types); var targetFileInfo = outputDirectory.GetFileInfo("moai.lua"); var commentLines = new[] { "Documentation of the Moai SDK (http://getmoai.com/)", string.Format(CultureInfo.InvariantCulture, "Generated on {0:d} by {1}", DateTime.Now, CurrentUtility.Signature), CurrentUtility.MoaiUtilsHint }; var headComment = new LuaComment(commentLines, blankLineAfter: true); LuaTableWriter.Write(typeListTable, targetFileInfo, headComment); }
public static void Write(LuaTable table, TextWriter textWriter, LuaComment headComment = null) { if (table == null) throw new ArgumentNullException("table"); if (textWriter == null) throw new ArgumentNullException("textWriter"); using (var indentedTextWriter = new IndentedTextWriter(textWriter, " ")) { if (headComment != null) { Write(headComment, indentedTextWriter); } indentedTextWriter.Write("return "); Write(table, indentedTextWriter); } }
public static void Write(LuaTable table, FileInfo fileInfo, LuaComment headComment = null) { using (var file = fileInfo.CreateText()) { Write(table, file, headComment); } }
private static void Write(LuaComment comment, IndentedTextWriter indentedTextWriter) { if (comment.BlankLineBefore) { indentedTextWriter.WriteLine(); } foreach (var line in comment.Text.SplitIntoLines()) { indentedTextWriter.WriteLine("-- {0}", line); } if (comment.BlankLineAfter) { indentedTextWriter.WriteLine(); } }