/// <summary>
 /// Excludes the <paramref name="methodName"/> from checks for <see cref="ArgumentNullException"/>.
 /// </summary>
 /// <param name="filter">The <see cref="Regex"/> filter.</param>
 /// <param name="methodName">The method name.</param>
 /// <param name="typeFullName">The <see cref="Type.FullName"/> of the <see cref="Type"/>.</param>
 /// <returns>The <paramref name="filter"/>.</returns>
 /// <exception cref="ArgumentNullException">The <paramref name="filter"/> or <paramref name="methodName"/>
 /// parameters are <see langword="null"/>.</exception>
 public static IRegexFilter ExcludeMethod(
     this IRegexFilter filter,
     string methodName,
     string typeFullName = null)
 {
     return(filter.AddMethodRule(methodName, include: false, typeFullName: typeFullName));
 }
        /// <summary>
        /// Includes the <paramref name="methodName"/> for checks for <see cref="ArgumentNullException"/>. Overrides any
        /// method rules that may exclude the <paramref name="methodName"/>.
        /// </summary>
        /// <param name="filter">The <see cref="Regex"/> filter.</param>
        /// <param name="methodName">The method name.</param>
        /// <param name="typeFullName">The type.</param>
        /// <returns>The <paramref name="filter"/>.</returns>
        /// <exception cref="ArgumentNullException">The <paramref name="filter"/> or <paramref name="methodName"/>
        /// parameters are <see langword="null"/>.</exception>
        public static IRegexFilter IncludeMethod(
            this IRegexFilter filter,
            string methodName,
            string typeFullName = null)
        {
            // If the type is specified ensure it is included otherwise the
            // method may never be included.
            if (!string.IsNullOrWhiteSpace(typeFullName))
            {
                filter.IncludeType(typeFullName);
            }

            return(filter.AddMethodRule(methodName, include: true, typeFullName: typeFullName));
        }