rshell  1.2
Parse.h
Go to the documentation of this file.
1 
28 #ifndef RSHELL_PARSE_H
29 #define RSHELL_PARSE_H
30 
31 #include <string>
32 #include <vector>
33 
34 #include "Command_Element.h"
35 
36 using namespace std;
37 class Command_Element;
41 class Parse {
42 protected:
43  string input;
44 public:
45  virtual vector<string> parse() = 0;
46 };
50 class Parse_Single_Command : public Parse{
51 public:
55  Parse_Single_Command(string str);
60  vector<string> parse();
61 };
66 public:
70  Parse_Multiple_Commands(string str);
75  vector<string> parse();
76 };
81 protected:
82  string input;
83  Command_Element* cmds;
84 public:
89  Parse_Command_Sets( string cmd );
94  Command_Element* parse();
99  Command_Element* parse(string str);
104  Command_Element* single(string str);
109  Command_Element* dual(vector<string> str);
114  Command_Element* multi(vector<string> str);
115 };
116 #endif //RSHELL_PARSE_H
Parses the string passed to the Command structure into command and parameters.
Definition: Parse.h:50
Parses a command string into a vector of strings separated by connectors.
Definition: Parse.h:65
Contains several various parsing techinques to manage bash input.
Definition: Parse.h:80
Definitions for Command_Element class and its child classes.
Base class for Parsing functions not including Parse_Command_Sets.
Definition: Parse.h:41
Base class for Command_List, Command_Set and Command.
Definition: Command_Element.h:44