Files
lix/src/libutil/shlex.hh
T
Jade Lovelace c58e3f826e pragma once and ///@file everything missing it
Change-Id: Ia1a72348336794b5fb9f2694dd750266089b904e
2024-04-08 15:40:12 -07:00

32 lines
558 B
C++

#pragma once
///@file
#include <regex>
#include <string>
#include <vector>
#include "error.hh"
namespace nix {
class ShlexError : public Error
{
public:
const std::string input;
ShlexError(const std::string input)
: Error("Failed to parse shell arguments (unterminated quote?): %1%", input)
, input(input)
{
}
};
/**
* Parse a string into shell arguments.
*
* Takes care of whitespace, quotes, and backslashes (at least a bit).
*/
std::vector<std::string> shell_split(const std::string & input);
} // namespace nix