protected virtual void AppendClass()

in Backend/Core/ForTea.Core/TemplateProcessing/CodeGeneration/Converters/T4CSharpIntermediateConverterBase.cs [107:154]


    protected virtual void AppendClass([NotNull] T4CSharpCodeGenerationIntermediateResult intermediateResult)
    {
      AppendIndent();
      Result.Append(intermediateResult.AccessRightsText);
      Result.Append($" partial class {ClassNameProvider.GeneratedClassName} : ");
      AppendBaseClassName(intermediateResult);
      Result.AppendLine();
      using (new CodeBlockCookie(this))
      {
        AppendConstructor(intermediateResult);
        AppendTransformMethod(intermediateResult);

        AppendFeatures(intermediateResult);
        if (!intermediateResult.ParameterDescriptions.IsEmpty())
        {
          if (ShouldUseLineDirectives)
          {
            AppendIndent();
            Result.AppendLine();
            AppendIndent();
            Result.AppendLine($"#line 1 \"{File.LogicalPsiSourceFile.GetLocation()}\"");
          }

          Result.AppendLine();
        }

        using (new UnindentCookie(this))
        {
          AppendParameterDeclarations(intermediateResult.ParameterDescriptions);
          AppendTemplateInitialization(intermediateResult.ParameterDescriptions, intermediateResult.HasHost);
        }

        if (!intermediateResult.ParameterDescriptions.IsEmpty())
        {
          Result.AppendLine();
          Result.AppendLine();
          if (ShouldUseLineDirectives)
          {
            AppendIndent();
            Result.AppendLine();
            AppendIndent();
            Result.AppendLine("#line default");
            AppendIndent();
            Result.AppendLine("#line hidden");
          }
        }
      }
    }