private static FunctionDeclarationRegionTemplate FunctionsToDeclarations(IEnumerable <TorqueFunction> functions) { IEnumerable <string> functionDeclarations = functions.Select(function => new FunctionDeclarationTemplate(function).Indent().Content); string functionDecls = functionDeclarations.Aggregate("", (x, y) => x + "\n" + y).Substring(1); FunctionDeclarationRegionTemplate regionTemplate = new FunctionDeclarationRegionTemplate(); regionTemplate.ReplaceField("functionDecls", functionDecls); return(regionTemplate); }
private static KeyValuePair <string, Template> OutputNamespaceFunctions(string namespaceName, List <TorqueFunction> functions) { FunctionInternalsRegionTemplate functionInternals = FunctionsToInternals(functions); FunctionDeclarationRegionTemplate functionDecls = FunctionsToDeclarations(functions); NamespaceTemplate nsTemplate = new NamespaceTemplate(); nsTemplate.ReplaceField("namespaceName", namespaceName); nsTemplate.ReplaceField("functionInternals", functionInternals.Indent(2).Content); nsTemplate.ReplaceField("functionDecls", functionDecls.Indent(2).Content); return(new KeyValuePair <string, Template>(namespaceName, nsTemplate)); }