private void SectionsTreeToText(LinearComposer log) { log.Append(SectionName); if (IsLeaf) { return; } log.AppendLine(" {"); log.IncreaseIndentation(); var flag = true; foreach (var lowerSection in ChildSections) { if (flag) { flag = false; } else { log.AppendLine(","); } lowerSection.SectionsTreeToText(log); } log.DecreaseIndentation(); log.AppendLine("}"); }
public override void ToString(LinearComposer textBuilder) { textBuilder.AppendLine("{"); textBuilder.IncreaseIndentation(); var flag = false; foreach (var pair in _nodes) { if (flag) { textBuilder.AppendLine(","); } else { flag = true; } textBuilder.Append(pair.Key.ToString()); pair.Value.ToString(textBuilder); } textBuilder.DecreaseIndentation(); textBuilder.AppendAtNewLine("}"); }
public static string InitializeGMac() { var log = new LinearComposer(); try { log.Append("Initializing GA Data..."); GMacLookupTables.Choose(1, 1); log.AppendLine("Done").AppendLine(); log.Append("Initializing GMac Resources..."); if (Directory.Exists(IconsPath) == false) { Directory.CreateDirectory(IconsPath); } SaveIcon(Resources.BasisVector64, "BasisVector64"); SaveIcon(Resources.Compile64, "Compile64"); SaveIcon(Resources.Constant64, "Constant64"); SaveIcon(Resources.Filter64, "Filter64"); SaveIcon(Resources.Frame64, "Frame64"); SaveIcon(Resources.GMacAST64, "GMacAST64"); SaveIcon(Resources.GMac_Icon64, "GMac_Icon64"); SaveIcon(Resources.Idea64, "Idea64"); SaveIcon(Resources.Input64, "Input64"); SaveIcon(Resources.Macro64, "Macro64"); SaveIcon(Resources.Namespace64, "Namespace64"); SaveIcon(Resources.Output64, "Output64"); SaveIcon(Resources.Scalar64, "Scalar64"); SaveIcon(Resources.Structure64, "Structure64"); SaveIcon(Resources.Subspace64, "Subspace64"); SaveIcon(Resources.Transform64, "Transform64"); log.AppendLine("Done").AppendLine(); log.Append("Initializing Symbolic Engine..."); MathematicaScalar.Create(SymbolicUtils.Cas, "0"); log.AppendLine("Done").AppendLine(); } catch (Exception e) { log.AppendLine("Failed").AppendLine(e.Message).AppendLine(); } return(log.ToString()); }
public override void ToTextTree(LinearComposer log) { log.AppendLine("{"); log.IncreaseIndentation(); var flag = false; foreach (var pair in _chidNodesDictionary) { if (flag) { log.Append(", "); } else { flag = true; } log.Append(Key + " : "); pair.Value.ToTextTree(log); } log.DecreaseIndentation(); log.AppendAtNewLine("}"); }
/// <summary> /// Generate a string containing some statistics about the final text inside /// the files of this composer /// </summary> /// <returns></returns> public string GenerateStatistics() { var composer = new LinearComposer(); composer .AppendLineAtNewLine("Composer Log:") .AppendLineAtNewLine(_log.ToString()) .AppendLine(); var totalLines = 0; var totalCharacters = 0; foreach (var pair in _fileComposersDictionary) { int linesCount, charsCount; composer.AppendAtNewLine( pair.Value.GenerateStatistics(RootFolder, FilesEncoding, out linesCount, out charsCount) ); totalLines += linesCount; totalCharacters += charsCount; } composer .AppendLine() .AppendAtNewLine("Total Files: ") .AppendLine(_fileComposersDictionary.Count.ToString("###,###,###,###")) .AppendAtNewLine("Total Lines: ") .AppendLine(totalLines.ToString("###,###,###,###")) .AppendAtNewLine("Total Characters: ") .AppendLine(totalCharacters.ToString("###,###,###,###")); return(composer.ToString()); }
//private void ComputeTableSize() //{ //} public override string ToString() { var rowHeadersWidth = RowsInfo.Max(r => r.Header.Length); var colHeadersWidth = ColumnsInfo.Max(c => c.Header.Length); var maxItemWidth = Math.Max(rowHeadersWidth, colHeadersWidth); for (var c = 0; c < Columns; c++) { for (var r = 0; r < Rows; r++) { if (maxItemWidth < Items[r, c].Length) { maxItemWidth = Items[r, c].Length; } } } var composer = new LinearComposer(); //Add column headers composer.Append(FormatItem("", maxItemWidth)); for (var c = 0; c < Columns; c++) { composer.Append(FormatItem(ColumnsInfo[c].Header, maxItemWidth)); } composer.AppendLine(); //Add rows for (var r = 0; r < Rows; r++) { composer.Append(FormatItem(RowsInfo[r].Header, maxItemWidth)); for (var c = 0; c < Columns; c++) { composer.Append(FormatItem(Items[r, c], maxItemWidth)); } composer.AppendLine(); } return(composer.ToString()); }
private bool InitGaTables() { _log.Append("Initializing GA Data..."); labelStatus.Text = _log.ToString(); Application.DoEvents(); try { GMacLookupTables.Choose(1, 1); _log.AppendLine("Done").AppendLine(); labelStatus.Text = _log.ToString(); Application.DoEvents(); return(true); } catch (Exception e) { _log.AppendLine("Failed").AppendLine(e.Message).AppendLine(); labelStatus.Text = _log.ToString(); Application.DoEvents(); return(false); } }
public void SaveScript(string filePath) { var composer = new LinearComposer(); composer .AppendLine("[shortcuts]") .AppendLine(Ipr.Shortcuts) .AppendLine("[namespaces]") .AppendLine(OpenedNamespaces.Concatenate(Environment.NewLine)) .AppendLine() .AppendLine("[members]") .AppendLine(ScriptClassMembersText) .AppendLine("[script]") .AppendLine(ScriptText); File.WriteAllText(filePath, composer.ToString()); }
private static string PatternsRangeSample() { Composer.Clear(); Composer.AppendLine("PatternsBetween(3, 12):"); AddPatternsListToComposer(BitUtils.PatternsBetween(3, 12)); Composer.AppendLineAtNewLine(PageSeparator).AppendLine(); Composer.AppendLine("PatternsBetween(12, 3):"); AddPatternsListToComposer(BitUtils.PatternsBetween(12, 3)); Composer.AppendLineAtNewLine(PageSeparator).AppendLine(); Composer.AppendLine("OnesPermutations(5, 2):"); AddPatternsListToComposer(BitUtils.OnesPermutations(5, 2)); Composer.AppendLineAtNewLine(PageSeparator).AppendLine(); Composer.AppendLine("OnesPermutations(5, 3):"); AddPatternsListToComposer(BitUtils.OnesPermutations(5, 3)); Composer.AppendLineAtNewLine(PageSeparator).AppendLine(); Composer.AppendLine("ZerosPermutations(5, 2):"); AddPatternsListToComposer(BitUtils.ZerosPermutations(5, 2)); Composer.AppendLineAtNewLine(PageSeparator).AppendLine(); Composer.AppendLine("ZerosPermutations(5, 3):"); AddPatternsListToComposer(BitUtils.ZerosPermutations(5, 3)); Composer.AppendLineAtNewLine(PageSeparator).AppendLine(); return(Composer.ToString()); }
public static void AddTestStartingMessage(string text) { Log.AppendLineAtNewLine("".PadLeft(80, '=')); Log.AppendLine(text); Log.AppendLine(); }