Exemplo n.º 1
0
        public string GetDeserializeUpdateIntoUpdateString(string updateFieldInstance, string schemaObject,
                                                           uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"var mapSize = {schemaObject}.GetObjectCount({fieldNumber});");

            CommonCodeWriterBlocks.WriteCheckIsCleared(codeWriter, fieldNumber);

            codeWriter.WriteLine("if (mapSize > 0 || isCleared)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"{updateFieldInstance} = new global::Improbable.Gdk.Core.Option<{Type}>(new {Type}());");
            }

            codeWriter.WriteLine("for (var i = 0; i < mapSize; i++)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"var mapObj = {schemaObject}.IndexObject({fieldNumber}, (uint) i);");
                codeWriter.WriteLine($"var key = {keyType.GetDeserializationExpression("mapObj", 1)};");
                codeWriter.WriteLine($"var value = {valueType.GetDeserializationExpression("mapObj", 2)};");
                codeWriter.WriteLine($"{updateFieldInstance}.Value.Add(key, value);");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 2
0
        public string GetDeserializeDataIntoUpdateString(string updateFieldInstance, string schemaObject,
                                                         uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"var value = {containedType.GetDeserializationExpression(schemaObject, fieldNumber)};");
            codeWriter.WriteLine($"{updateFieldInstance} = new global::Improbable.Gdk.Core.Option<{Type}>(value);");

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 3
0
        public virtual string TransformText()
        {
            this.GenerationEnvironment = null;

            #line 3 "Templates\UnityTypeGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.GetGeneratedHeader()));

            #line default
            #line hidden

            #line 3 "Templates\UnityTypeGenerator.tt"
            this.Write("\r\n\r\nusing System.Linq;\r\nusing Improbable.Gdk.Core;\r\n\r\nnamespace ");

            #line default
            #line hidden

            #line 8 "Templates\UnityTypeGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(qualifiedNamespace));

            #line default
            #line hidden

            #line 8 "Templates\UnityTypeGenerator.tt"
            this.Write("\r\n{ \r\n");

            #line default
            #line hidden

            #line 10 "Templates\UnityTypeGenerator.tt"

            var generator = new UnityTypeContent();


            #line default
            #line hidden

            #line 13 "Templates\UnityTypeGenerator.tt"
            this.Write("    ");

            #line default
            #line hidden

            #line 13 "Templates\UnityTypeGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate(typeDefinition, enumSet))));

            #line default
            #line hidden

            #line 13 "Templates\UnityTypeGenerator.tt"
            this.Write("\r\n}\r\n");

            #line default
            #line hidden
            return(this.GenerationEnvironment.ToString());
        }
Exemplo n.º 4
0
        public string GetSerializationString(string fieldInstance, string schemaObject, uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"foreach (var value in {fieldInstance})");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine(containedType.GetSerializationStatement("value", schemaObject, fieldNumber));
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 5
0
        public string GetDeserializationString(string fieldInstance, string schemaObject, uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"if ({containedType.GetCountExpression(schemaObject, fieldNumber)} == 1)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"{fieldInstance} = new {Type}({containedType.GetDeserializationExpression(schemaObject, fieldNumber)});");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 6
0
        public string GetTrySetClearedFieldString(string fieldInstance, string componentUpdateSchemaObject, uint fieldNumber,
                                                  int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"if ({fieldInstance}.Count == 0)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"{componentUpdateSchemaObject}.AddClearedField({fieldNumber});");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 7
0
        public string GetSerializationString(string fieldInstance, string schemaObject, uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"foreach (var keyValuePair in {fieldInstance})");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"var mapObj = {schemaObject}.AddObject({fieldNumber});");
                codeWriter.WriteLine(keyType.GetSerializationStatement("keyValuePair.Key", "mapObj", 1));
                codeWriter.WriteLine(valueType.GetSerializationStatement("keyValuePair.Value", "mapObj", 2));
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 8
0
        public string GetDeserializationString(string fieldInstance, string schemaObject, int fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"var list = {fieldInstance} = new {Type}();");
            codeWriter.WriteLine($"var listLength = {containedType.GetCountExpression(schemaObject, fieldNumber)};");
            codeWriter.WriteLine("for (var i = 0; i < listLength; i++)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"list.Add({containedType.GetFieldIndexExpression(schemaObject, fieldNumber, "i")});");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
        public virtual string TransformText()
        {
            this.GenerationEnvironment = null;

            #line 3 "Templates\UnityEnumGenerator.tt"
            this.Write("\r\n");

            #line default
            #line hidden

            #line 4 "Templates\UnityEnumGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.GetGeneratedHeader()));

            #line default
            #line hidden

            #line 4 "Templates\UnityEnumGenerator.tt"
            this.Write("\r\n\r\nnamespace ");

            #line default
            #line hidden

            #line 6 "Templates\UnityEnumGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(qualifiedNamespace));

            #line default
            #line hidden

            #line 6 "Templates\UnityEnumGenerator.tt"
            this.Write("\r\n{ \r\n    ");

            #line default
            #line hidden

            #line 8 "Templates\UnityEnumGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(new UnityEnumContent().Generate(enumDefinition))));

            #line default
            #line hidden

            #line 8 "Templates\UnityEnumGenerator.tt"
            this.Write("\r\n}\r\n");

            #line default
            #line hidden
            return(this.GenerationEnvironment.ToString());
        }
Exemplo n.º 10
0
        public string GetDeserializationString(string fieldInstance, string schemaObject, int fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"var map = {fieldInstance} = new {Type}();");
            codeWriter.WriteLine($"var mapSize = {schemaObject}.GetObjectCount({fieldNumber});");
            codeWriter.WriteLine("for (var i = 0; i < mapSize; i++)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"var mapObj = {schemaObject}.IndexObject({fieldNumber}, (uint) i);");
                codeWriter.WriteLine($"var key = {keyType.GetDeserializationExpression("mapObj", 1)};");
                codeWriter.WriteLine($"var value = {valueType.GetDeserializationExpression("mapObj", 2)};");
                codeWriter.WriteLine("map.Add(key, value);");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 11
0
        public string GetDeserializeDataIntoUpdateString(string updateFieldInstance, string schemaObject,
                                                         uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"var listSize = {containedType.GetCountExpression(schemaObject, fieldNumber)};");

            codeWriter.WriteLine($"{updateFieldInstance} = new global::Improbable.Gdk.Core.Option<{Type}>(new {Type}());");

            codeWriter.WriteLine("for (var i = 0; i < listSize; i++)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"var value = {containedType.GetFieldIndexExpression(schemaObject, fieldNumber, "i")};");
                codeWriter.WriteLine($"{updateFieldInstance}.Value.Add(value);");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 12
0
        public string GetDeserializeUpdateString(string fieldInstance, string schemaObject, uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            CommonCodeWriterBlocks.WriteCheckIsCleared(codeWriter, fieldNumber);

            codeWriter.WriteLine("if (isCleared)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"{fieldInstance} = new {Type}();");
            }

            codeWriter.WriteLine($"else if ({containedType.GetCountExpression(schemaObject, fieldNumber)} == 1)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"var value = {containedType.GetDeserializationExpression(schemaObject, fieldNumber)};");
                codeWriter.WriteLine($"{fieldInstance} = new {Type}(value);");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 13
0
        public string GetDeserializeUpdateString(string fieldInstance, string schemaObject,
                                                 uint fieldNumber, int indents)
        {
            var codeWriter = new CodeWriter();

            codeWriter.WriteLine($"var listSize = {containedType.GetCountExpression(schemaObject, fieldNumber)};");

            CommonCodeWriterBlocks.WriteCheckIsCleared(codeWriter, fieldNumber);

            codeWriter.WriteLine("if (listSize > 0 || isCleared)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"{fieldInstance}.Clear();");
            }

            codeWriter.WriteLine("for (var i = 0; i < listSize; i++)");
            using (codeWriter.Scope())
            {
                codeWriter.WriteLine($"var value = {containedType.GetFieldIndexExpression(schemaObject, fieldNumber, "i")};");
                codeWriter.WriteLine($"{fieldInstance}.Add(value);");
            }

            return(CommonGeneratorUtils.IndentEveryNewline(codeWriter.Build(), indents));
        }
Exemplo n.º 14
0
        public virtual string TransformText()
        {
            this.GenerationEnvironment = null;

            #line 3 "Templates\UnityTypeContent.tt"

            var typeDetails      = GetTypeDetails();
            var fieldDetailsList = GetFieldDetailsList();


            #line default
            #line hidden

            #line 7 "Templates\UnityTypeContent.tt"
            this.Write("\r\npublic struct ");

            #line default
            #line hidden

            #line 8 "Templates\UnityTypeContent.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(typeDetails.CapitalisedName));

            #line default
            #line hidden

            #line 8 "Templates\UnityTypeContent.tt"
            this.Write("\r\n{\r\n");

            #line default
            #line hidden

            #line 10 "Templates\UnityTypeContent.tt"
            foreach (var fieldDetails in fieldDetailsList)
            {
            #line default
            #line hidden

            #line 11 "Templates\UnityTypeContent.tt"
                this.Write("    public ");

            #line default
            #line hidden

            #line 11 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(fieldDetails.Type));

            #line default
            #line hidden

            #line 11 "Templates\UnityTypeContent.tt"
                this.Write(" ");

            #line default
            #line hidden

            #line 11 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(fieldDetails.PascalCaseName));

            #line default
            #line hidden

            #line 11 "Templates\UnityTypeContent.tt"
                this.Write(";\r\n");

            #line default
            #line hidden

            #line 12 "Templates\UnityTypeContent.tt"
            }

            #line default
            #line hidden

            #line 13 "Templates\UnityTypeContent.tt"

            if (fieldDetailsList.Count > 0)
            {
                var constructorArgs = GetConstructorArgs();


            #line default
            #line hidden

            #line 18 "Templates\UnityTypeContent.tt"
                this.Write("\r\n    public ");

            #line default
            #line hidden

            #line 19 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(typeDetails.CapitalisedName));

            #line default
            #line hidden

            #line 19 "Templates\UnityTypeContent.tt"
                this.Write("(");

            #line default
            #line hidden

            #line 19 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(constructorArgs));

            #line default
            #line hidden

            #line 19 "Templates\UnityTypeContent.tt"
                this.Write(")\r\n    {\r\n");

            #line default
            #line hidden

            #line 21 "Templates\UnityTypeContent.tt"
                foreach (var fieldDetails in fieldDetailsList)
                {
            #line default
            #line hidden

            #line 22 "Templates\UnityTypeContent.tt"
                    this.Write("        ");

            #line default
            #line hidden

            #line 22 "Templates\UnityTypeContent.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(fieldDetails.PascalCaseName));

            #line default
            #line hidden

            #line 22 "Templates\UnityTypeContent.tt"
                    this.Write(" = ");

            #line default
            #line hidden

            #line 22 "Templates\UnityTypeContent.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(fieldDetails.CamelCaseName));

            #line default
            #line hidden

            #line 22 "Templates\UnityTypeContent.tt"
                    this.Write(";\r\n");

            #line default
            #line hidden

            #line 23 "Templates\UnityTypeContent.tt"
                }

            #line default
            #line hidden

            #line 24 "Templates\UnityTypeContent.tt"
                this.Write("    }\r\n");

            #line default
            #line hidden

            #line 25 "Templates\UnityTypeContent.tt"
            }

            #line default
            #line hidden

            #line 26 "Templates\UnityTypeContent.tt"
            this.Write("\r\n    public static class Serialization\r\n    {\r\n        public static void Serial" +
                       "ize(");

            #line default
            #line hidden

            #line 29 "Templates\UnityTypeContent.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(typeDetails.CapitalisedName));

            #line default
            #line hidden

            #line 29 "Templates\UnityTypeContent.tt"
            this.Write(" instance, global::Improbable.Worker.Core.SchemaObject obj)\r\n        {\r\n");

            #line default
            #line hidden

            #line 31 "Templates\UnityTypeContent.tt"
            foreach (var fieldDetails in fieldDetailsList)
            {
            #line default
            #line hidden

            #line 32 "Templates\UnityTypeContent.tt"
                this.Write("            {\r\n                ");

            #line default
            #line hidden

            #line 33 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(fieldDetails.GetSerializationString("instance." + fieldDetails.PascalCaseName, "obj", 4)));

            #line default
            #line hidden

            #line 33 "Templates\UnityTypeContent.tt"
                this.Write("\r\n            }\r\n");

            #line default
            #line hidden

            #line 35 "Templates\UnityTypeContent.tt"
            }

            #line default
            #line hidden

            #line 36 "Templates\UnityTypeContent.tt"
            this.Write("        }\r\n\r\n        public static ");

            #line default
            #line hidden

            #line 38 "Templates\UnityTypeContent.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(typeDetails.CapitalisedName));

            #line default
            #line hidden

            #line 38 "Templates\UnityTypeContent.tt"
            this.Write(" Deserialize(global::Improbable.Worker.Core.SchemaObject obj)\r\n        {\r\n       " +
                       "     var instance = new ");

            #line default
            #line hidden

            #line 40 "Templates\UnityTypeContent.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(typeDetails.CapitalisedName));

            #line default
            #line hidden

            #line 40 "Templates\UnityTypeContent.tt"
            this.Write("();\r\n");

            #line default
            #line hidden

            #line 41 "Templates\UnityTypeContent.tt"
            foreach (var fieldDetails in fieldDetailsList)
            {
            #line default
            #line hidden

            #line 42 "Templates\UnityTypeContent.tt"
                this.Write("            {\r\n                ");

            #line default
            #line hidden

            #line 43 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(fieldDetails.GetDeserializeString("instance." + fieldDetails.PascalCaseName, "obj", 4)));

            #line default
            #line hidden

            #line 43 "Templates\UnityTypeContent.tt"
                this.Write("\r\n            }\r\n");

            #line default
            #line hidden

            #line 45 "Templates\UnityTypeContent.tt"
            }

            #line default
            #line hidden

            #line 46 "Templates\UnityTypeContent.tt"
            this.Write("            return instance;\r\n        }\r\n    }\r\n");

            #line default
            #line hidden

            #line 49 "Templates\UnityTypeContent.tt"

            var typeGenerator = new UnityTypeContent();
            foreach (var nestedType in nestedTypes)
            {
            #line default
            #line hidden

            #line 54 "Templates\UnityTypeContent.tt"
                this.Write("\r\n    ");

            #line default
            #line hidden

            #line 55 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(typeGenerator.Generate(nestedType, enumSet))));

            #line default
            #line hidden

            #line 55 "Templates\UnityTypeContent.tt"
                this.Write("\r\n");

            #line default
            #line hidden

            #line 56 "Templates\UnityTypeContent.tt"
            }

            #line default
            #line hidden

            #line 57 "Templates\UnityTypeContent.tt"

            var enumGenerator = new UnityEnumContent();
            foreach (var nestedEnum in nestedEnums)
            {
            #line default
            #line hidden

            #line 62 "Templates\UnityTypeContent.tt"
                this.Write("\r\n    ");

            #line default
            #line hidden

            #line 63 "Templates\UnityTypeContent.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(enumGenerator.Generate(nestedEnum))));

            #line default
            #line hidden

            #line 63 "Templates\UnityTypeContent.tt"
                this.Write("\r\n");

            #line default
            #line hidden

            #line 64 "Templates\UnityTypeContent.tt"
            }

            #line default
            #line hidden

            #line 65 "Templates\UnityTypeContent.tt"
            this.Write("}\r\n");

            #line default
            #line hidden
            return(this.GenerationEnvironment.ToString());
        }
        public virtual string TransformText()
        {
            this.GenerationEnvironment = null;

            #line 3 "Templates\UnityReferenceTypeProviderGenerator.tt"

            var fieldDetailsList   = GetFieldDetailsList();
            var eventDetailsList   = GetEventDetailsList();
            var componentDetails   = GetComponentDetails();
            var commandDetailsList = GetCommandDetailsList();
            var generatedHeader    = CommonGeneratorUtils.GetGeneratedHeader();
            var generator          = new UnityReferenceTypeProviderContent();
            var componentNamespace = qualifiedNamespace + "." + componentDetails.ComponentName;


            #line default
            #line hidden

            #line 12 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(generatedHeader));

            #line default
            #line hidden

            #line 12 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write("\r\n\r\nusing System;\r\nusing System.Collections.Generic;\r\nusing System.Linq;\r\nusing I" +
                       "mprobable.Gdk.Core;\r\n\r\nnamespace ");

            #line default
            #line hidden

            #line 19 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(qualifiedNamespace));

            #line default
            #line hidden

            #line 19 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write("\r\n{\r\n    public partial class ");

            #line default
            #line hidden

            #line 21 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(componentDetails.ComponentName));

            #line default
            #line hidden

            #line 21 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write("\r\n    {\r\n        internal static class ReferenceTypeProviders\r\n        {\r\n       " +
                       "     ");

            #line default
            #line hidden

            #line 25 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate("Updates", $"List<{componentNamespace}.Update>"), 3)));

            #line default
            #line hidden

            #line 25 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write("\r\n\r\n");

            #line default
            #line hidden

            #line 27 "Templates\UnityReferenceTypeProviderGenerator.tt"
            foreach (var fieldDetails in fieldDetailsList)
            {
            #line default
            #line hidden

            #line 28 "Templates\UnityReferenceTypeProviderGenerator.tt"
                if (!fieldDetails.IsBlittable)
                {
            #line default
            #line hidden

            #line 29 "Templates\UnityReferenceTypeProviderGenerator.tt"
                    this.Write("            ");

            #line default
            #line hidden

            #line 29 "Templates\UnityReferenceTypeProviderGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate(fieldDetails.PascalCaseName, fieldDetails.Type), 3)));

            #line default
            #line hidden

            #line 29 "Templates\UnityReferenceTypeProviderGenerator.tt"
                    this.Write("\r\n\r\n");

            #line default
            #line hidden

            #line 31 "Templates\UnityReferenceTypeProviderGenerator.tt"
                }

            #line default
            #line hidden

            #line 32 "Templates\UnityReferenceTypeProviderGenerator.tt"
            }

            #line default
            #line hidden

            #line 33 "Templates\UnityReferenceTypeProviderGenerator.tt"
            foreach (var eventDetails in eventDetailsList)
            {
            #line default
            #line hidden

            #line 34 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("            ");

            #line default
            #line hidden

            #line 34 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate(eventDetails.EventName, $"List<{eventDetails.FqnPayloadType}>"), 3)));

            #line default
            #line hidden

            #line 34 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("\r\n");

            #line default
            #line hidden

            #line 35 "Templates\UnityReferenceTypeProviderGenerator.tt"
            }

            #line default
            #line hidden

            #line 36 "Templates\UnityReferenceTypeProviderGenerator.tt"
            foreach (var commandDetails in commandDetailsList)
            {
            #line default
            #line hidden

            #line 37 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("            ");

            #line default
            #line hidden

            #line 37 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate($"{commandDetails.CommandName}Sender", $"List<{qualifiedNamespace}.{componentDetails.ComponentName}.{commandDetails.CommandName}.Request>"), 3)));

            #line default
            #line hidden

            #line 37 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("\r\n            ");

            #line default
            #line hidden

            #line 38 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate($"{commandDetails.CommandName}Requests", $"List<{qualifiedNamespace}.{componentDetails.ComponentName}.{commandDetails.CommandName}.ReceivedRequest>"), 3)));

            #line default
            #line hidden

            #line 38 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("\r\n            ");

            #line default
            #line hidden

            #line 39 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate($"{commandDetails.CommandName}Responder", $"List<{qualifiedNamespace}.{componentDetails.ComponentName}.{commandDetails.CommandName}.Response>"), 3)));

            #line default
            #line hidden

            #line 39 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("\r\n            ");

            #line default
            #line hidden

            #line 40 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(CommonGeneratorUtils.IndentEveryNewline(generator.Generate($"{commandDetails.CommandName}Responses", $"List<{qualifiedNamespace}.{componentDetails.ComponentName}.{commandDetails.CommandName}.ReceivedResponse>"), 3)));

            #line default
            #line hidden

            #line 40 "Templates\UnityReferenceTypeProviderGenerator.tt"
                this.Write("\r\n\r\n");

            #line default
            #line hidden

            #line 42 "Templates\UnityReferenceTypeProviderGenerator.tt"
            }

            #line default
            #line hidden

            #line 43 "Templates\UnityReferenceTypeProviderGenerator.tt"
            this.Write("        }\r\n    }\r\n}\r\n");

            #line default
            #line hidden
            return(this.GenerationEnvironment.ToString());
        }