string GetExpressionString(Expression expression) { if (expression is BinaryExpression) { var binaryExpression = (BinaryExpression)expression; return(string.Format("({0} {1} {2})", GetExpressionString(binaryExpression.Term1), GetOperatorString(binaryExpression.Op), GetExpressionString(binaryExpression.Term2))); } else if (expression is UnaryExpression) { var unaryExpression = (UnaryExpression)expression; return(string.Format("({0}{1})", GetOperatorString(unaryExpression.Op), GetExpressionString(unaryExpression.Term))); } else if (expression is ConditionalTernaryExpression) { var conditionalTernaryExpression = (ConditionalTernaryExpression)expression; return(string.Format("({0} ? {1} : {2})", GetExpressionString(conditionalTernaryExpression.Cond), GetExpressionString(conditionalTernaryExpression.Term1), GetExpressionString(conditionalTernaryExpression.Term2))); } else if (expression is NumberLiteral) { var numberLiteral = (NumberLiteral)expression; return(ToStringHelper.ToStringWithCulture(numberLiteral.Value)); } else if (expression is DateLiteral) { var dateLiteral = (DateLiteral)expression; return(string.Format("::MiniPLCore::makeTmFromDate({0}, {1}, {2})", dateLiteral.Value.Year, dateLiteral.Value.Month, dateLiteral.Value.Day)); } else if (expression is StringLiteral) { var stringLiteral = (StringLiteral)expression; return("\"" + stringLiteral.Value + "\""); } else if (expression is BoolLiteral) { var boolLiteral = (BoolLiteral)expression; return(boolLiteral.Value ? "true" : "false"); } else if (expression is ColorLiteral) { var colorLiteral = (ColorLiteral)expression; return("::MiniPLCore::Color::" + colorLiteral.Value.ToString()); } else if (expression is FunctionCall) { var functionCall = (FunctionCall)expression; return(string.Format("{0}({1})", functionCall.FunctionReference.NameRef, string.Join(", ", functionCall.Arguments.Select(argument => GetArgumentString(argument))))); } else if (expression is VariableReference) { var variableReference = (VariableReference)expression; return(variableReference.Target.NameRef.Value); } else { throw new ArgumentException("Unknown expression: " + expression, "expression"); } }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { Write("\r\n<html>\r\n<body>\r\n<h1>Course</h2>\r\n<table>\r\n "); #line 11 "E:\Git\TestProject\T4Demo3\RuntimeTextTemplate.tt" foreach (string item in Items) { #line default #line hidden Write(" <tr><td>"); #line 13 "E:\Git\TestProject\T4Demo3\RuntimeTextTemplate.tt" Write(ToStringHelper.ToStringWithCulture(Content(item))); #line default #line hidden Write(" </td></tr>\r\n "); #line 14 "E:\Git\TestProject\T4Demo3\RuntimeTextTemplate.tt" } #line default #line hidden Write(" </table>\r\n </body>\r\n </html>\r\n\r\n"); return(GenerationEnvironment.ToString()); }
public override string TransformText() { this.Write("Generated by "); this.Write(ToStringHelper.ToStringWithCulture( Host.TemplateFile)); return(this.GenerationEnvironment.ToString()); }
protected override string FieldDeclaration(string name, ScopeAccess scope, bool isStatic, string fieldTypeName) { return(ToStringHelper.ToStringWithCulture(scope) + " " + (isStatic ? "static " : "") + fieldTypeName + " " + MakeFieldName(name)); }
protected override string PropertyDeclaration(string name, ScopeAccess scope, bool isStatic, string propertyTypeName) { return(ToStringHelper.ToStringWithCulture(scope) + " " + (isStatic ? "static " : "") + propertyTypeName + " " + MakePublicName(name)); }
string GetExpressionString(Expression expression) { if (expression is BinaryExpression) { var binaryExpression = (BinaryExpression)expression; return(string.Format("({0} {1} {2})", GetExpressionString(binaryExpression.Term1), GetOperatorString(binaryExpression.Op), GetExpressionString(binaryExpression.Term2))); } else if (expression is UnaryExpression) { var unaryExpression = (UnaryExpression)expression; return(string.Format("({0}{1})", GetOperatorString(unaryExpression.Op), GetExpressionString(unaryExpression.Term))); } else if (expression is ConditionalTernaryExpression) { var conditionalTernaryExpression = (ConditionalTernaryExpression)expression; return(string.Format("({0} ? {1} : {2})", GetExpressionString(conditionalTernaryExpression.Cond), GetExpressionString(conditionalTernaryExpression.Term1), GetExpressionString(conditionalTernaryExpression.Term2))); } else if (expression is NumberLiteral) { var numberLiteral = (NumberLiteral)expression; return(ToStringHelper.ToStringWithCulture(numberLiteral.Value)); } else if (expression is DateLiteral) { var dateLiteral = (DateLiteral)expression; return(string.Format("System.DateTime.ParseExact(\"{0}\", \"{1}\", System.Globalization.CultureInfo.InvariantCulture)", dateLiteral.Value.ToString(DateLiteral.Format, System.Globalization.CultureInfo.InvariantCulture), DateLiteral.Format)); } else if (expression is StringLiteral) { var stringLiteral = (StringLiteral)expression; return("\"" + stringLiteral.Value + "\""); } else if (expression is BoolLiteral) { var boolLiteral = (BoolLiteral)expression; return(boolLiteral.Value ? "true" : "false"); } else if (expression is ColorLiteral) { var colorLiteral = (ColorLiteral)expression; return("global::MiniPLCore.Color." + colorLiteral.Value.ToString()); } else if (expression is FunctionCall) { var functionCall = (FunctionCall)expression; return(string.Format("{0}({1})", functionCall.FunctionReference.NameRef, string.Join(", ", functionCall.Arguments.Select(argument => GetArgumentString(argument))))); } else if (expression is VariableReference) { var variableReference = (VariableReference)expression; return(variableReference.Target.NameRef.Value); } else { throw new ArgumentException("Unknown expression: " + expression, "expression"); } }
protected override string MethodDeclaration(string name, ScopeAccess scope, bool isStatic, string returnTypeName, IEnumerable <IHasParameterInfo> parameters) { var indent = this.CurrentIndent + new string(' ', MethodContinueIndent); return(ToStringHelper.ToStringWithCulture(scope) + " " + (isStatic ? "static " : "") + returnTypeName + " " + name + "(" + ParameterDeclarations(parameters) + ")"); }
public virtual string TransformText() { Write($"// generate at {DateTimeOffset.UtcNow}"); Write("\r\npublic interface IApi{\r\n"); foreach (var elangFunc in elangFuncs) { Write(ToStringHelper.ToStringWithCulture(GetFuncSummary(elangFunc))); Write(ToStringHelper.ToStringWithCulture(GetFuncDescription(elangFunc))); Write(ToStringHelper.ToStringWithCulture(elangFunc.ReturnType)); Write(" "); Write(ToStringHelper.ToStringWithCulture(elangFunc.Name)); Write(ToStringHelper.ToStringWithCulture( GetParametersWithType(elangFunc.ELangParameters))); Write(";\r\n"); } Write("}\r\npublic class ApiImpl:IApi{\r\n\r\n "); foreach (var elangFunc in elangFuncs) { Write("\t\t"); Write(ToStringHelper.ToStringWithCulture(GetFuncSummary(elangFunc))); Write("\r\n\r\n "); Write(ToStringHelper.ToStringWithCulture(elangFunc.ReturnType)); Write(" IApi."); Write(ToStringHelper.ToStringWithCulture(elangFunc.Name)); Write(ToStringHelper.ToStringWithCulture( GetParametersWithType(elangFunc.ELangParameters))); Write("\r\n\t\t =>NativeMethods."); Write(ToStringHelper.ToStringWithCulture(elangFunc.Name)); Write(ToStringHelper.ToStringWithCulture( GetParameters(elangFunc.ELangParameters))); Write(";\r\n\t\t "); } Write("private static class NativeMethods\r\n {\r\n "); foreach (var elangFunc in elangFuncs) { Write("\t\t\t"); Write(ToStringHelper.ToStringWithCulture(GetFuncSummary(elangFunc))); Write("\r\n\t\t [DllImport(\""); Write(ToStringHelper.ToStringWithCulture(dllname)); Write("\")]\r\n public static extern "); Write(ToStringHelper.ToStringWithCulture(elangFunc.ReturnType)); Write(" "); Write(ToStringHelper.ToStringWithCulture(elangFunc.Name)); Write(ToStringHelper.ToStringWithCulture( GetParametersWithType(elangFunc.ELangParameters))); Write(";\r\n\t\t "); } Write(" }\r\n}\r\n"); return(GenerationEnvironment.ToString()); }
protected string ConcatenateWith(string separator, IEnumerable <object> outputItems) { // String builder not used because lists are expected to be short var ret = ""; foreach (var output in outputItems) { ret += separator + ToStringHelper.ToStringWithCulture(output); } if (ret.Length == 0) { return(ret); } return(ret.Substring(separator.Length)); }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { Write("<technique vs=\""); #line 6 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\TechniqueTemplate.tt" Write(ToStringHelper.ToStringWithCulture(Context.Name)); #line default #line hidden Write("\" ps=\""); #line 6 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\TechniqueTemplate.tt" Write(ToStringHelper.ToStringWithCulture(Context.Name)); #line default #line hidden Write("\">\r\n"); #line 7 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\TechniqueTemplate.tt" foreach (var pass in Context.Passes) { switch (pass.Key) { case ShaderGeneratorContext.RefractionPass: WriteLine(" <pass name=\"refract\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.BasePass: WriteLine(" <pass name=\"base\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.LightBasePass: WriteLine(" <pass name=\"litbase\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.LightPass: WriteLine( " <pass name=\"light\" depthtest=\"equal\" depthwrite=\"false\" blend=\"add\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.AlphaPass: WriteLine(" <pass name=\"alpha\" depthwrite=\"false\" blend=\"alpha\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.AlphaLightPass: WriteLine(" <pass name=\"litalpha\" depthwrite=\"false\" blend=\"addalpha\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.ShadowPass: WriteLine(" <pass name=\"shadow\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.DepthPass: WriteLine(" <pass name=\"depth\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.PrePass: WriteLine(" <pass name=\"prepass\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; case ShaderGeneratorContext.DeferredPass: WriteLine(" <pass name=\"deferred\" psdefines=\"" + pass.Key + "\" vsdefines=\"" + pass.Key + "\" />"); break; } } #line default #line hidden Write("</technique>\r\n"); return(GenerationEnvironment.ToString()); }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { Write("<?xml version=\"1.0\"?>\r\n<material>\r\n\t<technique name=\"Techniques/"); #line 8 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" Write(ToStringHelper.ToStringWithCulture(Context.Name)); #line default #line hidden Write(".xml\" quality=\"0\" loddistance=\"0\" />\r\n"); #line 9 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" foreach (var node in Context.Samplers) { if (!string.IsNullOrWhiteSpace(node.Value)) { var name = GetTextureUnitName(node.Name); if (!string.IsNullOrWhiteSpace(name)) { #line default #line hidden Write("\t<texture unit=\""); #line 16 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" Write(ToStringHelper.ToStringWithCulture(name)); #line default #line hidden Write("\" name=\""); #line 16 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" Write(ToStringHelper.ToStringWithCulture(node.Value ?? "")); #line default #line hidden Write("\" />\r\n"); #line 17 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" } } } foreach (var node in Context.Parameters) { #line default #line hidden Write("\t<parameter name=\""); #line 22 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" Write(ToStringHelper.ToStringWithCulture(node.Name)); #line default #line hidden Write("\" value=\""); #line 22 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" Write(ToStringHelper.ToStringWithCulture(node.Value ?? "")); #line default #line hidden Write("\" />\r\n"); #line 23 "E:\MyWork\Toe.Scripting\src\Urho3DMaterialEditor\Model\Templates\MaterialTemplate.tt" } #line default #line hidden Write(" \r\n\t<cull value=\"none\" />\r\n\t<shadowcull value=\"none\" />\r\n\t<fill value=\"solid\" />" + "\r\n\t<depthbias constant=\"0\" slopescaled=\"0\" />\r\n\t<renderorder value=\"128\" />\r\n\t<o" + "cclusion enable=\"false\" />\r\n</material>\r\n"); return(GenerationEnvironment.ToString()); }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { Write("/**\r\n *\t\tVital Element Studios - LinkerScript\r\n *\r\n **/\r\n \r\nOUTPUT_FORMAT (\"elf32" + "-littlearm\", \"elf32-bigarm\", \"elf32-littlearm\")\r\n\r\nMEMORY\r\n{\r\n\tFLASH (rx) : ORI" + "GIN = "); #line 15 "G:\development\repos\AvalonStudio\AvalonStudio\AvalonStudio.Toolchains.Clang\ArmGCCLinkTemplate.tt" Write(ToStringHelper.ToStringWithCulture(string.Format("0x{0:X8}", linkSettings.InRom1Start))); #line default #line hidden Write(", LENGTH = "); #line 15 "G:\development\repos\AvalonStudio\AvalonStudio\AvalonStudio.Toolchains.Clang\ArmGCCLinkTemplate.tt" Write(ToStringHelper.ToStringWithCulture(string.Format("0x{0:X8}", linkSettings.InRom1Size))); #line default #line hidden Write("\r\n\tRAM (rwx) : ORIGIN = "); #line 16 "G:\development\repos\AvalonStudio\AvalonStudio\AvalonStudio.Toolchains.Clang\ArmGCCLinkTemplate.tt" Write(ToStringHelper.ToStringWithCulture(string.Format("0x{0:X8}", linkSettings.InRam1Start))); #line default #line hidden Write(", LENGTH = "); #line 16 "G:\development\repos\AvalonStudio\AvalonStudio\AvalonStudio.Toolchains.Clang\ArmGCCLinkTemplate.tt" Write(ToStringHelper.ToStringWithCulture(string.Format("0x{0:X8}", linkSettings.InRam1Size))); #line default #line hidden Write("\r\n\tRAM1 (rwx) : ORIGIN = 0xD0000000, LENGTH = 0x00800000\r\n}\r\n\r\n_eram = "); #line 20 "G:\development\repos\AvalonStudio\AvalonStudio\AvalonStudio.Toolchains.Clang\ArmGCCLinkTemplate.tt" Write(ToStringHelper.ToStringWithCulture(string.Format("0x{0:X8}", linkSettings.InRam1Start))); #line default #line hidden Write(" + "); #line 20 "G:\development\repos\AvalonStudio\AvalonStudio\AvalonStudio.Toolchains.Clang\ArmGCCLinkTemplate.tt" Write(ToStringHelper.ToStringWithCulture(string.Format("0x{0:X8}", linkSettings.InRam1Size))); #line default #line hidden Write( ";\r\n\r\nSECTIONS\r\n{\r\n\t.text :\r\n\t{\r\n\t\tKEEP(*(.interrupt_vector))\r\n\t\t*(.text*)\r\n\t\t\r\n\t\t" + "KEEP(*(.init))\r\n\t\tKEEP(*(.fini))\r\n\t\t\r\n\t\t/* .ctors */\r\n\t\t*crtbegin.o(.ctors)\r\n\t\t*" + "crtbegin?.o(.ctors)\r\n\t\t*(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors)\r\n\t\t*(SORT(.c" + "tors.*))\r\n\t\t*(.ctors)\r\n\t\t\r\n\t\t/* .dtors */\r\n\t\t*crtbegin.o(.dtors)\r\n\t\t*crtbegin?.o" + "(.dtors)\r\n\t\t*(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors)\r\n\t\t*(SORT(.dtors.*))\r\n\t" + "\t*(.dtors)\r\n\t\t\r\n\t\t*(.rodata*)\r\n\t\t\r\n\t\tKEEP(*(.eh_fram e*))\r\n\t} > FLASH\r\n \r\n " + " \t.ARM.extab : \r\n\t{\r\n\t\t*(.ARM.extab* .gnu.linkonce.armextab.*)\r\n\t} > FLASH \r\n\t\r\n" + "\t__exidx_start = .;\r\n\t.ARM.exidx :\r\n\t{\r\n\t\t*(.ARM.exidx* .gnu.linkonce.armexidx.*" + ")\r\n\t} > FLASH \r\n\t__exidx_end = .;\r\n\t__etext = .;\r\n\t\r\n _data_flash = .;\r\n \r" + "\n .data : AT ( _data_flash )\r\n\t{\r\n\t\t. = ALIGN(4);\r\n\t\t_data_begin = .;\r\n\t\t*(vt" + "able)\r\n\t\t*(.data)\r\n\t\t*(.data*)\r\n\r\n\t\t . = ALIGN(4);\r\n /* preinit da" + "ta */\r\n PROVIDE_HIDDEN (__preinit_array_start = .);\r\n KEEP(*(.prei" + "nit_array))\r\n PROVIDE_HIDDEN (__preinit_array_end = .);\r\n \r\n . = A" + "LIGN(4);\r\n /* init data */\r\n PROVIDE_HIDDEN (__init_array_start = " + ".);\r\n KEEP(*(SORT(.init_array.*)))\r\n KEEP(*(.init_array))\r\n " + " PROVIDE_HIDDEN (__init_array_end = .);\r\n \r\n \r\n . = ALIGN(4);\r\n /*" + " finit data */\r\n PROVIDE_HIDDEN (__fini_array_start = .);\r\n KEEP(*" + "(SORT(.fini_array.*)))\r\n KEEP(*(.fini_array))\r\n PROVIDE_HIDDEN (__" + "fini_array_end = .);\r\n \r\n KEEP(*(.jcr*))\r\n\r\n\t\t. = ALIGN(4);\r\n\t\t_data_end " + "= .;\r\n\t} > RAM\r\n \r\n .bss :\r\n\t{\r\n\t\t_bss_begin = .;\r\n\t\t__bss_start__ = _bss_" + "begin;\r\n\t\t*(.bss)\r\n\t\t*(.bss*)\r\n\t\t*(COMMON)\r\n\t\t. = ALIGN(4);\r\n\t\t_bss_end = .;\r\n\t\t" + "__bss_end__ = _bss_end;\r\n\t} > RAM\r\n}\r\n\r\n/* end of allocated ram _end */\r\nPROVIDE" + "( _HEAP_START = _bss_end );\r\n\r\n/* end of the heap -> align 8 byte */ \r\nPROVIDE (" + " _HEAP_END = ALIGN(ORIGIN(RAM) + LENGTH(RAM) ,8) );\r\n\r\n\r\nENTRY(Default_Reset_Han" + "dler);\r\n"); return(GenerationEnvironment.ToString()); }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { Write(@"<!DOCTYPE html > <html> <head> <title>Scores</title> <script type=""text/javascript"" src=""https://www.google.com/jsapi""></script> <script type=""text/javascript""> google.load('visualization', '1', {packages:['corechart', 'table']}); google.setOnLoadCallback(drawTables); function drawTables() { var WeeklyTotalChartOptions = { isStacked: true }; var WeeklyTotalChartData = new google.visualization.arrayToDataTable(" ); #line 26 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.WeeklyTotalChart)); #line default #line hidden Write(@"); var WeeklyTotalChart = new google.visualization.SteppedAreaChart(document.getElementById('WeeklyTotalChart')); WeeklyTotalChart.draw(WeeklyTotalChartData, WeeklyTotalChartOptions); var DailyTotalChartOptions = { isStacked: true }; var DailyTotalChartData = new google.visualization.arrayToDataTable(" ); #line 33 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.DailyTotalChart)); #line default #line hidden Write(@"); var DailyTotalChart = new google.visualization.SteppedAreaChart(document.getElementById('DailyTotalChart')); DailyTotalChart.draw(DailyTotalChartData, DailyTotalChartOptions); var WeeklyWinRatioChartOptions = { hAxis: { minValue: 0.0, maxValue: 1.0 } }; var WeeklyWinRatioChartData = new google.visualization.arrayToDataTable(" ); #line 41 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.WeeklyWinRatioChart)); #line default #line hidden Write(@"); var WeeklyWinRatioChart = new google.visualization.LineChart(document.getElementById('WeeklyWinRatioChart')); WeeklyWinRatioChart.draw(WeeklyWinRatioChartData, WeeklyWinRatioChartOptions); var DailyWinRatioChartOptions = { hAxis: { minValue: 0.0, maxValue: 1.0 } }; var DailyWinRatioChartData = new google.visualization.arrayToDataTable(" ); #line 48 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.DailyWinRatioChart)); #line default #line hidden Write(@"); var DailyWinRatioChart = new google.visualization.LineChart(document.getElementById('DailyWinRatioChart')); DailyWinRatioChart.draw(DailyWinRatioChartData, DailyWinRatioChartOptions); var WeeklyOneVsOneClassificationChartOptions = { title: 'OneVsOne', isStacked: true }; var WeeklyOneVsOneClassificationChartData = new google.visualization.arrayToDataTable(" ); #line 57 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.WeeklyOneVsOneClassificationChart)); #line default #line hidden Write(@"); var WeeklyOneVsOneClassificationChart = new google.visualization.SteppedAreaChart(document.getElementById('WeeklyOneVsOneClassificationChart')); WeeklyOneVsOneClassificationChart.draw(WeeklyOneVsOneClassificationChartData, WeeklyOneVsOneClassificationChartOptions); var WeeklyMeleeClassificationChartOptions = { title: 'Melee', isStacked: true }; var WeeklyMeleeClassificationChartData = new google.visualization.arrayToDataTable(" ); #line 65 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.WeeklyMeleeClassificationChart)); #line default #line hidden Write(@"); var WeeklyMeleeClassificationChart = new google.visualization.SteppedAreaChart(document.getElementById('WeeklyMeleeClassificationChart')); WeeklyMeleeClassificationChart.draw(WeeklyMeleeClassificationChartData, WeeklyMeleeClassificationChartOptions); var DailyOneVsOneClassificationChartOptions = { title: 'OneVsOne', isStacked: true }; var DailyOneVsOneClassificationChartData = new google.visualization.arrayToDataTable(" ); #line 73 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.DailyOneVsOneClassificationChart)); #line default #line hidden Write(@"); var DailyOneVsOneClassificationChart = new google.visualization.SteppedAreaChart(document.getElementById('DailyOneVsOneClassificationChart')); DailyOneVsOneClassificationChart.draw(DailyOneVsOneClassificationChartData, DailyOneVsOneClassificationChartOptions); var DailyMeleeClassificationChartOptions = { title: 'Melee', isStacked: true }; var DailyMeleeClassificationChartData = new google.visualization.arrayToDataTable(" ); #line 81 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.DailyMeleeClassificationChart)); #line default #line hidden Write(@"); var DailyMeleeClassificationChart = new google.visualization.SteppedAreaChart(document.getElementById('DailyMeleeClassificationChart')); DailyMeleeClassificationChart.draw(DailyMeleeClassificationChartData, DailyMeleeClassificationChartOptions); var tableData = new google.visualization.arrayToDataTable(" ); #line 86 "C:\Users\Andrew.Tatham\Documents\Visual Studio 2012\Projects\Robocode\AndrewTatham.BattleTests\Reports\ReportTemplate.tt" Write(ToStringHelper.ToStringWithCulture(_scores.TableData)); #line default #line hidden Write(@"); var table = new google.visualization.Table(document.getElementById('table_div')); table.draw(tableData, {showRowNumber: true}); }; </script> </head> <body> <table> <tr> <td><div id='WeeklyTotalChart'></div></td> <td><div id='DailyTotalChart'></div></td> </tr> <tr> <td><div id='WeeklyWinRatioChart'></div></td> <td><div id='DailyWinRatioChart'></div></td> </tr> <tr> <td><div id='WeeklyOneVsOneClassificationChart'></div></td> <td><div id='DailyOneVsOneClassificationChart'></div></td> </tr> <tr> <td><div id='WeeklyMeleeClassificationChart'></div></td> <td><div id='DailyMeleeClassificationChart'></div></td> </tr> <tr> <td colspan='2'><div id='table_div'></div></td> </tr> </table> </body> </html>"); return(GenerationEnvironment.ToString()); }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { Write("\r\nusing Microsoft.Azure.TypeEdge.Attributes;\r\nusing Microsoft.Azure.TypeEdge.Modu" + "les.Endpoints;\r\nusing Microsoft.Azure.TypeEdge.Twins;\r\n \r\nnamespace "); #line 11 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(_codeGeneratorSettings.Namespace)); #line default #line hidden Write("\r\n{\r\n [TypeModule]\r\n public interface I"); #line 14 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(_serviceDescription.Name)); #line default #line hidden Write(" \r\n {\r\n "); #line 16 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" if (_serviceDescription.InputDescriptions != null) { foreach (var endpoint in _serviceDescription.InputDescriptions) { #line default #line hidden Write(" Input<"); #line 20 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(endpoint.TypeDescription.Name)); #line default #line hidden Write("> "); #line 20 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(endpoint.Name)); #line default #line hidden Write(" { get; set; }\r\n\t"); #line 21 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" } } #line default #line hidden Write("\r\n\t"); #line 25 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" if (_serviceDescription.OutputDescriptions != null) { foreach (var endpoint in _serviceDescription.OutputDescriptions) { #line default #line hidden Write(" Output<"); #line 29 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(endpoint.TypeDescription.Name)); #line default #line hidden Write("> "); #line 29 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(endpoint.Name)); #line default #line hidden Write(" { get; set; }\r\n\t"); #line 30 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" } } #line default #line hidden Write("\r\n\t"); #line 34 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" if (_serviceDescription.TwinDescriptions != null) { foreach (var twin in _serviceDescription.TwinDescriptions) { #line default #line hidden Write(" ModuleTwin<"); #line 38 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(twin.TypeDescription.Name)); #line default #line hidden Write("> "); #line 38 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(twin.Name)); #line default #line hidden Write(" { get; set; }\r\n\t"); #line 39 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" } } #line default #line hidden Write("\r\n\r\n\t"); #line 44 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" if (_serviceDescription.DirectMethodDescriptions != null) { foreach (var method in _serviceDescription.DirectMethodDescriptions) { var returnType = "void"; var arguments = ""; if (method.ReturnTypeDescription != null) { returnType = method.ReturnTypeDescription.Name; } if (method.ArgumentsTypeDescription != null) { arguments = string.Join(",", method.ArgumentsTypeDescription.Select(e => $"{e.TypeDescription.Name} {e.Name}") .ToArray()); } #line default #line hidden Write(" "); #line 54 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(returnType)); #line default #line hidden Write(" "); #line 54 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(method.Name)); #line default #line hidden Write("("); #line 54 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" Write(ToStringHelper.ToStringWithCulture(arguments)); #line default #line hidden Write(");\r\n\t"); #line 55 "C:\work\oss\me\TypeEdge\Microsoft.Azure.TypeEdge.Host\Service\Service.tt" } } #line default #line hidden Write("\r\n }\r\n}"); return(GenerationEnvironment.ToString()); }