Skip to content

Instantly share code, notes, and snippets.

@Interfere
Created March 22, 2017 08:45
Show Gist options
  • Save Interfere/6c42d1969aa71bfa2049458981fb152c to your computer and use it in GitHub Desktop.
Save Interfere/6c42d1969aa71bfa2049458981fb152c to your computer and use it in GitHub Desktop.
lexIdentifier
/// lexIdentifier - Match [a-zA-Z_][a-zA-Z_$0-9]*
void Lexer::lexIdentifier() {
const char *TokStart = CurPtr-1;
CurPtr = TokStart;
advanceIfValidStartOfIdentifier(CurPtr, BufferEnd);
// Lex [a-zA-Z_$0-9[[:XID_Continue:]]]*
while (advanceIfValidContinuationOfIdentifier(CurPtr, BufferEnd));
tok Kind = kindOfIdentifier(StringRef(TokStart, CurPtr-TokStart));
return formToken(Kind, TokStart);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment