diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2016-09-30 16:48:16 -0700 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2016-09-30 16:48:16 -0700 |
| commit | cddc4f612ee605788928dafcb6366c6478fdb401 (patch) | |
| tree | 756a551a9d40cdfd8ed4233620d56dc38058b4ee /toolsrc/include | |
| parent | 39c0c7152f78f67418f7a0f97fe77699e8ed2d58 (diff) | |
| parent | bcb2be360a3ce577fc09fe1ffb6b7e0335ebb889 (diff) | |
| download | vcpkg-cddc4f612ee605788928dafcb6366c6478fdb401.tar.gz vcpkg-cddc4f612ee605788928dafcb6366c6478fdb401.zip | |
Merge branch 'master' of https://github.com/microsoft/vcpkg
Diffstat (limited to 'toolsrc/include')
| -rw-r--r-- | toolsrc/include/vcpkg_Commands.h | 1 | ||||
| -rw-r--r-- | toolsrc/include/vcpkg_Strings.h | 5 | ||||
| -rw-r--r-- | toolsrc/include/vcpkg_cmd_arguments.h | 12 | ||||
| -rw-r--r-- | toolsrc/include/vcpkg_paths.h | 30 |
4 files changed, 30 insertions, 18 deletions
diff --git a/toolsrc/include/vcpkg_Commands.h b/toolsrc/include/vcpkg_Commands.h index c706c131c..c3da552f2 100644 --- a/toolsrc/include/vcpkg_Commands.h +++ b/toolsrc/include/vcpkg_Commands.h @@ -9,6 +9,7 @@ namespace vcpkg void print_usage(); void print_example(const char* command_and_arguments); + std::string create_example_string(const char* command_and_arguments); void update_command(const vcpkg_cmd_arguments& args, const vcpkg_paths& paths); void build_command(const vcpkg_cmd_arguments& args, const vcpkg_paths& paths, const triplet& default_target_triplet); diff --git a/toolsrc/include/vcpkg_Strings.h b/toolsrc/include/vcpkg_Strings.h index 93e1389f8..dc17f35d2 100644 --- a/toolsrc/include/vcpkg_Strings.h +++ b/toolsrc/include/vcpkg_Strings.h @@ -19,6 +19,11 @@ namespace vcpkg {namespace Strings {namespace details return s; } + inline size_t to_printf_arg(const size_t s) + { + return s; + } + std::string format_internal(const char* fmtstr, ...); inline const wchar_t* to_wprintf_arg(const std::wstring& s) diff --git a/toolsrc/include/vcpkg_cmd_arguments.h b/toolsrc/include/vcpkg_cmd_arguments.h index 7df3d64b1..54b97cde1 100644 --- a/toolsrc/include/vcpkg_cmd_arguments.h +++ b/toolsrc/include/vcpkg_cmd_arguments.h @@ -13,9 +13,11 @@ namespace vcpkg struct vcpkg_cmd_arguments { static vcpkg_cmd_arguments create_from_command_line(const int argc, const wchar_t* const* const argv); - static vcpkg_cmd_arguments create_from_arg_sequence(const std::string* arg_begin, const std::string* arg_end); + static package_spec check_and_get_package_spec(const std::string& package_spec_as_string, const triplet& default_target_triplet, const char* example_text); + static std::vector<package_spec> check_and_get_package_specs(const std::vector<std::string>& package_specs_as_strings, const triplet& default_target_triplet, const char* example_text); + std::unique_ptr<std::string> vcpkg_root_dir; std::unique_ptr<std::string> target_triplet; opt_bool debug = opt_bool::unspecified; @@ -26,8 +28,12 @@ namespace vcpkg std::vector<std::string> command_arguments; std::unordered_set<std::string> check_and_get_optional_command_arguments(const std::vector<std::string>& valid_options) const; - void check_max_args(size_t arg_count, const char* example_text = nullptr) const; - std::vector<package_spec> parse_all_arguments_as_package_specs(const triplet& default_target_triplet, const char* example_text = nullptr) const; + void check_max_arg_count(const size_t expected_arg_count) const; + void check_max_arg_count(const size_t expected_arg_count, const char* example_text) const; + void check_min_arg_count(const size_t expected_arg_count) const; + void check_min_arg_count(const size_t expected_arg_count, const char* example_text) const; + void check_exact_arg_count(const size_t expected_arg_count) const; + void check_exact_arg_count(const size_t expected_arg_count, const char* example_text) const; private: std::unordered_set<std::string> optional_command_arguments; diff --git a/toolsrc/include/vcpkg_paths.h b/toolsrc/include/vcpkg_paths.h index d13c73b0b..046b6836c 100644 --- a/toolsrc/include/vcpkg_paths.h +++ b/toolsrc/include/vcpkg_paths.h @@ -9,28 +9,28 @@ namespace vcpkg struct vcpkg_paths { - static expected<vcpkg_paths> create(const std::tr2::sys::path& vcpkg_root_dir); + static expected<vcpkg_paths> create(const fs::path& vcpkg_root_dir); fs::path package_dir(const package_spec& spec) const; fs::path port_dir(const package_spec& spec) const; bool is_valid_triplet(const triplet& t) const; - std::tr2::sys::path root; - std::tr2::sys::path packages; - std::tr2::sys::path buildtrees; - std::tr2::sys::path downloads; - std::tr2::sys::path ports; - std::tr2::sys::path installed; - std::tr2::sys::path triplets; + fs::path root; + fs::path packages; + fs::path buildtrees; + fs::path downloads; + fs::path ports; + fs::path installed; + fs::path triplets; - std::tr2::sys::path buildsystems; - std::tr2::sys::path buildsystems_msbuild_targets; + fs::path buildsystems; + fs::path buildsystems_msbuild_targets; - std::tr2::sys::path vcpkg_dir; - std::tr2::sys::path vcpkg_dir_status_file; - std::tr2::sys::path vcpkg_dir_info; - std::tr2::sys::path vcpkg_dir_updates; + fs::path vcpkg_dir; + fs::path vcpkg_dir_status_file; + fs::path vcpkg_dir_info; + fs::path vcpkg_dir_updates; - std::tr2::sys::path ports_cmake; + fs::path ports_cmake; }; } |
