Warning, file /include/absl/flags/internal/parse.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef ABSL_FLAGS_INTERNAL_PARSE_H_
0017 #define ABSL_FLAGS_INTERNAL_PARSE_H_
0018
0019 #include <iostream>
0020 #include <ostream>
0021 #include <string>
0022 #include <vector>
0023
0024 #include "absl/base/config.h"
0025 #include "absl/flags/declare.h"
0026 #include "absl/flags/internal/usage.h"
0027 #include "absl/strings/string_view.h"
0028
0029 ABSL_DECLARE_FLAG(std::vector<std::string>, flagfile);
0030 ABSL_DECLARE_FLAG(std::vector<std::string>, fromenv);
0031 ABSL_DECLARE_FLAG(std::vector<std::string>, tryfromenv);
0032 ABSL_DECLARE_FLAG(std::vector<std::string>, undefok);
0033
0034 namespace absl {
0035 ABSL_NAMESPACE_BEGIN
0036 namespace flags_internal {
0037
0038 enum class UsageFlagsAction { kHandleUsage, kIgnoreUsage };
0039 enum class OnUndefinedFlag {
0040 kIgnoreUndefined,
0041 kReportUndefined,
0042 kAbortIfUndefined
0043 };
0044
0045
0046
0047
0048
0049
0050 std::vector<char*> ParseCommandLineImpl(
0051 int argc, char* argv[], UsageFlagsAction usage_flag_action,
0052 OnUndefinedFlag undef_flag_action,
0053 std::ostream& error_help_output = std::cout);
0054
0055
0056
0057
0058
0059
0060 bool WasPresentOnCommandLine(absl::string_view flag_name);
0061
0062
0063
0064 std::vector<std::string> GetMisspellingHints(absl::string_view flag);
0065
0066 }
0067 ABSL_NAMESPACE_END
0068 }
0069
0070 #endif