/// <summary> /// Queries a VisualElement for a descendant that matches some criteria. Same as VisualElement.SafeQ(), /// but throws when no element is found or <paramref name="e"/> is null. /// </summary> /// <param name="e">The VisualElement to search.</param> /// <param name="name">The name of the descendant to find. Null if this criterion should be ignored.</param> /// <param name="className">The USS class name of the descendant to find. Null if this criterion should be ignored.</param> /// <returns>The VisualElement that matches the search criteria.</returns> /// <exception cref="ArgumentNullException">If <paramref name="e"/> is null.</exception> /// <exception cref="Exception">If no element is found.</exception> public static VisualElement MandatoryQ(this VisualElement e, string name = null, string className = null) { if (e == null) { throw new ArgumentNullException(nameof(e)); } return(GraphViewStaticBridge.MandatoryQ(e, name, className)); }