Evaluate(
            IBooleanCommandLineArgument realArg)
        {
            foreach (var arg in Arguments)
            {
                var splitArg = arg.Split('=');
                if (splitArg.Length != 1)
                {
                    continue;
                }

                if (UsesName(realArg, splitArg))
                {
                    return true;
                }
            }
            return (realArg is ICommandLineArgumentDefault<bool>) ? (realArg as ICommandLineArgumentDefault<bool>).Default : false;
        }
        Evaluate(
            IBooleanCommandLineArgument realArg)
        {
            foreach (var arg in Arguments)
            {
                var splitArg = arg.Split('=');
                if (splitArg.Length != 1)
                {
                    continue;
                }

                if (UsesName(realArg, splitArg))
                {
                    return(true);
                }
            }
            return((realArg is ICommandLineArgumentDefault <bool>) ? (realArg as ICommandLineArgumentDefault <bool>).Default : false);
        }