MCPcopy Create free account
hub / github.com/KhronosGroup/SPIRV-Tools / parse_bool_flag

Function parse_bool_flag

tools/util/flags.cpp:54–80  ·  view source on GitHub ↗

Parse a boolean flag. Returns `true` if the parsing succeeded, `false` otherwise.

Source from the content-addressed store, hash-verified

52// Parse a boolean flag. Returns `true` if the parsing succeeded, `false`
53// otherwise.
54bool parse_bool_flag(Flag<bool>& flag, bool is_short_flag,
55 const std::string& token) {
56 if (is_short_flag) {
57 flag.value() = true;
58 return true;
59 }
60
61 const std::string raw_flag(token);
62 size_t equal_index = raw_flag.find('=');
63 if (equal_index == std::string::npos) {
64 flag.value() = true;
65 return true;
66 }
67
68 const std::string value = raw_flag.substr(equal_index + 1);
69 if (value == "true") {
70 flag.value() = true;
71 return true;
72 }
73
74 if (value == "false") {
75 flag.value() = false;
76 return true;
77 }
78
79 return false;
80}
81
82// Parse a uint32_t flag value.
83bool parse_flag_value(Flag<uint32_t>& flag, const std::string& value) {

Callers 1

parse_flag_infoMethod · 0.85

Calls 1

valueMethod · 0.45

Tested by

no test coverage detected