You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
715 B

11 years ago
#ifndef TOKENS_H_
#define TOKENS_H_
#include <clang-c/Index.h>
11 years ago
#include "SourceRange.h"
#include "Token.h"
#include <unordered_map>
#include <vector>
11 years ago
namespace clang {
class Tokens : public std::vector<clang::Token> {
11 years ago
friend class TranslationUnit;
friend class Diagnostic;
11 years ago
Tokens(CXTranslationUnit &cx_tu, const SourceRange &range);
11 years ago
public:
11 years ago
~Tokens();
std::vector<std::pair<unsigned, unsigned> > get_similar_token_offsets(clang::Token& token);
std::vector<std::pair<std::string, unsigned> > get_cxx_methods();
11 years ago
private:
CXToken *cx_tokens;
unsigned num_tokens;
std::vector<CXCursor> cx_cursors;
CXTranslationUnit& cx_tu;
11 years ago
};
} // namespace clang
#endif // TOKENS_H_