lintel 0.2.0
Loading...
Searching...
No Matches
ProcessArgumentService.h
Go to the documentation of this file.
1#ifndef LINTEL_PROCESSARGUMENTSERVICE_H
2#define LINTEL_PROCESSARGUMENTSERVICE_H
3
4#include <map>
5#include <memory>
6#include <vector>
7
9
10namespace lintel {
15{
16private:
17 std::map<std::string, Argument> m_flagArgumentMap;
18 std::vector<Argument> m_arguments;
19
20 static std::map<std::string, Argument> init(const std::vector<std::shared_ptr<ArgumentProvider>> &argumentProviders);
21
22 static std::vector<Argument> initArgs(const std::vector<std::shared_ptr<ArgumentProvider>> &vector);
23
24public:
29 explicit ProcessArgumentService(const std::vector<std::shared_ptr<ArgumentProvider>> &argumentProviders);
30
35 void parseArguments(const std::vector<std::string> &arguments);
36
44 void processNewFlag(const std::string &argument, std::string &flag, std::vector<std::string> &args, Argument *&temp);
45};
46
47}// namespace lintel
48#endif// LINTEL_PROCESSARGUMENTSERVICE_H
Definition Argument.h:14
Definition ProcessArgumentService.h:15
void parseArguments(const std::vector< std::string > &arguments)
void processNewFlag(const std::string &argument, std::string &flag, std::vector< std::string > &args, Argument *&temp)
ProcessArgumentService(const std::vector< std::shared_ptr< ArgumentProvider > > &argumentProviders)
Definition BaseFeature.h:6
constexpr std::string_view type_name()
Definition TypeName.h:9