public override void ToCSharp(StringBuilder stringBuilder, int indentationLevel, TemplateSettings settings) { string modifiedID = GetModifiedID(settings); if (string.IsNullOrEmpty(modifiedID)) { base.ToCSharp(stringBuilder, indentationLevel, settings); } else { //Start stringBuilder.AppendIndentations(indentationLevel); TemplateBuilder.BeginColorBlock(stringBuilder, settings, TemplateSettings.SYSTEM_KEYWORD_COLOR); stringBuilder.Append("namespace "); TemplateBuilder.EndColorBlock(stringBuilder, settings, TemplateSettings.SYSTEM_KEYWORD_COLOR); stringBuilder.Append(modifiedID); stringBuilder.Append("\n"); stringBuilder.AppendIndentations(indentationLevel); stringBuilder.Append("{\n"); //Body base.ToCSharp(stringBuilder, indentationLevel + 1, settings); //End stringBuilder.Append("\n"); stringBuilder.AppendIndentations(indentationLevel); stringBuilder.Append("}"); } }
/// Converts the XML object into C# and adds it to the string builder public override void ToCSharp(StringBuilder stringBuilder, int indentationLevel, TemplateSettings settings) { //Signature stringBuilder.AppendIndentations(indentationLevel); TemplateBuilder.BeginColorBlock(stringBuilder, settings, TemplateSettings.ACCESSIBILITY_KEYWORD_COLOR); stringBuilder.Append(accessibility); TemplateBuilder.EndColorBlock(stringBuilder, settings, TemplateSettings.ACCESSIBILITY_KEYWORD_COLOR); stringBuilder.AppendSpace(); TemplateBuilder.BeginColorBlock(stringBuilder, settings, TemplateSettings.SYSTEM_KEYWORD_COLOR); stringBuilder.AppendIf("static ", isStatic); stringBuilder.AppendIf("sealed ", isSealed); if (virtuality != Virtuality.none) { stringBuilder.Append(virtuality.ToString().Replace("@", null)); stringBuilder.AppendSpace(); } TemplateBuilder.EndColorBlock(stringBuilder, settings, TemplateSettings.SYSTEM_KEYWORD_COLOR); if (!string.IsNullOrEmpty(returnType)) { TemplateBuilder.BeginColorBlock(stringBuilder, settings, TemplateSettings.TYPE_COLOR); stringBuilder.Append(returnType ?? "void"); TemplateBuilder.EndColorBlock(stringBuilder, settings, TemplateSettings.TYPE_COLOR); stringBuilder.AppendSpace(); } stringBuilder.Append(id); //Arguments stringBuilder.Append("("); for (int i = 0; i < arguments.Count; ++i) { XmlArgument argument = arguments[i]; TemplateBuilder.BeginColorBlock(stringBuilder, settings, TemplateSettings.TYPE_COLOR); stringBuilder.Append(argument.type ?? "?"); TemplateBuilder.EndColorBlock(stringBuilder, settings, TemplateSettings.TYPE_COLOR); stringBuilder.AppendSpace(); stringBuilder.Append(argument.id ?? "?"); if (i < arguments.Count - 1) { stringBuilder.Append(", "); } } stringBuilder.Append(")"); //Body if (virtuality == Virtuality.@abstract) { stringBuilder.Append(";\n"); } else { stringBuilder.Append("\n"); stringBuilder.AppendIndentations(indentationLevel); stringBuilder.Append("{\n"); base.ToCSharp(stringBuilder, indentationLevel + 1, settings); stringBuilder.Append("\n"); stringBuilder.AppendIndentations(indentationLevel); stringBuilder.Append("}"); } }
public override bool ShouldUse(TemplateSettings settings) { return(true); }