diff options
author | dim <dim@FreeBSD.org> | 2015-12-30 11:49:41 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-12-30 11:49:41 +0000 |
commit | 3176e97f130184ece0e1a21352c8124cc83ff24a (patch) | |
tree | 0a5b74c0b9ca73aded34df95c91fcaf3815230d8 /tools/libclang/CXString.cpp | |
parent | 1e9b8d38881c3213d1e67b0c47ab9b2c00721a5c (diff) | |
download | FreeBSD-src-3176e97f130184ece0e1a21352c8124cc83ff24a.zip FreeBSD-src-3176e97f130184ece0e1a21352c8124cc83ff24a.tar.gz |
Vendor import of clang trunk r256633:
https://llvm.org/svn/llvm-project/cfe/trunk@256633
Diffstat (limited to 'tools/libclang/CXString.cpp')
-rw-r--r-- | tools/libclang/CXString.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/libclang/CXString.cpp b/tools/libclang/CXString.cpp index dec8ebc..1ccbed3 100644 --- a/tools/libclang/CXString.cpp +++ b/tools/libclang/CXString.cpp @@ -112,6 +112,15 @@ CXString createCXString(CXStringBuf *buf) { return Str; } +CXStringSet *createSet(const std::vector<std::string> &Strings) { + CXStringSet *Set = new CXStringSet; + Set->Count = Strings.size(); + Set->Strings = new CXString[Set->Count]; + for (unsigned SI = 0, SE = Set->Count; SI < SE; ++SI) + Set->Strings[SI] = createDup(Strings[SI]); + return Set; +} + //===----------------------------------------------------------------------===// // String pools. @@ -175,5 +184,13 @@ void clang_disposeString(CXString string) { break; } } + +void clang_disposeStringSet(CXStringSet *set) { + for (unsigned SI = 0, SE = set->Count; SI < SE; ++SI) + clang_disposeString(set->Strings[SI]); + delete[] set->Strings; + delete set; +} + } // end: extern "C" |