docs: @Override
  	public void setExtends(JvmParameterizedTypeReference newExtends)
  	{
  		if (newExtends != extends_)
  		{
  			NotificationChain msgs = null;
  			if (extends_ != null)
  				msgs = ((InternalEObject)extends_).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SarlPackage.SARL_ARTIFACT__EXTENDS, null, msgs);
  			if (newExtends != null)
  				msgs = ((InternalEObject)newExtends).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SarlPackage.SARL_ARTIFACT__EXTENDS, null, msgs);
  			msgs = basicSetExtends(newExtends, msgs);
  			if (msgs != null) msgs.dispatch();
  		}
  		else if (eNotificationRequired())
  			eNotify(new ENotificationImpl(this, Notification.SET, SarlPackage.SARL_ARTIFACT__EXTENDS, newExtends, newExtends));
  	}