|
Parsnip
parsing library
|
An evaluator that represents the rest of the command line. More...
#include <parsnip_evaluate.h>
Public Member Functions | |
| 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 |
Protected Attributes | |
| 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. | |
Friends | |
| class | Evaluator |
| class | RemainingValuesEvaluator |
| class | ValueEvaluator |
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. | |
| virtual Parsnip::Data | evaluateToken (class ArgvCursor *cursor) const =0 |
| Evaluate command line tokens. | |
| virtual void | constructSchema (const DictionarySchema &schema, const Schema::OptionSchemas &option_schemas, const SchemaIntegratorCallback &integrator) const =0 |
| Construct a schema from an evaluator tree. | |
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. | |
An evaluator that represents the rest of the command line.
|
overridevirtual |
Make any changes to the parse tree to convert it to an options evaluator.
Implements Parsnip::Evaluator.
| Parsnip::Evaluator::Evaluator | ( | Evaluator * | original | ) |
Upgrade an evaluator.
The original must be a TerminatorEvaluator; other type should never be upgraded. Herein we initialize the new evaluator with the relevant bits.
|
overridevirtual |
An evaluator that represents the rest of the command line.
Implements Parsnip::Evaluator.
|
overridevirtual |
Check if two evaluators are the same.
Subclasses should override this to check their details.
| other | Another evaluator to which to compare. |
Reimplemented from Parsnip::Evaluator.
Reimplemented in Parsnip::OptionEvaluator.