/// <summary> /// 現在の根要素と子要素を検証します。 /// </summary> /// <param name="onError">検証に失敗した時に呼び出されます。</param> /// <returns> /// 現在の根要素が有効な<see cref="Exrecodel"/>要素である場合は<see langword="true"/>、それ以外の場合は<see langword="false"/>です。 /// </returns> public sealed override bool Validate(XrcdlNodeValidationError onError) { bool result = this.PreValidate(onError); int count = this.Children.Count; for (int i = 0; i < count; ++i) { result &= this.Children[i].Validate(onError); } return(result & this.PostValidate(onError)); }
/// <summary> /// 要素の検証の終了時に呼び出されます。 /// </summary> /// <param name="onError">検証に失敗した時に呼び出されます。</param> /// <returns> /// 現在の根要素が有効な<see cref="Exrecodel"/>要素である場合は<see langword="true"/>、それ以外の場合は<see langword="false"/>です。 /// </returns> protected virtual bool PostValidate(XrcdlNodeValidationError onError) { return(true); }
/// <summary> /// 現在の要素と子要素を検証します。 /// </summary> /// <param name="onError">検証に失敗した時に呼び出されます。</param> /// <returns> /// 現在の要素が有効な<see cref="Exrecodel"/>要素である場合は<see langword="true"/>、それ以外の場合は<see langword="false"/>です。 /// </returns> public abstract bool Validate(XrcdlNodeValidationError onError);