aboutsummaryrefslogtreecommitdiff
path: root/src/zenutil/include
diff options
context:
space:
mode:
authorZousar Shaker <[email protected]>2025-04-24 08:26:29 -0600
committerGitHub Enterprise <[email protected]>2025-04-24 08:26:29 -0600
commit787449efb4de24fd12f3af3c4e466a9629203108 (patch)
treecb4a0e84a0381e9b4a087401037ba5837e8e65d7 /src/zenutil/include
parentChangelog update terminology (diff)
parent5.6.6-pre1 (diff)
downloadzen-787449efb4de24fd12f3af3c4e466a9629203108.tar.xz
zen-787449efb4de24fd12f3af3c4e466a9629203108.zip
Merge branch 'main' into zs/zencli-list-namespaces-buckets
Diffstat (limited to 'src/zenutil/include')
-rw-r--r--src/zenutil/include/zenutil/commandlineoptions.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/zenutil/include/zenutil/commandlineoptions.h b/src/zenutil/include/zenutil/commandlineoptions.h
new file mode 100644
index 000000000..b7581f6cd
--- /dev/null
+++ b/src/zenutil/include/zenutil/commandlineoptions.h
@@ -0,0 +1,28 @@
+// Copyright Epic Games, Inc. All Rights Reserved.
+
+#pragma once
+
+#include <zencore/zencore.h>
+#include <filesystem>
+
+ZEN_THIRD_PARTY_INCLUDES_START
+
+namespace cxxopts::values {
+// We declare this specialization before including cxxopts to make it stick
+void parse_value(const std::string& text, std::filesystem::path& value);
+} // namespace cxxopts::values
+
+#include <cxxopts.hpp>
+ZEN_THIRD_PARTY_INCLUDES_END
+
+namespace zen {
+
+std::vector<std::string> ParseCommandLine(std::string_view CommandLine);
+std::vector<char*> StripCommandlineQuotes(std::vector<std::string>& InOutArgs);
+void MakeSafeAbsolutePathÍnPlace(std::filesystem::path& Path);
+[[nodiscard]] std::filesystem::path MakeSafeAbsolutePath(const std::filesystem::path& Path);
+std::filesystem::path StringToPath(const std::string_view& Path);
+
+void commandlineoptions_forcelink(); // internal
+
+} // namespace zen