|
Parsnip
parsing library
|
Gather the rest of the command line tokens in a list. More...
#include <parsnip_evaluate.h>
Public Member Functions | |
| virtual Parsnip::Data | evaluateToken (ArgvCursor *cursor) const override |
| virtual void | constructSchema (const DictionarySchema &scheme, const Schema::OptionSchemas &option_schemas, const SchemaIntegratorCallback &integrator) const override |
| Construct a schema from an evaluator tree. | |
Public Member Functions inherited from Parsnip::RemainderEvaluator | |
| virtual Evaluator * | getNextEvaluator (const StringType &value) const override |
| An evaluator that represents the rest of the command line. | |
| virtual bool | operator== (const Evaluator &other) const override |
| Check if two evaluators are the same. | |
| virtual void | convertToOptionEvaluator () override |
| Make any changes to the parse tree to convert it to an options evaluator. | |
| Evaluator ()=default | |
| Evaluator (Evaluator *original) | |
| Upgrade an evaluator. | |
Public Member Functions inherited from Parsnip::Evaluator | |
| Evaluator (Evaluator *original) | |
| Upgrade an evaluator. | |
| int | evaluate (ArgvCursor *cursor, Parsnip::Data &result_dict) |
| Evaluate a token in the command line, and recurse if there is more to go. | |
| bool | operator!= (const Evaluator &other) const |
Additional Inherited Members | |
Public Types inherited from Parsnip::Evaluator | |
| using | StringType = std::string |
| using | CommandId = int |
Static Public Member Functions inherited from Parsnip::Evaluator | |
| static void | construct (EvaluatorRef &evaluator, const ArgvCursor &cursor, CommandId id, Parser *parent_parser) |
| Construct token handler from the token in a parsing definition. | |
Protected Member Functions inherited from Parsnip::Evaluator | |
| void | setCommandId (CommandId id) |
| Set the command ID in an evaluator. | |
Static Protected Member Functions inherited from Parsnip::Evaluator | |
| static void | set_name (EvaluatorRef &target, const std::string &name) |
| Assign a name by which to store values for value evaluators. | |
Protected Attributes inherited from Parsnip::RemainderEvaluator | |
| EvaluatorRef | terminating_evaluator |
Protected Attributes inherited from Parsnip::Evaluator | |
| CommandId | command_id {NoCommand} |
| If this completes a command, the command ID. | |
| std::string | name |
| If not empty, the name by which this value shall be accessed. | |
Gather the rest of the command line tokens in a list.
|
overridevirtual |
Construct a schema from an evaluator tree.
This function depth-first searches the evaluation tree, calling the integrator function at leaf nodes and other valid statement endpoints.
| schema | The schema, as constructed from the parse tree root. |
| option_schemas | Schemas for option parsers that may be needed. |
| integrator | An integrator that merges various statement patterns into a complete schema. |
| NoSuchKey | A necessary option schema was not found. |
| SchemaConflict | Statement definitions generate schema inconsistencies. |
Implements Parsnip::Evaluator.
|
overridevirtual |
Implements Parsnip::Evaluator.