blob: 518fc1be670523e97bdf72fd265eb2831ac9d207 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
//
// Copyright © 2020 Arm Ltd. All rights reserved.
// SPDX-License-Identifier: MIT
//
#pragma once
#include <cxxopts/cxxopts.hpp>
/**
* Ensure all mandatory command-line parameters have been passed to cxxopts.
* @param result returned from the cxxopts parse(argc, argv) call
* @param required vector of strings listing the mandatory parameters to be input from the command-line
* @return boolean value - true if all required parameters satisfied, false otherwise
* */
inline bool CheckRequiredOptions(const cxxopts::ParseResult& result, const std::vector<std::string>& required)
{
for(const std::string& str : required)
{
if(result.count(str) == 0)
{
std::cerr << "--" << str << " parameter is mandatory" << std::endl;
return false;
}
}
return true;
}
|