Command  0.3
required.h
1#ifndef __COMMAND_REQUIRED_H
2#define __COMMAND_REQUIRED_H
3
4#include "parameter.h"
5
6namespace command {
10 class Required : public Parameter {
11 protected:
16
17 public:
25 }
26
30 virtual ~Required() {
31 delete parameter;
32 }
33
39 virtual void handle() {
41 }
42
50 virtual bool understand(const std::string & value) {
51 return parameter->understand(value);
52 }
53
61 virtual bool isRequired() {
62 return true;
63 };
64
70 virtual bool isUsed() {
71 return parameter->isUsed();
72 }
73
79 virtual unsigned int valuePosition(const std::string & value) {
80 return parameter->valuePosition(value);
81 }
82 };
83}
84
85#endif /* __COMMAND_REQUIRED_H */
const std::string & describe()
Definition: descriptive.h:29
Definition: parameter.h:17
virtual void handle()=0
virtual bool isUsed()
Definition: parameter.h:64
virtual bool understand(const std::string &)=0
virtual unsigned int valuePosition(const std::string &)=0
Definition: required.h:10
virtual ~Required()
Definition: required.h:30
Required(Parameter *parameter)
Definition: required.h:23
virtual void handle()
Definition: required.h:39
virtual bool isRequired()
Definition: required.h:61
virtual bool isUsed()
Definition: required.h:70
virtual unsigned int valuePosition(const std::string &value)
Definition: required.h:79
virtual bool understand(const std::string &value)
Definition: required.h:50
Parameter * parameter
Definition: required.h:15