rshell
1.2
|
Contains several various parsing techinques to manage bash input. More...
#include <Parse.h>
Public Member Functions | |
Parse_Command_Sets (string cmd) | |
Command_Element * | parse () |
Parses the string 'cmds' into a Command_Element* which can be executed. More... | |
Command_Element * | parse (string str) |
Parses the string 'cmds' into a Command_Element* which can be executed. More... | |
Command_Element * | single (string str) |
called when no connectors are passed indicating a single command More... | |
Command_Element * | dual (vector< string > str) |
Called when one connector connects exactly two commands. More... | |
Command_Element * | multi (vector< string > str) |
Called when many connectors (2+) are in the submitted command. More... | |
Protected Attributes | |
string | input |
Command_Element * | cmds |
Contains several various parsing techinques to manage bash input.
Parse_Command_Sets::Parse_Command_Sets | ( | string | cmd | ) |
Constructor stores the string passed in. The user typically does not instantiate this class, but can for debugging purposes.
Command_Element * Parse_Command_Sets::dual | ( | vector< string > | str | ) |
Called when one connector connects exactly two commands.
Command_Element * Parse_Command_Sets::multi | ( | vector< string > | str | ) |
Called when many connectors (2+) are in the submitted command.
Command_Element * Parse_Command_Sets::parse | ( | ) |
Parses the string 'cmds' into a Command_Element* which can be executed.
Command_Element * Parse_Command_Sets::parse | ( | string | input | ) |
Parses the string 'cmds' into a Command_Element* which can be executed.
This parsing class is the gateway between Command_Element and all other parsing classes. First the main string is ensured it isn't empty and is passed to Parse_Multiple_Commands. Based on the size of the returning vector the class sends the vector to single(), dual() or multi() which organize and create a single root command. Calling execute on this root recursively calls all other commands to emulate Bash
Command_Element * Parse_Command_Sets::single | ( | string | str | ) |
called when no connectors are passed indicating a single command