mirror of
https://gitlab.com/cppit/libclangmm.git
synced 2026-11-10 14:33:13 +01:00
No description
- C++ 89.1%
- CMake 10.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| cmake_modules | ||
| docs | ||
| src | ||
| tests | ||
| .appveyor.sh | ||
| .appveyor.yml | ||
| .clang-format | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| CMakeLists.txt | ||
| LICENSE | ||
| README.md | ||
libclangmm
an easy-to-use C++ wrapper for libclang
About
Provides C++ bindings and class structure to the libclang C library.
Developed for juCi++, a lightweight, platform-independent C++ IDE.
Dependencies
- libclang
Installation
Tests
To run the unit tests:
mkdir build && cd build
cmake -DBUILD_TESTING=1 ..
make
make test
Coding style
Due to poor lambda support in clang-format, a custom clang-format is used with the following patch applied:
diff --git a/lib/Format/ContinuationIndenter.cpp b/lib/Format/ContinuationIndenter.cpp
index bb8efd61a3..e80a487055 100644
--- a/lib/Format/ContinuationIndenter.cpp
+++ b/lib/Format/ContinuationIndenter.cpp
@@ -276,6 +276,8 @@ LineState ContinuationIndenter::getInitialState(unsigned FirstIndent,
}
bool ContinuationIndenter::canBreak(const LineState &State) {
+ if(Style.ColumnLimit==0)
+ return true;
const FormatToken &Current = *State.NextToken;
const FormatToken &Previous = *Current.Previous;
assert(&Previous == Current.Previous);
@@ -325,6 +327,8 @@ bool ContinuationIndenter::canBreak(const LineState &State) {
}
bool ContinuationIndenter::mustBreak(const LineState &State) {
+ if(Style.ColumnLimit==0)
+ return false;
const FormatToken &Current = *State.NextToken;
const FormatToken &Previous = *Current.Previous;
if (Current.MustBreakBefore || Current.is(TT_InlineASMColon))