diff options
author | Michael Hutchinson <m.j.hutchinson@gmail.com> | 2015-02-10 09:07:05 +0300 |
---|---|---|
committer | Michael Hutchinson <m.j.hutchinson@gmail.com> | 2015-04-08 03:16:58 +0300 |
commit | a39e8f9571d0704151edd4baf97c03df491244d5 (patch) | |
tree | 71898bb4a911f5b825e092b4912e53c65705c39b /main/src/addins/TextTemplating | |
parent | ee6383e7f738c908066f0899f659a90ebc21ecad (diff) |
[T4] Implement generating methods on Mono
Diffstat (limited to 'main/src/addins/TextTemplating')
-rw-r--r-- | main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.cs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.cs b/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.cs index 87ac543f74..1826225e8e 100644 --- a/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.cs +++ b/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.cs @@ -1094,6 +1094,7 @@ namespace Mono.TextTemplating var cgInit = cgType.GetMethod ("InitOutput", BindingFlags.NonPublic | BindingFlags.Instance); var cgFieldGen = cgType.GetMethod ("GenerateField", BindingFlags.NonPublic | BindingFlags.Instance); var cgPropGen = cgType.GetMethod ("GenerateProperty", BindingFlags.NonPublic | BindingFlags.Instance); + var cgMethGen = cgType.GetMethod ("GenerateMethod", BindingFlags.NonPublic | BindingFlags.Instance); #pragma warning disable 0618 var generator = (CodeGenerator) provider.CreateGenerator (); @@ -1113,6 +1114,12 @@ namespace Mono.TextTemplating cgPropGen.Invoke (generator, new object[] { p, dummy }); continue; } + var m = member as CodeMemberMethod; + if (m != null) { + cgInit.Invoke (generator, new object[] { sw, options }); + cgMethGen.Invoke (generator, new object[] { m, dummy }); + continue; + } } } |