public ParsedEnum(Enumeration e) { Comments = new ParsedComment(e); Name = !string.IsNullOrWhiteSpace(e.Name) ? e.Name : throw new ArgumentException("Enum name cannot be blank"); BaseType = GetBaseTypeName(e.BuiltinType); Members = from i in e.Items select(i.Name, e.GetItemValueAsString(i), new ParsedComment( i )); }
public ParsedFunctionSignature(Function f) { if (f.IsOperator || f.IsThisCall) { throw new ArgumentException("Unsupported function type", nameof(f)); } Signature = f.FunctionType.Type as FunctionType; Comments = new ParsedComment(f); Name = f.Name; Attributes = f.Attributes; Introducer = "public static extern "; }
public ParsedFunctionSignature(TypedefNameDecl td) { if (td.TryGetFunctionSignature(out FunctionType signature)) { if (signature.CallingConvention != CppSharp.AST.CallingConvention.C) { throw new NotSupportedException("Only delegates with the 'C' Calling convention are supported"); } Signature = signature; Comments = new ParsedComment(td); Name = td.Name; Attributes = new[] { UnmanagedFunctionPointerAttrib }; Introducer = "public delegate "; } else { throw new ArgumentException("pointer to function type required"); } }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { this.Write("<!--\r\n;; ========================================================================" + "======\r\n;; <auto-generated>\r\n;; This file was generated by a tool.\r\n;; R" + "untime Version: "); #line 10 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(ToolVersion)); #line default #line hidden this.Write(@" ;; ;; Changes to this file may cause incorrect behavior and will be lost if ;; the code is regenerated. ;; </auto-generated> ;; <usage> ;; This file contains the bare bones skeleton doc comments info that the ;; generated code files refer to. If the original source contained comments, ;; those comments are generated here as the ""remarks"" element to aid in ;; completing the docs. This always generated file is created with a .g.xml ;; extension, however the generated C# code includes the form with the "".g"" ;; in the extension. This prevents the generation of this skeleton from ;; overwriting any customized docs data. Any new entries need merging into ;; the real version with all the manual edits. ;; </usage> ;; ============================================================================== --> <LibLlvmAPI> "); #line 28 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var e in Enums) { #line default #line hidden this.Write(" <Enumeration name=\""); #line 29 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.Name)); #line default #line hidden this.Write("\">\r\n <summary>TODO: Provide summary for "); #line 30 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.Name)); #line default #line hidden this.Write(" Enumeration</summary>\r\n"); #line 31 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" if (e.Comments.Any()) { #line default #line hidden this.Write(" <remarks>\r\n"); #line 33 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var commentLine in e.Comments) { #line default #line hidden this.Write(" "); #line 34 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(commentLine)); #line default #line hidden this.Write("\r\n"); #line 35 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write(" </remarks>\r\n"); #line 37 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 38 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var enumItem in e.Members) { #line default #line hidden this.Write(" <Item name=\""); #line 39 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(enumItem.Name)); #line default #line hidden this.Write("\">\r\n <summary>TODO: Provide summary for "); #line 40 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.Name)); #line default #line hidden this.Write("."); #line 40 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(enumItem.Name)); #line default #line hidden this.Write(" Enumeration</summary>\r\n </Item>\r\n"); #line 42 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write(" </Enumeration>\r\n"); #line 44 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 45 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var d in Delegates) { #line default #line hidden this.Write(" <Delegate name=\""); #line 46 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden this.Write("\">\r\n <summary>TODO: Provide summary for Delegate "); #line 47 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden this.Write("</summary>\r\n"); #line 48 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var p in d.ParameterNames) { #line default #line hidden this.Write(" <param name=\""); #line 49 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(p)); #line default #line hidden this.Write("\">TODO: Provide details of parameter "); #line 49 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(p)); #line default #line hidden this.Write("</param>\r\n"); #line 50 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 50 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" if (d.HasNonVoidReturn) { #line default #line hidden this.Write(" <returns>TODO: Document return value</returns>\r\n"); #line 52 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write(" </Delegate>\r\n"); #line 54 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 55 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var f in Functions) { #line default #line hidden this.Write(" <Function name=\""); #line 56 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(f.Name)); #line default #line hidden this.Write("\">\r\n <summary>TODO: Provide summary for Function "); #line 57 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(f.Name)); #line default #line hidden this.Write("</summary>\r\n"); #line 58 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var p in f.ParameterNames) { #line default #line hidden this.Write(" <param name=\""); #line 59 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(p)); #line default #line hidden this.Write("\">TODO: Provide details of parameter "); #line 59 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(p)); #line default #line hidden this.Write("</param>\r\n"); #line 60 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 60 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" if (f.HasNonVoidReturn) { #line default #line hidden this.Write(" <returns>TODO: Document return value</returns>\r\n"); #line 62 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write(" </Function>\r\n"); #line 64 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 65 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var s in ValueTypes) { #line default #line hidden this.Write(" <Struct name=\""); #line 66 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(s.Name)); #line default #line hidden this.Write("\">\r\n <summary>TODO: Provide summary for struct "); #line 67 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(s.Name)); #line default #line hidden this.Write("</summary>\r\n"); #line 68 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" var parsedComments = new ParsedComment(s); if (parsedComments.Any()) { #line default #line hidden this.Write(" <remarks>\r\n"); #line 71 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var commentLine in parsedComments) { #line default #line hidden this.Write(" "); #line 72 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(commentLine)); #line default #line hidden this.Write("\r\n"); #line 73 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write(" </remarks>\r\n"); #line 75 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden #line 76 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" foreach (var fld in s.Fields) { #line default #line hidden this.Write(" <Field name=\""); #line 77 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(fld.Name)); #line default #line hidden this.Write("\">\r\n <summary>TODO: Provide summary for field "); #line 78 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(s.Name)); #line default #line hidden this.Write("."); #line 78 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(fld.Name)); #line default #line hidden this.Write("</summary>\r\n </Field>\r\n"); #line 80 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write(" </Struct>\r\n"); #line 82 "D:\GitHub\Ubiquity.NET\Ubiquity.NET.Llvm\src\Interop\LlvmBindingsGenerator\Templates\T4\ExternalDocXmlTemplate.tt" } #line default #line hidden this.Write("</LibLlvmAPI>\r\n"); return(this.GenerationEnvironment.ToString()); }
/// <summary> /// Create the template output /// </summary> public virtual string TransformText() { this.Write("// ------------------------------------------------------------------------------" + "\r\n// <auto-generated>\r\n// This code was generated by a tool.\r\n// Runtime" + " Version: "); #line 9 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(ToolVersion)); #line default #line hidden this.Write("\r\n//\r\n// Changes to this file may cause incorrect behavior and will be lost i" + "f\r\n// the code is regenerated.\r\n// </auto-generated>\r\n// -------------------" + "-----------------------------------------------------------\r\n\r\n"); #line 16 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var import in Imports) { #line default #line hidden this.Write("using "); #line 17 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(import)); #line default #line hidden this.Write(";\r\n"); #line 18 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write("\r\nnamespace Llvm.NET.Interop\r\n{\r\n"); #line 22 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var e in Enums) { #line default #line hidden this.Write(" /// <include file=\""); #line 23 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(XDocIncludePath)); #line default #line hidden this.Write("\" path=\'LibLlvmAPI/Enumeration[@name=\""); #line 23 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.Name)); #line default #line hidden this.Write("\"]/*[not(self::Item)]\' />\r\n [GeneratedCode(\"LlvmBindingsGenerator\",\""); #line 24 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(ToolVersion)); #line default #line hidden this.Write("\")]\r\n public enum "); #line 25 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.Name)); #line default #line hidden this.Write(" : "); #line 25 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.BaseType)); #line default #line hidden this.Write("\r\n {\r\n"); #line 27 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var m in e.Members) { #line default #line hidden #line 28 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var commentLine in e.Comments) { #line default #line hidden this.Write(" // "); #line 29 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(commentLine)); #line default #line hidden this.Write("\r\n"); #line 30 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" /// <include file=\""); #line 31 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(XDocIncludePath)); #line default #line hidden this.Write("\" path=\'LibLlvmAPI/Enumeration[@name=\""); #line 31 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(e.Name)); #line default #line hidden this.Write("\"]/Item[@name=\""); #line 31 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(m.Name)); #line default #line hidden this.Write("\"]/*\' />\r\n "); #line 32 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(m.Name)); #line default #line hidden this.Write(" = "); #line 32 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(m.Value)); #line default #line hidden this.Write(",\r\n"); #line 33 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" }\r\n\r\n"); #line 36 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } foreach (var d in Delegates) { #line default #line hidden #line 38 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var commentLine in d.Comments) { #line default #line hidden this.Write(" // "); #line 39 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(commentLine)); #line default #line hidden this.Write("\r\n"); #line 40 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" /// <include file=\""); #line 41 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(XDocIncludePath)); #line default #line hidden this.Write("\" path=\'LibLlvmAPI/Delegate[@name=\""); #line 41 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden this.Write("\"]/*\' />\r\n"); #line 42 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var attrib in d.Attributes) { #line default #line hidden this.Write(" "); #line 43 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(attrib.AsString())); #line default #line hidden this.Write("\r\n"); #line 44 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" "); #line 45 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d)); #line default #line hidden this.Write("\r\n"); #line 46 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden #line 47 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var s in ValueTypes) { var parsedComment = new ParsedComment(s); foreach (var commentLine in parsedComment) { #line default #line hidden this.Write(" // "); #line 50 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(commentLine)); #line default #line hidden this.Write("\r\n"); #line 51 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" /// <include file=\""); #line 52 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(XDocIncludePath)); #line default #line hidden this.Write("\" path=\'LibLlvmAPI/Struct[@name=\""); #line 52 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(s.Name)); #line default #line hidden this.Write("\"]/*[not(self::Field)]\' />\r\n"); #line 53 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var sa in s.Attributes) { #line default #line hidden this.Write(" "); #line 54 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(sa.AsString())); #line default #line hidden this.Write("\r\n"); #line 55 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" public struct "); #line 56 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(s.Name)); #line default #line hidden this.Write("\r\n {\r\n"); #line 58 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var fld in s.Fields) { #line default #line hidden this.Write(" /// <include file=\""); #line 59 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(XDocIncludePath)); #line default #line hidden this.Write("\" path=\'LibLlvmAPI/struct[@name=\""); #line 59 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(s.Name)); #line default #line hidden this.Write("\"]/Field[@name=\""); #line 59 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(fld.Name)); #line default #line hidden this.Write("\"]/*\' />\r\n"); #line 60 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var fa in fld.Attributes) { #line default #line hidden this.Write(" "); #line 61 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(fa.AsString())); #line default #line hidden this.Write("\r\n"); #line 62 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" public "); #line 63 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(fld.Type)); #line default #line hidden this.Write(" "); #line 63 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(fld.Name)); #line default #line hidden this.Write(";\r\n"); #line 64 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" }\r\n\r\n"); #line 67 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" public static partial class NativeMethods\r\n {\r\n"); #line 70 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var f in Functions) { #line default #line hidden this.Write(" /// <include file=\""); #line 71 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(XDocIncludePath)); #line default #line hidden this.Write("\" path=\'LibLlvmAPI/Function[@name=\""); #line 71 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(f.Name)); #line default #line hidden this.Write("\"]/*\' />\r\n"); #line 72 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" foreach (var a in f.Attributes) { #line default #line hidden this.Write(" "); #line 73 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(a.AsString())); #line default #line hidden this.Write("\r\n"); #line 74 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" "); #line 75 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" this.Write(this.ToStringHelper.ToStringWithCulture(f)); #line default #line hidden this.Write("\r\n"); #line 76 "D:\GitHub\Ubiquity.NET\Llvm.Net\src\Interop\LlvmBindingsGenerator\Templates\T4\PerHeaderInteropTemplate.tt" } #line default #line hidden this.Write(" }\r\n}\r\n"); return(this.GenerationEnvironment.ToString()); }