IronRuby.Builtins.RegexpTransformer.ParsePosixCharacterClass C# (CSharp) Method

ParsePosixCharacterClass() private method

private ParsePosixCharacterClass ( bool positive ) : CharacterSet
positive bool
return CharacterSet
        private CharacterSet ParsePosixCharacterClass(bool positive) {
            int i = 0;
            if (Peek(i) == ':') {
                i++;
            } else {
                return null;
            }

            int start = _index + i;

            int c;
            while ((c = Peek(i)) != ':' && c != -1) {
                i++;
            }

            if (c == -1 || Peek(i + 1) != ']') {
                return null;
            }

            string name = _rubyPattern.Substring(start, _index + i - start);
            _index += i + 2;

            return MakePosixCharacterClass(ParsePosixClass(name), positive);
        }