private void GenerateThisParameter(Class newClass)
{
Class thisFieldClass = (Class)Templates.GetTypeTemplateByName("ThisField");
Field thisField = (Field)thisFieldClass.Members[0];
thisField.DeclaringType = newClass;
newClass.Members.Add(thisField);
Identifier thisAccessor = new Identifier("This");
Property accessor =
GetThisAccessorProperty(thisField.Type, thisAccessor, thisField.Name);
newClass.Members.Add(accessor);
accessor.DeclaringType = newClass;
if (accessor.Getter != null)
{
newClass.Members.Add(accessor.Getter);
accessor.Getter.DeclaringType = newClass;
}
if (accessor.Setter != null)
{
newClass.Members.Add(accessor.Setter);
accessor.Setter.DeclaringType = newClass;
}
}