aboutsummaryrefslogtreecommitdiff
path: root/src/test/Example.Extension/ExampleExtensionFactory.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/Example.Extension/ExampleExtensionFactory.cs')
-rw-r--r--src/test/Example.Extension/ExampleExtensionFactory.cs11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/test/Example.Extension/ExampleExtensionFactory.cs b/src/test/Example.Extension/ExampleExtensionFactory.cs
index 9539ee85..b91d06e9 100644
--- a/src/test/Example.Extension/ExampleExtensionFactory.cs
+++ b/src/test/Example.Extension/ExampleExtensionFactory.cs
@@ -7,11 +7,18 @@ namespace Example.Extension
7 7
8 public class ExampleExtensionFactory : IExtensionFactory 8 public class ExampleExtensionFactory : IExtensionFactory
9 { 9 {
10 private ExamplePreprocessorExtensionAndCommandLine preprocessorExtension;
11
10 public bool TryCreateExtension(Type extensionType, out object extension) 12 public bool TryCreateExtension(Type extensionType, out object extension)
11 { 13 {
12 if (extensionType == typeof(IPreprocessorExtension)) 14 if (extensionType == typeof(IExtensionCommandLine) || extensionType == typeof(IPreprocessorExtension))
13 { 15 {
14 extension = new ExamplePreprocessorExtension(); 16 if (preprocessorExtension == null)
17 {
18 preprocessorExtension = new ExamplePreprocessorExtensionAndCommandLine();
19 }
20
21 extension = preprocessorExtension;
15 } 22 }
16 else if (extensionType == typeof(ICompilerExtension)) 23 else if (extensionType == typeof(ICompilerExtension))
17 { 24 {