protected override void PrintParsedElements(StringBuilder sb, IParsedElement parsedElement, int indentCount) { var parsedField = (ParsedField)parsedElement; var indent = new string(' ', indentCount); sb.AppendLine(); if (!string.IsNullOrEmpty(parsedField.MainComment)) { sb.AppendLine(parsedField.MainComment); } sb.AppendLine($"{indent}/// <summary>"); sb.AppendLine($"{indent}/// {parsedField.Comment}"); sb.AppendLine($"{indent}/// </summary>"); if (!string.IsNullOrEmpty(parsedField.CppType)) { sb.AppendLine($"{indent}/// <returns>API type: {TypeCorrection(parsedField.CppType)}</returns>"); } sb.AppendLine($"{indent}[JsonProperty(\"{parsedField.CppName}\")]"); if (!string.IsNullOrEmpty(parsedField.Type)) { sb.AppendLine($"{indent}public {parsedField.Type} {parsedField.Name} {{get; set;}}"); } else { sb.AppendLine($"{indent}{parsedField.Name},"); } }
protected override void PrintParsedElements(StringBuilder sb, IParsedElement parsedElement, int indentCount) { var parsedFunc = (ParsedFunc)parsedElement; var indent = new string(' ', indentCount); sb.AppendLine(); var info = parsedFunc.Comment ?? string.Empty; var startComment = info.IndexOf("//", StringComparison.Ordinal); if (!string.IsNullOrEmpty(info) && (startComment > 0 || startComment < 0)) { var addInfo = startComment > 0 ? info.Remove(startComment) : info; sb.Append($" | {addInfo}"); sb.AppendLine(); } if (startComment > -1) { info = info.Remove(0, startComment); info = info.Trim('/'); } sb.AppendLine($"{indent}/// <summary>"); sb.AppendLine($"{indent}/// API name: {parsedFunc.CppName}"); sb.AppendLine($"{indent}/// {info}"); sb.AppendLine($"{indent}/// </summary>"); foreach (var itm in parsedFunc.Params) { sb.AppendLine($"{indent}/// <param name=\"{itm.Name}\">API type: {TypeCorrection(itm.CppType)}</param>"); } sb.AppendLine($"{indent}/// <returns>API type: {TypeCorrection(parsedFunc.CppType)}</returns>"); sb.AppendLine($"{indent}{parsedFunc.Type} {parsedFunc.Name}({string.Join(", ", parsedFunc.Params)});"); }
protected abstract void PrintParsedElements(StringBuilder sb, IParsedElement parsedElement, int indentCount);