Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- std::vector<std::wstring> RecursiveParseNameOrQualifiedName(Iterator& begin, Iterator end) {
- std::vector<std::wstring> retval;
- retval.push_back(begin->Codepoints);
- CheckedIncrement(begin, end); // The only place that can legitimately expect end of input is namespace contents.
- while(begin->type == Wide::Lexer::TokenType::Dot) {
- CheckedIncrement(begin, end);
- if (begin->type != Wide::Lexer::TokenType::Identifier)
- Wide::ParserExceptionBuilder(*begin) << L"Expected 'identifier' after '.'";
- retval.push_back(begin->Codepoints);
- CheckedIncrement(begin, end);
- }
- return retval;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement