diff --git a/BasicDemo/BasicDemo.csproj b/Codegen.Basic/Codegen.Basic.csproj similarity index 72% rename from BasicDemo/BasicDemo.csproj rename to Codegen.Basic/Codegen.Basic.csproj index a7f0773..45c45ba 100644 --- a/BasicDemo/BasicDemo.csproj +++ b/Codegen.Basic/Codegen.Basic.csproj @@ -5,6 +5,7 @@ net9.0 enable enable + BasicDemo @@ -12,9 +13,10 @@ - + + Always - + diff --git a/BasicDemo/Program.cs b/Codegen.Basic/Program.cs similarity index 84% rename from BasicDemo/Program.cs rename to Codegen.Basic/Program.cs index f23151f..de86019 100644 --- a/BasicDemo/Program.cs +++ b/Codegen.Basic/Program.cs @@ -18,6 +18,8 @@ using mROA.CodegenTools; // doc.Insert("insert", "inserted text by insert template => "); // doc.Parts.Add(new DefineTemplateSection("post added", "post", doc)); // Console.WriteLine(doc.Compile()); +var doc = TemplateReader.FromEmbeddedResource("exampleTemplate.cstmpl"); +doc.Insert("ctorInserting", "test inserting"); +Console.WriteLine(doc.Compile()); -var doc = TemplateReader.Parce(File.ReadAllText("exampleTemplate.cstmpl")); Console.WriteLine(doc.Parts.Count); \ No newline at end of file diff --git a/BasicDemo/exampleTemplate.cstmpl b/Codegen.Basic/exampleTemplate.cstmpl similarity index 100% rename from BasicDemo/exampleTemplate.cstmpl rename to Codegen.Basic/exampleTemplate.cstmpl diff --git a/mROA.Codegen/MethodRepo.cstmpl b/mROA.Codegen/MethodRepo.cstmpl new file mode 100644 index 0000000..2c52517 --- /dev/null +++ b/mROA.Codegen/MethodRepo.cstmpl @@ -0,0 +1,32 @@ +// +using System.Collections.Generic; +using System.Reflection; +using mROA.Abstract; +using mROA.Implementation; +using System; +using System.Threading; + +namespace mROA.Codegen +{ + public class CoCodegenMethodRepository : IMethodRepository + { + private readonly List _methods = new () { + + }; + + public IMethodInvoker GetMethod(int id) + { + if (id == -1) + return mROA.Implementation.MethodInvoker.Dispose; + + if (_methods.Count <= id) + return null; + + return _methods[id]; + } + + public void Inject(T dependency) + { + } + } +} \ No newline at end of file diff --git a/mROA.Codegen/mROA.Codegen.csproj b/mROA.Codegen/mROA.Codegen.csproj index c9257fd..658a3e6 100644 --- a/mROA.Codegen/mROA.Codegen.csproj +++ b/mROA.Codegen/mROA.Codegen.csproj @@ -34,7 +34,10 @@ - + + + + diff --git a/mROA.Codegen/test.tpt b/mROA.Codegen/test.tpt deleted file mode 100644 index c53ad17..0000000 --- a/mROA.Codegen/test.tpt +++ /dev/null @@ -1 +0,0 @@ -test text \ No newline at end of file diff --git a/mROA.CodegenTools/DefineTemplateSection.cs b/mROA.CodegenTools/DefineTemplateSection.cs index f80b799..5226cac 100644 --- a/mROA.CodegenTools/DefineTemplateSection.cs +++ b/mROA.CodegenTools/DefineTemplateSection.cs @@ -21,7 +21,7 @@ namespace mROA.CodegenTools public override string ToString() { - return $"{nameof(_tag)}: {_tag}, {nameof(StoredText)}: {StoredText}"; + return StoredText; } } } \ No newline at end of file diff --git a/mROA.CodegenTools/Reading/InnerTemplateSectionReader.cs b/mROA.CodegenTools/Reading/InnerTemplateSectionReader.cs index 39cdefe..c69038e 100644 --- a/mROA.CodegenTools/Reading/InnerTemplateSectionReader.cs +++ b/mROA.CodegenTools/Reading/InnerTemplateSectionReader.cs @@ -4,7 +4,8 @@ namespace mROA.CodegenTools { public class InnerTemplateSectionReader : LeadingTextSectionReader { - public InnerTemplateSectionReader() : base(" n.EndsWith(resourceName)); + var res = Assembly.GetCallingAssembly().GetManifestResourceStream(fileName); + var reader = new StreamReader(res); + var templateText = reader.ReadToEnd(); + return Parce(templateText); + } } } \ No newline at end of file diff --git a/mROA.sln b/mROA.sln index aac4a31..bf3763f 100644 --- a/mROA.sln +++ b/mROA.sln @@ -35,7 +35,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mROA.CodegenTools", "mROA.C EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Codegen", "Codegen", "{3DB22457-E65B-426F-B3DD-08C615132B3E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BasicDemo", "BasicDemo\BasicDemo.csproj", "{87396E86-D7ED-4556-AB50-F3696FEF9072}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Codegen.Basic", "Codegen.Basic\Codegen.Basic.csproj", "{87396E86-D7ED-4556-AB50-F3696FEF9072}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution