aboutsummaryrefslogtreecommitdiff
path: root/src/feature.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/feature.h')
-rw-r--r--src/feature.h18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/feature.h b/src/feature.h
index c433f32..01802bf 100644
--- a/src/feature.h
+++ b/src/feature.h
@@ -8,16 +8,22 @@ namespace feature {
public:
static std::shared_ptr<Feature> create(const nlohmann::json& data);
- virtual ~Feature();
+ virtual ~Feature() {}
- std::string getName(void) const;
- std::string getType(void) const;
- std::string getText(void) const;
+ std::string getName(void) const {return name;}
+ std::string getType(void) const {return type;}
+ virtual std::string getText(void) const {return text;}
- virtual nlohmann::json toJson(void) const;
+ virtual nlohmann::json toJson(void) const {
+ return nlohmann::json({
+ {"name", name},
+ {"type", type},
+ {"text", text}
+ });
+ }
protected:
- Feature(const nlohmann::json& data);
+ Feature(const nlohmann::json& data) : name(data["name"]), type(data["type"]), text(data["text"]) {};
private:
const std::string name;