46 MIKTEXCOREEXPORT MIKTEXTHISCALL Argv();
49 Argv(
const Argv& other) =
delete;
52 Argv& operator=(
const Argv& other) =
delete;
55 MIKTEXCOREEXPORT MIKTEXTHISCALL Argv(Argv&& other);
58 Argv& operator=(Argv&& other) =
delete;
61 virtual MIKTEXCOREEXPORT MIKTEXTHISCALL ~Argv()
noexcept;
64 explicit MIKTEXCOREEXPORT MIKTEXTHISCALL Argv(
const std::string& commandLine);
67 explicit MIKTEXCOREEXPORT MIKTEXTHISCALL Argv(
const std::vector<std::string>& arguments);
70 MIKTEXCORETHISAPI(
void) Append(
const std::string& arguments);
73 MIKTEXCORETHISAPI(
const char*
const*) GetArgv()
const;
76 MIKTEXCORETHISAPI(
int) GetArgc()
const;
79 MIKTEXCORETHISAPI(
const char*) operator[](std::size_t idx)
const;
82 MIKTEXCORETHISAPI(std::vector<std::string>) ToStringVector()
const;
85 MIKTEXCORETHISAPI(
char**) CloneFreeable()
const;
89 std::unique_ptr<impl> pimpl;
110class CommandLineBuilder
113 MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder();
116 MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder(
const CommandLineBuilder& other);
119 MIKTEXCORETHISAPI(CommandLineBuilder&) operator=(
const CommandLineBuilder& other);
122 CommandLineBuilder(CommandLineBuilder&& other) =
delete;
125 CommandLineBuilder& operator=(CommandLineBuilder&& other) =
delete;
128 virtual MIKTEXCOREEXPORT MIKTEXTHISCALL ~CommandLineBuilder()
noexcept;
131 explicit MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder(
const std::string& argument);
134 MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder(
const std::string& argument1,
const std::string& argument2);
137 MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder(
const std::string& argument1,
const std::string& argument2,
const std::string& argument3);
140 explicit MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder(
const std::vector<std::string>& arguments);
143 MIKTEXCOREEXPORT MIKTEXTHISCALL CommandLineBuilder(
int argc,
const char*
const* argv);
146 MIKTEXCORETHISAPI(
void) SetOptionConvention(
OptionConvention optionConvention);
149 MIKTEXCORETHISAPI(
void) SetQuotingConvention(
QuotingConvention quotingConvention);
152 MIKTEXCORETHISAPI(
void) Clear();
155 MIKTEXCORETHISAPI(
void) AppendArgument(
const std::string& argument);
160 AppendArgument(argument.
ToString());
164 void AppendArgument(
const char* argument)
166 MIKTEX_ASSERT_STRING(argument);
167 AppendArgument(std::string(argument));
171 MIKTEXCORETHISAPI(
void) AppendUnquoted(
const std::string& text);
174 MIKTEXCORETHISAPI(
void) AppendArguments(
int argc,
const char*
const* argv);
177 MIKTEXCORETHISAPI(
void) AppendArguments(
const std::vector<std::string>& argv);
180 MIKTEXCORETHISAPI(
void) AppendArguments(
const Argv& argv);
183 MIKTEXCORETHISAPI(
void) AppendOption(
const std::string& name,
const std::string& value);
186 void AppendOption(
const std::string& name)
188 AppendOption(name, std::string());
194 AppendOption(name, value.
ToString());
198 void AppendOption(
const std::string& name,
const char* value)
200 MIKTEX_ASSERT_STRING(value);
201 AppendOption(name, std::string(value));
210 return AppendRedirection(path, append ?
">>" :
">");
216 return AppendStdoutRedirection(path,
false);
222 return AppendRedirection(path,
"<");
226 MIKTEXCORETHISAPI(std::string) ToString()
const;
230 std::unique_ptr<impl> pimpl;