// -*- c++ -*- // Distributed under the BSD 2-Clause License. // See accompanying file LICENSE for details. #include #include #include #include // Maintains an (owning) list of string args and converts them to argc/argv // compatible arguments on request. // The returned pointers are guaranteed to be valid as long as the PointerList // object lifetime is not exceeded. class PointerList : public std::deque { public: PointerList() = default; PointerList(int argc, const char* argv[]); //! Returns argc/argv pair from the current list of args std::pair get(); private: std::vector argptrs; };