CompilerParameters.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. //
  2. // System.CodeDom.Compiler.CompilerParameters.cs
  3. //
  4. // Authors:
  5. // Daniel Stodden ([email protected])
  6. // Andreas Nahr ([email protected])
  7. //
  8. // (C) 2002 Ximian, Inc.
  9. //
  10. using System.Collections.Specialized;
  11. using System.Security.Policy;
  12. using System.Runtime.InteropServices;
  13. namespace System.CodeDom.Compiler
  14. {
  15. [ComVisible (false)]
  16. public class CompilerParameters
  17. {
  18. private string compilerOptions;
  19. #if (NET_1_1)
  20. private Evidence evidence;
  21. #endif
  22. private bool generateExecutable = false;
  23. private bool generateInMemory = false;
  24. private bool includeDebugInformation = false;
  25. private string mainClass;
  26. private string outputAssembly;
  27. private StringCollection referencedAssemblies;
  28. private TempFileCollection tempFiles;
  29. private bool treatWarningsAsErrors = false;
  30. private IntPtr userToken = IntPtr.Zero;
  31. private int warningLevel = -1;
  32. private string win32Resource;
  33. //
  34. // Constructors
  35. //
  36. public CompilerParameters()
  37. {
  38. }
  39. public CompilerParameters (string[] assemblyNames)
  40. {
  41. referencedAssemblies = new StringCollection();
  42. referencedAssemblies.AddRange (assemblyNames);
  43. }
  44. public CompilerParameters (string[] assemblyNames, string output)
  45. {
  46. referencedAssemblies = new StringCollection();
  47. referencedAssemblies.AddRange (assemblyNames);
  48. outputAssembly = output;
  49. }
  50. public CompilerParameters (string[] assemblyNames, string output, bool includeDebugInfo)
  51. {
  52. referencedAssemblies = new StringCollection();
  53. referencedAssemblies.AddRange (assemblyNames);
  54. outputAssembly = output;
  55. includeDebugInformation = includeDebugInfo;
  56. }
  57. //
  58. // Properties
  59. //
  60. public string CompilerOptions {
  61. get {
  62. return compilerOptions;
  63. }
  64. set {
  65. compilerOptions = value;
  66. }
  67. }
  68. #if (NET_1_1)
  69. public Evidence Evidence {
  70. get {
  71. return evidence;
  72. }
  73. set {
  74. evidence = value;
  75. }
  76. }
  77. #endif
  78. public bool GenerateExecutable {
  79. get {
  80. return generateExecutable;
  81. }
  82. set {
  83. generateExecutable = value;
  84. }
  85. }
  86. public bool GenerateInMemory {
  87. get {
  88. return generateInMemory;
  89. }
  90. set {
  91. generateInMemory = value;
  92. }
  93. }
  94. public bool IncludeDebugInformation {
  95. get {
  96. return includeDebugInformation;
  97. }
  98. set {
  99. includeDebugInformation = value;
  100. }
  101. }
  102. public string MainClass {
  103. get {
  104. return mainClass;
  105. }
  106. set {
  107. mainClass = value;
  108. }
  109. }
  110. public string OutputAssembly {
  111. get {
  112. return outputAssembly;
  113. }
  114. set {
  115. outputAssembly = value;
  116. }
  117. }
  118. public StringCollection ReferencedAssemblies {
  119. get {
  120. if (referencedAssemblies == null)
  121. referencedAssemblies = new StringCollection ();
  122. return referencedAssemblies;
  123. }
  124. }
  125. public TempFileCollection TempFiles {
  126. get {
  127. if (tempFiles == null)
  128. tempFiles = new TempFileCollection ();
  129. return tempFiles;
  130. }
  131. set {
  132. tempFiles = value;
  133. }
  134. }
  135. public bool TreatWarningsAsErrors {
  136. get {
  137. return treatWarningsAsErrors;
  138. }
  139. set {
  140. treatWarningsAsErrors = value;
  141. }
  142. }
  143. public IntPtr UserToken {
  144. get {
  145. return userToken;
  146. }
  147. set {
  148. userToken = value;
  149. }
  150. }
  151. public int WarningLevel {
  152. get {
  153. return warningLevel;
  154. }
  155. set {
  156. warningLevel = value;
  157. }
  158. }
  159. public string Win32Resource {
  160. get {
  161. return win32Resource;
  162. }
  163. set {
  164. win32Resource = value;
  165. }
  166. }
  167. }
  168. }