| //===--- TokenKinds.cpp - Token Kinds Support -----------------------------===// | 
 | // | 
 | //                     The LLVM Compiler Infrastructure | 
 | // | 
 | // This file was developed by Chris Lattner and is distributed under | 
 | // the University of Illinois Open Source License. See LICENSE.TXT for details. | 
 | // | 
 | //===----------------------------------------------------------------------===// | 
 | // | 
 | //  This file implements the TokenKind enum and support functions. | 
 | // | 
 | //===----------------------------------------------------------------------===// | 
 |  | 
 | #include "clang/Basic/TokenKinds.h" | 
 |  | 
 | #include <cassert> | 
 | using namespace clang; | 
 |  | 
 | static const char * const TokNames[] = { | 
 | #define TOK(X) #X, | 
 | #define KEYWORD(X,Y) #X, | 
 | #include "clang/Basic/TokenKinds.def" | 
 |   0 | 
 | }; | 
 |  | 
 | const char *tok::getTokenName(enum TokenKind Kind) { | 
 |   assert(Kind < tok::NUM_TOKENS); | 
 |   return TokNames[Kind]; | 
 | } |