void testCharCatDigits() { assert(charCat('0') == DIGIT); assert(charCat('1') == DIGIT); assert(charCat('2') == DIGIT); assert(charCat('3') == DIGIT); assert(charCat('4') == DIGIT); assert(charCat('5') == DIGIT); assert(charCat('6') == DIGIT); assert(charCat('7') == DIGIT); assert(charCat('8') == DIGIT); assert(charCat('9') == DIGIT); }
bool Parser::lexNCName(String& name) { int startPos = m_nextPos; if (m_nextPos >= m_data.length()) return false; if (charCat(m_data[m_nextPos]) != NameStart) return false; // Keep going until we get a character that's not good for names. for (; m_nextPos < m_data.length(); ++m_nextPos) if (charCat(m_data[m_nextPos]) == NotPartOfName) break; name = m_data.substring(startPos, m_nextPos - startPos); return true; }
void testCharCatLetters() { assert(charCat('A') == LETTER); assert(charCat('Z') == LETTER); assert(charCat('a') == LETTER); assert(charCat('z') == LETTER); }
void testCharCatWhitespace() { assert(charCat(' ') == WHITESPACE); assert(charCat('\n') == WHITESPACE); assert(charCat('\t') == WHITESPACE); }
void testCharCatPunctuation() { assert(charCat('.') == PUNCT); assert(charCat('!') == PUNCT); assert(charCat('?') == PUNCT); }