docs: @SafeVarargs
  	public static boolean getContainerOfType(EObject element,
  			OutParameter<EObject> container, OutParameter<EObject> directContainerChild,
  			Class<? extends EObject>... types) {
  		EObject previous = element;
  		EObject elt = element.eContainer();
  		while (elt != null) {
  			if (isInstance(types, elt)) {
  				if (directContainerChild != null) {
  					directContainerChild.set(previous);
  				}
  				if (container != null) {
  					container.set(elt);
  				}
  				return true;
  			}
  			previous = elt;
  			elt = elt.eContainer();
  		}
  		return false;
  	}