blob: 5af2316b6b168b60663be32b766a19bc08dda4ac [file] [log] [blame]
/* -*- Mode: C++; tab-width: 8; c-basic-offset: 2; indent-tabs-mode: nil; -*- */
#ifndef RR_STRING_VECTOR_TO_CHAR_ARRAY_H_
#define RR_STRING_VECTOR_TO_CHAR_ARRAY_H_
#include <string>
#include <vector>
namespace rr {
/**
* Converts a vector of strings to a POSIX-style array of char*s terminated
* by a nullptr.
*/
class StringVectorToCharArray {
public:
StringVectorToCharArray(const std::vector<std::string>& vs) {
for (auto& v : vs) {
array.push_back(const_cast<char*>(v.c_str()));
}
array.push_back(nullptr);
}
char** get() { return array.data(); }
private:
std::vector<char*> array;
};
} // namespace rr
#endif