@@ -77,10 +77,18 @@ public virtual List<GeneratorOutput> Generate()
77
77
78
78
if ( Context . Options . IsCSharpGenerator &&
79
79
Context . Options . GenerateSingleCSharpFile )
80
- GenerateSingleTemplate ( outputs ) ;
80
+ {
81
+ foreach ( var module in Context . Options . Modules )
82
+ GenerateModuleTemplate ( module ) ;
83
+ }
81
84
else
85
+ {
82
86
GenerateTemplates ( outputs , units . Where ( u => ! u . IsSystemHeader ) ) ;
83
87
88
+ if ( Context . Options . SystemModule != null )
89
+ outputs . Add ( GenerateModuleTemplate ( Context . Options . SystemModule ) ) ;
90
+ }
91
+
84
92
return outputs ;
85
93
}
86
94
@@ -109,24 +117,22 @@ private void GenerateTemplates(List<GeneratorOutput> outputs, IEnumerable<Transl
109
117
}
110
118
}
111
119
112
- private void GenerateSingleTemplate ( ICollection < GeneratorOutput > outputs )
120
+ private GeneratorOutput GenerateModuleTemplate ( Module module )
113
121
{
114
- foreach ( var module in Context . Options . Modules )
122
+ var output = new GeneratorOutput
115
123
{
116
- var output = new GeneratorOutput
124
+ TranslationUnit = new TranslationUnit
117
125
{
118
- TranslationUnit = new TranslationUnit
119
- {
120
- FilePath = $ "{ module . LibraryName } .cs",
121
- Module = module
122
- } ,
123
- Outputs = Generate ( module . Units . GetGenerated ( ) )
124
- } ;
125
- output . Outputs [ 0 ] . Process ( ) ;
126
- outputs . Add ( output ) ;
126
+ FilePath = $ "{ module . LibraryName } .cs",
127
+ Module = module
128
+ } ,
129
+ Outputs = Generate ( module . Units . GetGenerated ( ) )
130
+ } ;
131
+ output . Outputs [ 0 ] . Process ( ) ;
127
132
128
- OnUnitGenerated ( output ) ;
129
- }
133
+ OnUnitGenerated ( output ) ;
134
+
135
+ return output ;
130
136
}
131
137
132
138
/// <summary>
0 commit comments