CodeGen
 All Classes Namespaces Files Functions Variables Properties Pages
Models.cs
Go to the documentation of this file.
1 using System.Xml.Serialization;
2 
3 namespace CodeGen.generators
4 {
8  [XmlRoot("Package")]
9  public class Package
10  {
14  [XmlElement("name")]
15  public string Name { get; set; }
16 
20  [XmlElement("use_spaces")]
21  public bool UseSpaces { get; set; }
22 
26  [XmlArray("classes")]
27  public Class[] Classes { get; set; }
28 
32  [XmlElement("packages")]
33  public Package[] Packages { get; set; }
34 
36  public override string ToString()
37  {
38  return base.ToString() + string.Format("{{ {0} {1} {2} }}", Name, Classes, Packages);
39  }
40  }
41 
47  [XmlRoot("class")]
48  public class Class
49  {
53  [XmlElement("name")]
54  public string Name { get; set; }
55 
59  [XmlElement("fields")]
60  public Field[] Fields { get; set; }
61 
65  [XmlElement("methods")]
66  public Method[] Methods { get; set; }
67 
71  [XmlElement("classes")]
72  public Class[] Classes { get; set; }
73 
77  [XmlElement("parent")]
78  public string Parent { get; set; }
79 
83  [XmlElement("access")]
84  public string Access { get; set; }
85 
87  public override string ToString()
88  {
89  return base.ToString() + string.Format("{{ {0} {1} {2} {3} {4} }}", Name, Parent, Fields, Methods, Classes);
90  }
91  }
92 
96  public class Variable
97  {
101  [XmlElement("name")]
102  public string Name { get; set; }
103 
107  [XmlElement("type")]
108  public string Type { get; set; }
109 
113  [XmlElement("default")]
114  public string Default { get; set; }
115  }
116 
121  public class Field : Variable
122  {
126  [XmlElement("access")]
127  public string Access { get; set; }
128 
132  [XmlElement("const")]
133  public bool Const { get; set; }
134 
138  [XmlElement("static")]
139  public bool Static { get; set; }
140 
144  [XmlElement("getter")]
145  public bool Getter { get; set; }
146 
150  [XmlElement("setter")]
151  public bool Setter { get; set; }
152  }
153 
158  public class Parameter : Variable
159  {
160  }
161 
166  public class Method
167  {
171  [XmlElement("name")]
172  public string Name { get; set; }
173 
177  [XmlElement("type")]
178  public string Type { get; set; }
179 
183  [XmlElement("access")]
184  public string Access { get; set; }
185 
189  [XmlElement("const")]
190  public bool Const { get; set; }
191 
195  [XmlElement("static")]
196  public bool Static { get; set; }
197 
201  [XmlElement("parameters")]
202  public Parameter[] Parameters { get; set; }
203  }
204 }
The structure that describes variable. Contains name, type and default value
Definition: Models.cs:96
The structure that describes class. Contains name, array of fields, methods and subclasses, parent class name, access specifier. Overrides ToString() method.
Definition: Models.cs:48
The structure that describes package. Contains classes and subpackages
Definition: Models.cs:9
override string ToString()
Definition: Models.cs:87
The structure that describes method. Contains name, return type, access level, const and static prope...
Definition: Models.cs:166
The structure that describes parameter. Inherits from Variable
Definition: Models.cs:158
override string ToString()
Definition: Models.cs:36
The structure that describes field. Contains access, const and static properties. Inherits from Varia...
Definition: Models.cs:121