CodeObjectCreateExpression.cs 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. //
  2. // System.CodeDom CodeObjectCreateExpression Class implementation
  3. //
  4. // Author:
  5. // Miguel de Icaza ([email protected])
  6. // Daniel Stodden ([email protected])
  7. //
  8. // (C) 2001 Ximian, Inc.
  9. //
  10. using System.Runtime.InteropServices;
  11. namespace System.CodeDom
  12. {
  13. [Serializable]
  14. [ClassInterface(ClassInterfaceType.AutoDispatch)]
  15. [ComVisible(true)]
  16. public class CodeObjectCreateExpression
  17. : CodeExpression
  18. {
  19. private CodeTypeReference createType;
  20. private CodeExpressionCollection parameters;
  21. //
  22. // Constructors
  23. //
  24. public CodeObjectCreateExpression ()
  25. {
  26. }
  27. public CodeObjectCreateExpression (CodeTypeReference createType,
  28. params CodeExpression [] parameters)
  29. {
  30. this.createType = createType;
  31. this.Parameters.AddRange( parameters );
  32. }
  33. public CodeObjectCreateExpression (string createType,
  34. params CodeExpression [] parameters)
  35. {
  36. this.createType = new CodeTypeReference( createType );
  37. this.Parameters.AddRange( parameters );
  38. }
  39. public CodeObjectCreateExpression (Type createType,
  40. params CodeExpression [] parameters)
  41. {
  42. this.createType = new CodeTypeReference( createType );
  43. this.Parameters.AddRange( parameters );
  44. }
  45. //
  46. // Properties
  47. //
  48. public CodeTypeReference CreateType {
  49. get {
  50. return createType;
  51. }
  52. set {
  53. createType = value;
  54. }
  55. }
  56. public CodeExpressionCollection Parameters {
  57. get {
  58. if ( parameters == null )
  59. parameters = new CodeExpressionCollection();
  60. return parameters;
  61. }
  62. }
  63. }
  64. }