No.PasswordGenerator.GetRangeFromCharacters C# (CSharp) Method

GetRangeFromCharacters() private method

private GetRangeFromCharacters ( Characters range ) : string
range Characters
return string
        private string GetRangeFromCharacters(Characters range)
        {
            if (range == _previousRange)
                return _rangeCache;

            StringBuilder sb = new StringBuilder();

            if (range.HasFlag(Characters.Letters))
                sb.Append("abcdefghijklmnopqrstuvwxyz");

            if (range.HasFlag(Characters.LettersUppercase))
                sb.Append("ABCDEFGHIJKLMNOPQRSTUVWXYZ");

            if (range.HasFlag(Characters.Numbers))
                sb.Append("0123456789");

            if (range.HasFlag(Characters.SymbolsBasic))
                sb.Append("!-_.+");

            if (range.HasFlag(Characters.SymbolsAdvanced))
                sb.Append("'^%&/()=?~;,{[]}");

            string ret = sb.ToString();

            _previousRange = range;
            _rangeCache = ret;

            return ret;
        }