Fix memory leaks, fix tests.
[command.git] / include / descriptive.h
1 #ifndef __COMMAND_DESCRIPTIVE_H
2 #define __COMMAND_DESCRIPTIVE_H
3
4 #include <string>
5
6 namespace command {
7     /**
8      * Descriptive behaviour class.
9      */
10     class Descriptive {
11         const std::string description;
12     public:
13         /**
14          * Default constructor.
15          *
16          * @param description Description
17          */
18         Descriptive(const std::string& description)
19             : description(description) {
20         }
21
22         virtual ~Descriptive() { }
23
24         /**
25          * Returns description of the current class.
26          *
27          * @return provided description for the class
28          */
29         const std::string & describe() {
30             return description;
31         }
32     };
33 }
34
35 #endif /* __COMMAND_DESCRIPTIVE_H */