| 44 | }; |
| 45 | |
| 46 | CXSourceRange toCXRange(CXTranslationUnit unit, const DocumentRange& range) |
| 47 | { |
| 48 | auto file = clang_getFile(unit, QString::fromUtf8(range.document.c_str(), range.document.length()).toUtf8()); |
| 49 | auto begin = clang_getLocation(unit, file, range.start().line()+1, range.start().column()+1); |
| 50 | auto end = clang_getLocation(unit, file, range.end().line()+1, range.end().column()+1); |
| 51 | return clang_getRange(begin, end); |
| 52 | } |
| 53 | |
| 54 | struct DisposeTranslationUnit { |
| 55 | void operator()(CXTranslationUnit unit) { clang_disposeTranslationUnit(unit); } |