#include "lldb/Bindings/LLDBBinding.h"
#include "lldb/API/LLDB.h"
using namespace lldb;
#ifdef __cplusplus
extern "C" {
#endif
SBStringListRef
CreateSBStringList()
{
return reinterpret_cast<SBStringListRef>(new SBStringList());
}
void
DisposeSBStringList(SBStringListRef instance)
{
delete reinterpret_cast<SBStringList *>(instance);
}
bool
SBStringListIsValid(SBStringListRef instance)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
return unwrapped->IsValid();
}
void
SBStringListAppendString(SBStringListRef instance, const char *str)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
unwrapped->AppendString(str);
}
void
SBStringListAppendList(SBStringListRef instance, const char **strv, int strc)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
unwrapped->AppendList(strv, strc);
}
void
SBStringListAppendList2(SBStringListRef instance, SBStringListRef strings)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
unwrapped->AppendList(*reinterpret_cast<SBStringList *>(strings));
}
unsigned int
SBStringListGetSize(SBStringListRef instance)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
return unwrapped->GetSize();
}
const char *
SBStringListGetStringAtIndex(SBStringListRef instance, size_t idx)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
return unwrapped->GetStringAtIndex(idx);
}
void
SBStringListClear(SBStringListRef instance)
{
SBStringList *unwrapped = reinterpret_cast<SBStringList *>(instance);
unwrapped->Clear();
}
#ifdef __cplusplus
}
#endif