ppap4lmp  0.7.2
add_rename.h
Go to the documentation of this file.
1 
9 #ifndef ADD_RENAME_H
10 #define ADD_RENAME_H
11 
12 #include <adders/adder.h>
13 
25 class AddRename : public Adder {
30  bool do_overwrite = false;
39  protected:
43  virtual void compute_impl(
44  Json &data,
45  JsonToVoidFunc check_required_keys,
46  JsonToBoolFunc check_optional_keys) override;
47  public:
66  AddRename(
67  const Str &key_old_,
68  const Str &key_new_);
69  virtual ~AddRename() = default;
89  bool do_overwrite_ = true);
90 };
91 
92 #endif
AddRename(const Str &key_old_, const Str &key_new_)
Constructor of AddRename class.
Definition: add_rename.cpp:16
Adder adds new properties to a non-empty Element object.
Definition: adder.h:24
std::function< bool(const Json &)> JsonToBoolFunc
An alias for a function accepts a Json object and returns a bool.
Definition: updater.h:20
std::string Str
Str is an alias for string.
Definition: std.h:21
virtual void compute_impl(Json &data, JsonToVoidFunc check_required_keys, JsonToBoolFunc check_optional_keys) override
This method overrides Updater::compute_impl.
Definition: add_rename.cpp:26
nlohmann::json Json
Json is an alias for nlohmann::json.
Definition: json.h:22
Str key_new
Definition: add_rename.h:38
AddRename renames an existing property.
Definition: add_rename.h:25
bool do_overwrite
Definition: add_rename.h:30
This file has a definition of Adder class, which is a subclass of Updater class.
ShPtr< AddRename > overwrite(bool do_overwrite_=true)
Allow overwriting an existing property by a renamed property with the same name.
Definition: add_rename.cpp:57
std::function< void(const Json &)> JsonToVoidFunc
An alias for a function accepts a Json object.
Definition: updater.h:18
std::shared_ptr< T > ShPtr
ShPtr is an alias for shared pointer.
Definition: std.h:16
Str key_old
Definition: add_rename.h:34