Browse Source

Use the regular templates since classes are now regular declaration contexts and they do not have a separate container for FunctionTemplates.

pull/1/head
triton 13 years ago
parent
commit
d3d7e1f2d6
  1. 7
      src/Generator/Generators/CLI/CLIHeadersTemplate.cs
  2. 10
      src/Generator/Generators/CLI/CLISourcesTemplate.cs

7
src/Generator/Generators/CLI/CLIHeadersTemplate.cs

@ -262,11 +262,14 @@ namespace CppSharp.Generators.CLI @@ -262,11 +262,14 @@ namespace CppSharp.Generators.CLI
var oldCtx = printer.Context;
PushIndent();
foreach (var template in @class.FunctionTemplates)
foreach (var template in @class.Templates)
{
if (template.Ignore) continue;
var function = template.TemplatedFunction;
var functionTemplate = template as FunctionTemplate;
if (functionTemplate == null) continue;
var function = functionTemplate.TemplatedFunction;
var typeNames = template.Parameters.Select(
param => "typename " + param.Name).ToList();

10
src/Generator/Generators/CLI/CLISourcesTemplate.cs

@ -161,13 +161,15 @@ namespace CppSharp.Generators.CLI @@ -161,13 +161,15 @@ namespace CppSharp.Generators.CLI
if (Options.GenerateFunctionTemplates)
{
foreach (var template in @class.FunctionTemplates)
foreach (var template in @class.Templates)
{
if (template.Ignore)
continue;
if (template.Ignore) continue;
var functionTemplate = template as FunctionTemplate;
if (functionTemplate == null) continue;
GenerateDeclarationCommon(template);
GenerateFunctionTemplate(template, @class);
GenerateFunctionTemplate(functionTemplate, @class);
}
}

Loading…
Cancel
Save