|
pianod2
multisource multiuser scriptable networked music player
|
Command line parser based on Parsnip, but with some help support added for pianod. More...
#include <interpreter.h>


Public Member Functions | |
| void | addOptionParser (const std::string &name, Parsnip::OptionParser::Definitions defs) |
| Construct and register an option parser. More... | |
Public Member Functions inherited from Parsnip::Parser | |
| Parser ()=default | |
| Parser (const Definitions &defs) | |
| Construct a parser and initialize it with some statements. More... | |
| virtual | ~Parser ()=default |
| void | addOptionParser (const std::string &name, const OptionParserRef &add) |
| Register an options parser for use. More... | |
| void | addStatements (const Definitions &defs) |
| Add statements to the parser. More... | |
| Result | evaluate (const StringType &command) const |
| Evaluate a command. More... | |
| bool | operator== (const Parser &) const |
| Check if a parser is identical to another parser. More... | |
| bool | operator!= (const Parser &other) const |
Private Attributes | |
| std::unordered_map< std::string, const Parsnip::OptionParser::Definitions > | option_definitions |
Friends | |
| class | PianodDispatcher |
Additional Inherited Members | |
Public Types inherited from Parsnip::Parser | |
| using | CommandId = int |
| using | StringType = std::string |
| using | Definitions = std::vector< Definition > |
Command line parser based on Parsnip, but with some help support added for pianod.
| void PianodParser::addOptionParser | ( | const std::string & | name, |
| Parsnip::OptionParser::Definitions | defs | ||
| ) |
Construct and register an option parser.
Parser definition is saved for later use in providing help.
| name | The parser name, as will be used in statement definitions. |
| defs | The parser's option format definitions. |


|
friend |
|
private |