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.
 
 

25 lines
627 B

#ifndef SOURCELOCATION_H_
#define SOURCELOCATION_H_
#include <clang-c/Index.h>
#include <string>
namespace clang {
class SourceLocation {
friend class TranslationUnit;
SourceLocation(CXTranslationUnit &tu, const std::string &filepath, unsigned offset);
public:
SourceLocation(const CXSourceLocation& cx_location) : cx_location(cx_location) {}
public:
std::string get_path();
unsigned get_offset();
CXSourceLocation cx_location;
private:
void get_data(std::string *path, unsigned *line, unsigned *column, unsigned *offset);
};
} // namespace clang
#endif // SOURCELOCATION_H_