internal void SetSuperClass(DynamicClass superclass)
 {
     this.superclass = superclass;
 }
 public DynamicClass(DynamicClass @class, string name, DynamicClass superclass = null, DynamicClass parent = null)
     : base(@class)
 {
     this.name       = name;
     this.superclass = superclass;
     this.parent     = parent;
 }
 internal void SetClass(DynamicClass @class)
 {
     this.@class = @class;
 }
 public DynamicClass(string name, DynamicClass superclass = null)
     : this(null, name, superclass)
 {
 }
 public DynamicObject(DynamicClass @class)
 {
     this.@class = @class;
 }