public EventOnTypeInstantiation(
     TypeInstantiation declaringType,
     EventInfo event_,
     MethodOnTypeInstantiation addMethod,
     MethodOnTypeInstantiation removeMethod,
     MethodOnTypeInstantiation raiseMethod)
     : base(declaringType, event_.Name, event_.Attributes, addMethod, removeMethod, raiseMethod)
 {
     _event = event_;
 }
 public PropertyOnTypeInstantiation(
     TypeInstantiation declaringType,
     PropertyInfo property,
     MethodOnTypeInstantiation getMethod,
     MethodOnTypeInstantiation setMethod)
     : base(declaringType, property.Name, property.Attributes, getMethod, setMethod)
 {
     _property        = property;
     _indexParameters = property.GetIndexParameters().Select(p => new MemberParameterOnInstantiation(this, p))
                        .Cast <ParameterInfo>().ToList().AsReadOnly();
 }