Added "FooDoc(string name)" constructors in all relevant places.
[mono.git] / mcs / doctools / src / Core / AbstractClassStructDoc.cs
1 // AbstractClassStructDoc.cs\r
2 // John Barnette (jbarn@httcb.net)\r
3 // \r
4 // Copyright (c) 2002 John Barnette\r
5 //\r
6 // This file is part of Monodoc, a multilingual API documentation tool.\r
7 //\r
8 // Monodoc is free software; you can redistribute it and/or modify\r
9 // it under the terms of the GNU General Public License as published by\r
10 // the Free Software Foundation; either version 2 of the License, or\r
11 // (at your option) any later version.\r
12 // \r
13 // Monodoc is distributed in the hope that it will be useful,\r
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of\r
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
16 // GNU General Public License for more details.\r
17 // \r
18 // You should have received a copy of the GNU General Public License\r
19 // along with Monodoc; if not, write to the Free Software\r
20 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
21 \r
22 using System;\r
23 \r
24 namespace Mono.Doc.Core\r
25 {\r
26         public abstract class AbstractClassStructDoc : AbstractTypeDoc\r
27         {\r
28                 // constructor | event | field | method | operator | property\r
29                 protected ValueConstrainedArrayList constructors;\r
30                 protected ValueConstrainedArrayList       events;\r
31                 protected ValueConstrainedArrayList       fields;\r
32                 protected ValueConstrainedArrayList      methods;\r
33                 protected ValueConstrainedArrayList    operators;\r
34                 protected ValueConstrainedArrayList    properties;\r
35 \r
36                 // nested items\r
37                 protected ValueConstrainedArrayList       classes;\r
38                 protected ValueConstrainedArrayList    delegates;\r
39                 protected ValueConstrainedArrayList        enums;\r
40                 protected ValueConstrainedArrayList   interfaces;\r
41                 protected ValueConstrainedArrayList      structs;\r
42 \r
43                 public AbstractClassStructDoc(string name) : base(name)\r
44                 {\r
45                         this.constructors = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.ConstructorDoc", true));\r
46                         this.events       = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.EventDoc", true));\r
47                         this.fields       = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.FieldDoc", true));\r
48                         this.methods      = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.MethodDoc", true));\r
49                         this.operators    = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.OperatorDoc", true));\r
50                         this.properties   = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.PropertyDoc", true));\r
51                         this.classes      = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.ClassDoc", true));\r
52                         this.enums        = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.EnumDoc", true));\r
53                         this.interfaces   = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.InterfaceDoc", true));\r
54                         this.structs      = new ValueConstrainedArrayList(Type.GetType("Mono.Doc.Core.StructDoc", true));\r
55                 }\r
56 \r
57                 public AbstractClassStructDoc() : this(string.Empty)\r
58                 {\r
59                 }\r
60 \r
61                 public ValueConstrainedArrayList Constructors\r
62                 {\r
63                         get { return this.constructors;  }\r
64                 }\r
65 \r
66                 public ValueConstrainedArrayList Events\r
67                 {\r
68                         get { return this.events;  }\r
69                 }\r
70 \r
71                 public ValueConstrainedArrayList Fields\r
72                 {\r
73                         get { return this.fields;  }\r
74                 }\r
75 \r
76                 public ValueConstrainedArrayList Methods\r
77                 {\r
78                         get { return this.methods;  }\r
79                 }\r
80 \r
81                 public ValueConstrainedArrayList Operators\r
82                 {\r
83                         get { return this.operators;  }\r
84                 }\r
85 \r
86                 public ValueConstrainedArrayList Properties\r
87                 {\r
88                         get { return this.properties;  }\r
89                 }\r
90 \r
91                 public ValueConstrainedArrayList NestedClasses\r
92                 {\r
93                         get { return this.classes;  }\r
94                 }\r
95 \r
96                 public ValueConstrainedArrayList NestedDelegates\r
97                 {\r
98                         get { return this.delegates;  }\r
99                 }\r
100 \r
101                 public ValueConstrainedArrayList NestedEnums\r
102                 {\r
103                         get { return this.enums;  }\r
104                 }\r
105 \r
106                 public ValueConstrainedArrayList NestedInterfaces\r
107                 {\r
108                         get { return this.interfaces;  }\r
109                 }\r
110 \r
111                 public ValueConstrainedArrayList NestedStructs\r
112                 {\r
113                         get { return this.structs;  }\r
114                 }\r
115         }\r
116 }\r