public String readNextIdentifier()
    {
        int i = idx;
        while (!isEOS() && isIdentifierChar(str.charAt(idx)))
            ++idx;

        return str.substring(i, idx);
    }
public String readNextIdentifier ( ) { int i = idx ; while ( ! isEOS ( ) && isIdentifierChar ( str . charAt ( idx ) ) ) ++ idx ; return str . substring ( i , idx ) ; }
left idx positioned on the character stopping the read