private static bool?GetBoolean(object obj)
 {
     if (obj is string str && StringBooleanDeterminer.Is(str))
     {
         return(StringBooleanDeterminer.To(str));
     }
     return(GlobalBooleanVerbaManager.Determining(obj.ToString()?.Trim().ToLower()));
 }
 /// <summary>
 /// To
 /// </summary>
 /// <param name="text"></param>
 /// <param name="defaultVal"></param>
 /// <returns></returns>
 public static bool To(
     string text,
     bool defaultVal = default)
 {
     if (string.IsNullOrWhiteSpace(text))
     {
         return(defaultVal);
     }
     return(bool.TryParse(text, out var boolean)
         ? boolean
         : GlobalBooleanVerbaManager.TryDetermining(text, out boolean)
             ? boolean
             : ValueConverter.ToXxxAgain(text, defaultVal));
 }
        /// <summary>
        /// Is
        /// </summary>
        /// <param name="text"></param>
        /// <param name="matchedCallback"></param>
        /// <returns></returns>
        public static bool Is(
            string text,
            Action <bool> matchedCallback = null)
        {
            if (string.IsNullOrWhiteSpace(text))
            {
                return(false);
            }

            return(bool.TryParse(text, out var boolean)
                   .Or(() => GlobalBooleanVerbaManager.MayBeDetermined(text))
                   .IfFalseThenInvoke(ValueDeterminer.IsXxxAgain <bool>, text)
                   .IfTrueThenInvoke(matchedCallback, boolean));
        }
Exemple #4
0
 private static bool?GetBoolean(object obj)
 {
     return(GlobalBooleanVerbaManager.Determining(obj.ToString().Trim().ToLower()));
 }